!   TITLE:  str_tube_slev_375a068.mac (ISS)
!
!---------------------------------------------------------------------------
!       Rev -   05/03/2000  J. Rinaldi
!---------------------------------------------------------------------------
!
!   This macro creates the stator tube sleeve, 375A068, used in the
!   ISS (International Space Station) end unit CU09616051.  The analysis
!   is for stresses due to pressure effects. The analysis is performed
!   for the worst case (minimum material condition) tolerances of the
!   part; under the specified loading conditions.  The tolerances are
!   listed in the parameter section. (See table of contents)
!
!   This analysis consists primarily of an axisymmetric model, but a 3d
!   model may be created to verify results.  The 3d section of code may be
!   disabled for an axissymmetric mode only.  This is done by the 'enable'
!   parameter at the end of section 1. (Parameter List)
!
!   CSstr0: Cartesian Stator Tube Coordinate System
!   CSstr1: Cylindrical Stator Tube Coordinate System
!
!******************************* TABLE OF CONTENTS **************************
!
!       Model Assembly Preparation
!
!   1.  Parameter List
!   2.  Model Coordinate System
!   3.  Material and Element Type
!   4.  Solid Model
!       4.1  Cross-Sectional Area
!           4.1.1  Partition Area
!           4.1.2  Create Areas
!   5.  FE Model
!
!       Finalize Model Data Storage
!
!   6.  Loading and Constraints
!   7.  Preparation for Solve
!
!************************** Model Assembly Preparation **********************
!
!
mod_assemb_prep             ! prepare database for assembly
!
!
/title,Stator Tube Sleeve 375A068
!
!
/units,bin                  ! British/inch units
!
!
!<<<<<<<<<<<<<<<<<<<<<<<< 1.  Parameter List >>>>>>>>>>>>>>>>>>>>>>>>>>


        *ask,enable,Analyze 2D or 3D model,'2d'
        *ask,elordr,high-h or low-l order element,'l'
        *ask,pload,internal pressure load,0
        *ask,numel,# of elements along 90 arc,40
        *ask,bolt_mis,y 1 bolt missing - n for not,'n'


        str_tube_slev_375a068.parm


!<<<<<<<<<<<<<<<<<<<< 2.  Model Coordinate Systems >>>>>>>>>>>>>>>>>>>>
!
!
mod_coord_system,0,0.00,0.00,0.00,0,-90,0
!
!
!<<<<<<<<<<<<<<<<<<<< 3.  Material and Element Type >>>>>>>>>>>>>>>>>>>
!
!
!---------------------- Material Properties --------------------
!
UIMP,1,EX, , ,29.4E6,       ! Material:  INCONEL 718
UIMP,1,DENS, , ,.286/386.4,
UIMP,1,NUXY, , ,0.29,
!
!---------------------------------------------------------------
!
!
!------------------------- Element Type ------------------------
!
ET,1,plane82,,,1,
!
*if,elordr,eq,'h',then
    ET,2,shell93
    ET,3,solid95
*elseif,elordr,eq,'l',then
    ET,2,shell63
    ET,3,solid45
*endif
!
!---------------------------------------------------------------
!
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
!
!
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<< 4.  Solid Model >>>>>>>>>>>>>>>>>>>>>>>>>>
!
*if,pload,ne,0,then
    /title,Stator Tube Sleeve 375A068 @ %pload% psi
*else
    /title,Stator Tube Sleeve 375A068
*endif
!
!---------------------- 4.1  Cross-Sectional Area ---------------------
!
csys,CSstr1
!
k,,r1,0,h1
k,,r3,0,h1
k,,r3,0,h2
k,,r2,0,h2
k,,r2,0,(h2+h3)
!
k,,r3,0,(h2+h3)
k,,r3,0,h5
k,,r5+rfil1,0,h5
k,,r4,0,h5
k,,r4,0,(h5+h6)
!
k,,r5,0,(h5+h6)
k,,r5,0,2*h5
k,,r8,0,2*h5
k,,r8,0,(h5+h8)
k,,r9,0,(h5+h8)
!
k,,r9,0,(h5+h11)
k,,r6,0,(h5+h11)
k,,r6,0,h12
k,,0,0,h12
k,,0,0,h13
!
k,,r7,0,h13
k,,r7,0,(h5-h10)
k,,r1,0,(h5-h10)
!
create_lines
!
ax1=km-4
ax2=km-3
!
lfillt,lm-17,lm-16,rfil4
lfillt,lm-20,lm-19,rfil5
lfillt,lm-19,lm-18,rfil5
lfillt,lm-13,lm-12,rfil1
lfillt,lm-11,lm-10,rfil2
!
lfillt,lm-3,lm-2,rfil3
lfillt,lm-8,lm-7,rfil6
lfillt,lm-7,lm-6,rfil6
lfillt,lm,lm-1,rfil7
!
chamfer_area,1,lm-22,lm-21,chmf1
chamfer_area,1,lm-15,lm-16,chmf2
chamfer_area,1,lm-25,lm-24,chmf3
!
init_entity_num
!
lplot
!
!------------------------ 4.1.1  Partition Area -----------------------
!
csys,CSstr1
!
lstr,km-39,km-17
!
k,,r7+0.15*r7,0,(h13-rfil3)     ! top partition line
!
init_entity_num
!
lstr,kp(r7,0,(h13-rfil3)),km
!
k,,r6-0.15*r6,0,(h5+h11)+rfil6      ! bottom partition line
!
init_entity_num
!
lstr,kp(r6,0,((h5+h11)+rfil6)),km
!
init_entity_num
!



