!   TITLE:  str_tube_slev_375a072.mac (ISS)
!
!---------------------------------------------------------------------------
!       Rev -   RELEASED    05/02/2000  J. Rinaldi
!---------------------------------------------------------------------------
!
!   This macro creates the stator tube sleeve, 375A072, used in the
!   ISS (International Space Station) end unit CU09616049.  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
!   CSstr2: Spherical 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 375A072
!
!
/units,bin      ! British/inch units
!
!
!<<<<<<<<<<<<<<<<<<<<<<<< 1.  Parameter List >>>>>>>>>>>>>>>>>>>>>>>>>>
!
! The 'enable' parameter determines the type of model to
! create. If enable='3d', then a 3 dimensional solid model
! will be generated, and a 3D analysis performed. For enable=2d,
! an axissymmetric model will be generated and analyzed.
!
*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
!
str_tube_slev_375a072.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, , ,28.0E6,       ! Material:  CRES ASTM A276
UIMP,1,DENS, , ,.286/386.4,
UIMP,1,NUXY, , ,0.27,
!
!------------------------- 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 375A072 @ %pload% psi
*else
    /title,Stator Tube Sleeve 375A072
*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-16,lm-15,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
!
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
!


*go,:skip1


!----------------------------- 5.  FE Model ---------------------------
!
*if,enable,eq,'3d',then
    !
    adele,am,,,1
    !
    isolate_areas
    !
    revolve_aset,ax1,ax2,ptang,2
    !
    init_entity_num
    !
    !
    !               (1)   (2)     (3)   (4)     (5)    (6)     (7)    (8)
    ! FLNG_PTRN_1, csnum, rpat,  zpos,  numh,  stang, secang, dhole, radbf,
    !
    !              radout, radin, radbh, rfil
    !                (9)    (10)   (11)  (12)
    !
    flng_ptrn_1,1,0.500,0,6,0,45,.075,.095,0.53,0.4,.075,0.075
    hole_pattern,CSstr1,rbp,h5,nh,,180,ptang,2*rbh
    !
    init_entity_num
    !
    lstr,km-15,km-13
    lstr,km-3,km-1
    !
    init_entity_num
    !
    asbl,am-3,lm-1,,delete,delete
    asbl,am,lm,,delete,delete
    !
    init_entity_num
    !
    csys,CSstr1
    !
    isolate_areas
    asel,r,loc,y,0,180
    !
    adele,all,,,1
    !
    init_entity_num
    !
    *do,i,1,nh,1
        csys,patcs%i%
        k,,(rbp-dfl/2),180,0
    *enddo
    !
    init_entity_num
    !
    csys,CSstr1
    !
    *do,i,1,(nh-1),1
        l,km-(nh-i),km-(nh-(i+1))
    *enddo
    !
    init_entity_num
    !
    *do,i,1,nh,1
        !
        csys,patcs%i%
        !
        count=0
        *do,j,0,240,120
            count=count+1
            k,,rbf,j,0
        *enddo
        !
        init_entity_num
        !
        *do,k,1,count,1
            *if,k,ne,count,then
                l,km-(count-k),km-(count-(k+1))
            *else
                l,km-(count-k),km-(count-1)
            *endif
        *enddo
        !
        init_entity_num
    *enddo
    !
    lsel,selv,line,,lm-14,lm-12,1
    lcomb,all,,0
    !
    init_entity_num
    !
    lsel,selv,line,,lm-14,lm,1
    !
    ln_part_ln,lm-14
    !
    init_entity_num
    !
    csys,CSstr1
    !
    l,km-5,km-3
    l,km-4,km-1
    l,km-2,km
    !
    init_entity_num
    !
    lfillt,lm-2,lm-14,rfil8
    lfillt,lm-2,lm-10,rfil8
    lfillt,lm-1,lm-12,rfil8
    lfillt,lm-1,lm-6,rfil8
    lfillt,lm,lm-8,rfil8
    !
    lfillt,lm,lm-4,rfil8
    !
    init_entity_num
    !
    isolate_lines
    lsel,r,loc,x,0,dfl/2
    lsel,u,loc,x,dfl/2
    !
    ldele,all,,,1
    !
    init_entity_num
    !
    csys,CSstr0
    !
    max_enty_dim,'l'
    isolate_lines
    lsel,r,loc,y,0,5*max_leng
    !
    ldele,all,,,1
    !
    init_entity_num
    !
    lstr,km-49,km-29
    lstr,km-67,km-47
    lstr,km-159,km-35
    lstr,km-20,km-37
    !
    init_entity_num
    !
    csys,CSstr1
    !
    lsel,selv,loc,x,r5+rfil1,5*max_leng
    lsel,r,loc,z,h5
    cm,lset1,line
    !
    init_entity_num
    !
    asel,selv,loc,x,r5+rfil1,5*max_leng
    asel,r,loc,z,h5
    cm,aset1,area
    lsla,selv
    cm,lset2,line
    !
    init_entity_num
    !
    *do,i,1,nh,(nh-1)
        !
        csys,patcs%i%
        !
        lsel,selv,loc,x,0,0.90*rbh
        cm,lset%i+10%,line
    *enddo
    !
    lsel,selv,line,,lset1
    lsel,u,line,,lset2
    *do,i,1,nh,(nh-1)
        lsel,a,line,,lset%i+10%
    *enddo
    !
    al,all
    !
    init_entity_num
    !
    asba,am,aset1,,delete,keep
    !
    init_entity_num
    !
    csys,CSstr1
    !
    asel,selv,loc,x,r5+rfil1,5*max_leng
    asel,r,loc,z,h5
    cm,aset1,area
    !
    init_entity_num
    !
    hole_pattern,CSstr1,rbp,h5,nh,,180,ptang,dbh
    !
    init_entity_num
    !
    asel,selv,area,,am-3,am,1
    cm,aset2,area
    !
    init_entity_num
    !
    asba,aset1,aset2,,delete,delete
    !
    init_entity_num
    !
    voffst,am-8,h6
    voffst,am-3,h6
    voffst,am-2,h6
    voffst,am-1,h6
    voffst,am,h6
    !
    csys,CSstr0     ! initiate 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
    !
    vsba,vm-4,am,,delete,delete
    !
    init_entity_num
    !
    vsel,selv,loc,x,0,-5*max_leng
    !
    vdele,all,,,1
    !
    nummrg,kp
    !
    init_entity_num
    !
    smrtsize,off        ! begin volume mesh
    aatt,1,,2,0
    !
    lesize,lm-350,,,30,1,
    lesize,lm-352,,,30,1,
    lesize,lm-348,,,1,1,
    lesize,lm-347,,,1,1,
    !
    mshkey,1
    amesh,am-168
    !
    mshkey,0
    desize,,,,,,.02,.04,
    !
    ldiv=7
    lesize,lm-355,,,ldiv,1,
    lesize,lm-376,,,2,1,
    lesize,lm-379,,,3,1,
    lesize,lm-375,,,2,1,
    lesize,lm-361,,,1,1,
    !
    lesize,lm-378,,,2,1,
    lesize,lm-399,,,4,1,
    lesize,lm-397,,,4,1,
    lesize,lm-366,,,3,1,
    lesize,lm-400,,,3,1,
    !
    lesize,lm-398,,,3,1,
    lesize,lm-396,,,7,1,
    lesize,lm-370,,,3,1,
    lesize,lm-377,,,2,1,
    lesize,lm-392,,,5,1,
    !
    lesize,lm-390,,,7,1,
    !
    amesh,am-169
    amesh,am-167
    !
    type,3
    esize,,numel
    !
    init_entity_num
    !
    vsweep,vm-11,am-169,am-160,0
    vsweep,vm-10,am-168,am-156,0
    vsweep,vm-9,am-167,am-128,0
    !
    desize,,,,30,,..02,.04,
    !
    lesize,lm-200,,,10,1,
    lesize,lm-199,,,10,1,
    lesize,lm-198,,,10,1,
    lesize,lm-197,,,10,1,
    !
    lesize,lm-142,,,10,1,
    lesize,lm-141,,,10,1,
    lesize,lm-140,,,10,1,
    lesize,lm-139,,,10,1,
    !
    lesize,lm-169,,,10,1,
    lesize,lm-167,,,10,1,
    lesize,lm-1,,,9,1,
    lesize,lm-157,,,8,1,
    lesize,lm-156,,,8,1,
    !
    lesize,lm-161,,,16,1,
    lesize,lm-155,,,8,1,
    lesize,lm-165,,,10,1,
    lesize,lm-194,,,10,1,
    lesize,lm-136,,,10,1,
    !
    lesize,lm-135,,,10,1,
    lesize,lm-132,,,5,1,
    lesize,lm-131,,,5,1,
    lesize,lm-151,,,4,1,
    lesize,lm-152,,,2,1,
    !
    lesize,lm-4,,,6,1,
    lesize,lm-193,,,10,1,
    !
    type,2
    !
    amesh,am-1
    amesh,am-73
    amesh,am-71
    !
    type,3
    esize,,ldiv
    !
    vsweep,vm,am-1,am,0
    vsweep,vm-1,am-71,am-13,0
    vsweep,vm-3,am-73,am-29,0
    !
    aclear,all
    !
    init_entity_num
    !
    nummrg,all
    !
    eplot
*endif
!
!
*if,enable,eq,'2d',then
    !
    /VIEW, 1 ,,,1
    /ANG, 1
    lplot
    !
    smrtsize,off
    aatt,1,,1,0
    !
    lesize,lm-3,,,200,1,
    lesize,lm-5,,,200,1,
    lesize,lm-1,,,3,1,
    lesize,lm,,,3,1,
    !
    mshkey,1
    amesh,am-2
    !
    mshkey,0
    desize,,,,15,15,.007,.010,
    !
    lesize,lm-27,,,70,1,
    lesize,lm-4,,,30,1,
    !
    amesh,am-3
    amesh,am-1,am,1
*endif
!
finalize_model_data
!
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-13
    asel,a,area,,am-29
    asel,a,area,,am-71
    asel,a,area,,am-73
    !
    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 --------------------
!
FINISH
!
/solu
!
eqslv,iter,5,3


:skip1