!   TITLE:  aaav_thrd_retainer_anal.mac (AAAV)
!
!---------------------------------------------------------------------------
!       Rev -   06/27/2000  J. Rinaldi
!---------------------------------------------------------------------------
!
!   This macro performs a 2d axisymmetric static thread analysis.  The
!   mating parts are the retainer ring, which has the internal threads,
!   and the stub shaft, which has the external threads.
!
!
!
!******************************* TABLE OF CONTENTS **************************
!
!       Model Assembly Preparation
!
!   1.  Parameter List
!   2.  Model Coordinate System
!   3.  Material and Element Type
!   4.  Solid Model
!       4.1  Create Mating Thread Profiles
!       4.2  Cut Thread Profiles
!           4.2.1  Upper Thread Profiles
!           4.2.1  Lower Thread Profiles
!       4.3  Stub Shaft Profile
!       4.4  Retainer Profile
!   5.  FE Model
!       5.1  Constraints
!       5.2  Loads
!
!
!***************************** END Table of Contents ************************
!
!
!
!************************** Model Assembly Preparation **********************
!
mod_assemb_prep     ! prepare database for assembly
!
/dev,font,1,charter,bold,r,24,,,,,
!
/title,AAAV Threaded Retainer Analysis
!
/view,1,1,1,1
/auto,1
/replot
!
/units,bin      ! British/inch units
!
!**************************** End Model Preparation *************************
!
!
!
!<<<<<<<<<<<<<<<<<<<<<<<< 1.  Parameter List >>>>>>>>>>>>>>>>>>>>>>>>>>


        *ask,fload,total force on retainer (lbf),100


                rfil1=0.030

                h1=0.2250
                h2=0.0529
                h3=0.3211
                h4=0.4446
                h5=0.6080

                y=h1

                d_min_i=2.9537
                d_min_x=2.9311

                d1=3.0618
                d2=2.9111
                d3=2.3200
                d4=2.4732
                d5=2.8000

                d6=d_min_x
                d7=3.2425
                d8=2*(d_min_x/2-h2*cos(45*rconv))

                thrd_lnx=0.2250
                thrd_lni=0.2250
                n_inch=20
                thrd_clr=0.003


!<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
!
!
!
!<<<<<<<<<<<<<<<<<<<< 2.  Model Coordinate Systems >>>>>>>>>>>>>>>>>>>>
!
axis_cs=0   ! active coordinate system (c.s.) locating model c.s.
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
!
!
!
!<<<<<<<<<<<<<<<<<<<< 3.  Material and Element Type >>>>>>>>>>>>>>>>>>>
!
!
!---------------------- Material Properties --------------------
!
UIMP,1,EX, , ,10.3E6,       ! Material:  XXXXX
UIMP,1,DENS, , ,.097/386.4,
UIMP,1,NUXY, , ,0.33,
!
!---------------------------------------------------------------
!
!
!------------------------- Element Type ------------------------
!
ET,1,plane82,,,1,
!
!---------------------------------------------------------------
!
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
!
!
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<< 4.  Solid Model >>>>>>>>>>>>>>>>>>>>>>>>>>
!
!
!
!------------------ 4.1  Create Mating Thread Profiles ----------------
!
!
!            (1)     (2)     (3)      (4)      (5)       (6)
! THREAD_ASSEMBLE, axis_cs, y_ext, d_min_i, d_min_x, n_thrd_x, thrd_lnx,
!
!           n_thrd_i, thrd_lni, n_inch, stndrd, thrd_clr
!             (7)       (8)      (9)     (10)     (11)
!
!
thread_assemble,axis_cs,y,d_min_i,d_min_x,,thrd_lnx,,thrd_lnx,n_inch,,thrd_clr
!
cm,aset1,area
!
init_entity_num
!
lplot
!
!------------------------ 4.2  Cut Thread Profiles --------------------
!
!
!---------------------- 4.2.1  Upper Thread Profiles ------------------
!
csys,min_d_cs-2
!
k,,0,-1.0,0
k,,0,0,0
k,,0,1.0,0
k,,-1.0,1.0,0
k,,-1.0,-1.0,0
!
init_entity_num
!
a,km-4,km-3,km-2,km-1,km
!
init_entity_num
!
asba,aset1,am,,delete,delete
!
init_entity_num
!
cm,aset1,area
!
lplot
!
!---------------------- 4.2.1  Lower Thread Profiles ------------------
!
csys,min_d_cs-2
!
k,,thrd_lnx,-1.0,0
k,,thrd_lnx+1.00,-1.0,0
k,,thrd_lnx+1.00,1.0,0
k,,thrd_lnx,1.0,0
k,,thrd_lnx,0,0
!
init_entity_num
!
a,km-4,km-3,km-2,km-1,km
!
init_entity_num
!
asba,aset1,am,,delete,delete
!
init_entity_num
!
cm,aset1,area
!
!
! THREAD_MESH, thrdax, mtrlx, thrdai, mtrli, elml
!
thread_mesh,am-1,1,am,1,.002
!
lplot
!
!------------------------ 4.3  Stub Shaft Profile ---------------------
!
csys,axis_cs
!
k,,d8/2,h1+h2,0
k,,d1/2,h1+h2,0
k,,d1/2,h1+h2+h3,0
k,,d3/2,h1+h2+h3,0
k,,d4/2,h1+h2+h3-h4,0
!
k,,d5/2,h1+h2+h3-h5,0
k,,d6/2,h1+h2+h3-h5,0
!
create_lines,,1
!
lstr,km,km-11
lstr,km-6,km-131
!
init_entity_num
!
lfillt,lm,lm-7,rfil1
!
init_entity_num
!
isolate_lines
!
lsel,a,line,,lm-119
lsel,a,line,,lm-29
lsel,a,line,,lm-27
!
al,all
!
init_entity_num
!
lplot
!
!------------------------- 4.4  Retainer Profile ----------------------
!
k,,d7/2,0,0
k,,d7/2,h1,0
!
create_lines
!
lstr,km,km-20
lstr,km-1,km-11
!
init_entity_num
!
chamfer_area,1,lm,lm-2,0.01
chamfer_area,1,lm-1,lm-5,0.01
!
init_entity_num
!
isolate_lines
!
lsel,a,line,,lm-37
!
al,all
!
init_entity_num
!
lplot
!
!<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 5.  FE Model >>>>>>>>>>>>>>>>>>>>>>>>>>>
!
asel,u,area,,am-3,am-2
!
msh_algorithm,1,1,0,,,,,,0.007,0.010,,,,,
!
!--------------------------- 5.1  Constraints -------------------------
!
lsel,s,line,,lm-18
lsel,a,line,,lm-17
!
nsll,s
!
d,all,all
!
init_entity_num
!
lplot
!
!------------------------------ 5.2  Loads ----------------------------
!
csys,axis_cs
!
lsel,s,line,,lm-3
get_max_entity
!
*get,lleng,line,lm,leng
!
*get,kk1,line,lm,kp,1
*get,kk2,line,lm,kp,2
!
rad1=kx(kk1)
rad2=kx(kk2)
!
*if,rad1,gt,rad2,then
    rad1=kx(kk2)
    rad2=kx(kk1)
*endif
!
ret_a=pi*(rad2**2-rad1**2)
!
pload=fload/ret_a
!
sfl,all,pres,pload
!
init_entity_num
!
eplot
!
eqslv,iter,3,2
!
!/solu
!
!solve