!*go,:skip

lsel,selv,line,,lm-1
lsel,a,line,,lm-5
!
ln_part_ln,lm-1
!
lsel,selv,line,,lm
lsel,a,line,,lm-10
!
ln_part_ln,lm
!
init_entity_num
!
lstr,km-1,kp(r7,0,(h13-rfil3))
lstr,km,kp(r6,0,((h5+h11)+rfil6))
!
init_entity_num
!
lplot
!
!------------------------- 4.1.2  Create Areas ------------------------
!
csys,CSstr1
!
lsel,selv,loc,y,0       ! top area
lsel,r,loc,x,0,r6
lsel,r,loc,z,(h13-rfil3),2*(h13-rfil3)
!
al,all
!
lsel,selv,loc,y,0       ! wall area
lsel,r,loc,x,r7,r6
lsel,r,loc,z,(h5+h11)+rfil6,(h13-rfil3)
!
al,all
!
lsel,selv,loc,y,0       ! base area
lsel,r,loc,x,r7,r5+rfil1
lsel,r,loc,z,0,(h5+h8)
!
al,all
!
lsel,selv,loc,y,0       ! outer flange area
lsel,r,loc,x,r5+rfil1,r4
!
al,all
!
init_entity_num
!
lplot
!
!----------------------------- 5.  FE Model ---------------------------
!
*if,enable,eq,'3d',then
    !
    adele,am,,,1
    !
    vrotat,am-3,am-2,am-1,,,,ax1,ax2,ptang,2
    !
    init_entity_num
    !
    flng_ptrn_2,CSstr1,rbp,h5,nh,rtangle,rtangle,dbh,rbf,rff,r5+rfil1,rbh
    !
    init_entity_num
    !
    csys,CSstr1
    !
    max_enty_dim,'l'
    !
    isolate_areas
    !
    extrude_aset,h6
    !
    init_entity_num
    !
    csys,CSstr0     ! initiate flange volume partitioning
    !
    k,,0,5*max_leng,0
    k,,0,5*max_leng,max_leng
    k,,0,-5*max_leng,max_leng
    k,,0,-5*max_leng,0
    !
    init_entity_num
    !
    a,km-3,km-2,km-1,km
    !
    init_entity_num
    !
    vsel,selv,volu,,vm-5,vm-2,(vm-2)-(vm-5)
    vsel,a,volu,,vm-6
    !
    csys,CSstr0
    !
    vol_part_area,am
    !
    init_entity_num
    !
    k,,5*max_leng,0,0
    k,,5*max_leng,0,max_leng
    k,,-5*max_leng,0,max_leng
    k,,-5*max_leng,0,0
    !
    init_entity_num
    !
    a,km-3,km-2,km-1,km
    !
    init_entity_num
    !
    vsel,selv,volu,,vm-5,vm-4,1
    !
    vol_part_area,am
    !
    init_entity_num
    !
    vsel,selv,loc,x,0,-5*max_leng
    vsel,a,loc,y,0,5*max_leng
    !
    vdele,all,,,1
    !
    nummrg,kp
    !
    init_entity_num
    !
    asel,s,area,,am-235
    msh_algorithm,1,3,1,1,numel,,2,3,.050,.055,1,,,,,,
    !
    asel,s,area,,am-236
    msh_algorithm,1,3,0,0,numel,am-227,2,3,.030,.040,1,,,vm-20,,,
    !
    asel,s,area,,am-234
    msh_algorithm,1,3,0,0,numel,,2,3,.015,.020,1,,,,,,
    !
    asel,s,area,,am-135
    asel,a,area,,am-1
    asel,a,area,,am-9
    !
    elml=ellhndof
    ln=lm-448
    *get,lleng,line,ln,leng
    ldiv=nint(lleng/elml)
    msh_algorithm,1,3,0,0,ldiv,,2,3,elml,.025,1,,,,,,
    !
    aclear,all
    !
    nummrg,all
    !
    eplot
*endif
!
!
*if,enable,eq,'2d',then
    !
    /VIEW, 1 ,,,1
    /ANG, 1
    lplot
    !
    asel,s,area,,am-2
    !
    msh_algorithm,1,1,1,,,,1,,0.003,0.01,1,,,,,,
    !
    asel,s,area,,am-3
    asel,a,area,,am-1,am,1
    !
    msh_algorithm,1,1,0,,,,1,,0.0065,0.01,1,,,,,,
*endif
!
!
eplot
!
!--------------------- 6.  Loading and Constraints --------------------
!
*if,enable,eq,'2d',then
    !
    csys,CSstr1
    !
    lsel,selv,line,,lm-36
    lsel,a,line,,lm-27
    lsel,a,line,,lm-3
    lsel,a,line,,lm-2
    lsel,a,line,,lm-18
    !
    lsel,a,line,,lm-14
    lsel,a,line,,lm-24
    lsel,a,line,,lm-33
    lsel,a,line,,lm-22
    lsel,a,line,,lm-23
    !
    lsel,a,line,,lm-19
    lsel,a,line,,lm-53
    lsel,a,line,,lm-31
    lsel,a,line,,lm-52
    lsel,a,line,,lm-30
    !
    lsel,a,line,,lm-51
    !
    sfl,all,pres,pload
    !
    init_entity_num
    !
    nsel,selv,loc,x,0
    !
    d,all,ux
    !
    init_entity_num
    !
    nsel,selv,loc,z,(h5+h6)     ! constrain top bolt surface
    nsel,r,loc,x,(rbp-rbh),(rbp+rbh)
    nsel,r,loc,y,0
    !
    d,all,all
    !
    init_entity_num
    !
    nsel,selv,loc,z,h5      ! constrain bottom bolt surface
    nsel,r,loc,x,(rbp-rbh),(rbp+rbh)
    nsel,r,loc,y,0
    !
    d,all,all
    !
    init_entity_num
    !
    eplot
*endif
!
!
*if,enable,eq,'3d',then
    !
    csys,CSstr1
    !
    asel,selv,loc,x,0,r7
    asel,r,loc,z,0,h13
    asel,u,loc,y,0,2*rtangle
    asel,u,area,,am-162,am-157,(am-157)-(am-162)
    asel,u,area,,am-164,am-160,(am-160)-(am-164)
    !
    cm,aset1,area
    !
    init_entity_num
    !
    asel,selv,loc,x,0,r1
    asel,r,loc,z,0,(h5-h10)+chmf2
    asel,u,area,,am-155
    !
    cm,aset2,area
    !
    init_entity_num
    !
    asel,selv,loc,x,r1,r3
    asel,r,loc,z,0,(h2+h3)
    asel,a,loc,z,0
    asel,a,loc,z,h2
    !
    cm,aset3,area
    !
    init_entity_num
    !
    asel,selv,area,,aset1
    asel,a,area,,aset2
    asel,a,area,,aset3
    !
    sfa,all,,pres,pload
    !
    init_entity_num
    !
    asel,selv,area,,am-135
    asel,a,area,,am-44
    asel,a,area,,am-9
    asel,a,area,,am-8
    !
    nsla,selv
    !
    d,all,all
    !
    init_entity_num
    !
    csys,CSstr1
    !
    nsel,s,loc,y,0
    nsel,a,loc,y,3*rtangle
    !
    dsym,symm,y,CSstr1
    !
    init_entity_num
    !
    eplot
*endif
!
!--------------------- 7.  Prepararation for Solve --------------------
!
!
*if,bolt_mis,eq,'y',then
    ddele,all
    sfadele,all
    !
    csys,0
    !
    vsymm,z,all,,,,0,0
    !
    nummrg,all
    !
    nsel,s,loc,x,0
    !
    csys,CSstr1
    !
    dsym,symm,y,CSstr1
    !
    init_entity_num
    !
    asel,s,area,,am-206
    asel,a,area,,am-115
    asel,a,area,,am-80
    asel,a,area,,am-79
    asel,a,area,,am-28
    asel,a,area,,am-27
    !
    nsla,s
    !
    d,all,all
    !
    init_entity_num
    !
    csys,CSstr1
    !
    asel,selv,loc,x,0,r7
    asel,r,loc,z,0,h13
    cm,aset1,area
    !
    asel,selv,loc,x,0,r3
    asel,r,loc,z,0,h2+h3
    cm,aset2,area
    !
    asel,selv,loc,x,0,r1
    asel,r,loc,z,h5-h10-rfil7,h5-h10+chmf2
    cm,aset3,area
    !
    asel,s,area,,aset1
    asel,a,area,,aset2
    asel,a,area,,aset3
    !
    asel,u,area,,am-63,am-60,3
    asel,u,area,,am-300,am-298,2
    asel,u,area,,am-307,am-295,12
    asel,u,area,,am-302,am-68,234
    !
    sfa,all,,pres,pload
    !
    init_entity_num
*endif
!
!
!finalize_model_data
!
!
FINISH
!
/config,fsplit,250
!
/solu
!
eqslv,iter,5,3


:skip