!˳Ϊ¡֧񷶥ṹѧܷе2س

FINISH        
/CLEAR           !ANSYSڴ
*AFUN,DEG        !ýǶȵλ
/FILENAME, suspendome             !幤ļ
/TITLE, the model of suspendome   !幤
!1ģͻ
*SET,Kn,6        !ÿǵ
*SET,Nx,16       !Ȧ
*SET,f,17.025    !ʸ
*SET,Span,92     !ÿ
!2֧񷶥ṹϲǵļβ
*DIM,numnode,,Nx,1     !嵥ÿȦڵ
*DO,i,1,Nx,1
*SET,numnode(i),Kn*i   !㵥ÿȦĸֵ
*ENDDO
*DIM,num,,Nx+1,1     !ÿȦڵ,ĵ㵥ΪһȦ
*SET,num(1),1         !һȦĵ㣩ڵΪ1
*DO,i,2,Nx+1,1
*SET,num(i),num(i-1)+numnode(i-1) !IȦĵڵŲֵnum
*ENDDO
*DIM,numcg,,7,1       !֧񷶥ṹϵÿȦŸ˸߶
*SET,numcg(1),4.5       !ϵ1ȦĳŸ˸߶Ϊ4.5m
*SET,numcg(2),4.5     !ϵ2ȦĳŸ˸߶Ϊ4.5m
*SET,numcg(3),4.5     !ϵ3ȦĳŸ˸߶Ϊ4.5m
*SET,numcg(4),4.5     !ϵ3ȦĳŸ˸߶Ϊ4.5m
*SET,numcg(5),5.5     !ϵ5ȦĳŸ˸߶Ϊ5.5m
*SET,numcg(6),6       !ϵ6ȦĳŸ˸߶Ϊ6m
*SET,numcg(7),6.5     !ϵ7ȦĳŸ˸߶Ϊ6.5m
/PREP7               !ǰģ
!3嵥Ԫ͡Ժ͸˼ʵ
ET,1,BEAM4           !Ǹ˼ĵԪΪBEAM4
ET,2,LINK8           !ϵо˺Ÿ˵ĵԪΪLINK8
ET,3,LINK10          !ϵлĵԪΪLINK10
MP,ex,1,2.06e11      !ֹܵĲϵĵģ
MP,dens,1,7850       !ֹܵĲϵܶ  
MP,alpx,1,1.2e-5     !ֹܵĲϵϵ
MP,prxy,1,0.3        !ֹܵĲϵĲɱ
TB,BISO,1,1,2,       !ֹܵıϵΪ˫ģ
TBTEMP,0             !ֹܵıϵӦ¶
TBDATA,,345e6,0,,,,  !ֹܵĵǿΪ345MPa
MP,ex,2,1.9e11       !Ĳϵĵģ 
MP,dens,2,7850       !Ĳϵܶ              
MP,alpx,2,1.2e-5     !Ĳϵϵ        
MP,prxy,2,0.3        !ĲϵĲɱ            
TB,BISO,2,1,2,       !ıϵΪ˫ģ    
TBTEMP,0             !ıϵӦ¶    
TBDATA,,1330e6,0,,,, !ĵǿΪ1330MPa      
!嵥Ԫʵ
R,1,37.13e-4,1803.07e-8,1803.07e-8,0.203,0.203  !ֹp203x6ʵ
R,2,46.62e-4,2622.04e-8,2622.04e-8,0.219,0.219  !ֹp219x7ʵ 
R,3,52.34e-4,3709.06e-8,3709.06e-8,0.245,0.245  !ֹp245x7ʵ
R,4,66.60e-4,5851.71e-8,5851.71e-8,0.273,0.273   !ֹp273x8ʵ
R,5,73.14e-4,7747.42e-8,7747.42e-8,0.299,0.299  !ֹp299x8ʵ
R,6,2809e-6,9E-05             !1Ȧʵ
R,7,2809e-6,8.97E-04          !2Ȧʵ   
R,8,2809e-6,7.18E-04          !3Ȧʵ
R,9,2809e-6,1.60E-03          !4Ȧʵ   
R,10,4657e-6,1.54E-03         !5Ȧʵ     
R,11,4657e-6,2.23E-03         !6Ȧʵ    
R,12,4657e-6,2.98E-03         !7Ȧʵ
R,13,46.62e-4                 !ŸP219x7ʵ
R,14,5024e-6                  !˵ʵ
!ϲ㵥ǵԪ
!4ҽڵ
CSYS,2                       !תΪϵ
R=(Span*Span/4+f*f)/(2*f)    !ʸߺͿȼ뾶R
DPha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx  !Ȧ˶ӦļнDpha
N,1,R,0,90                  ! 嶥1ŽڵλΪR,0,90
*DO,i,1,Nx                  ! 1NxȦĽڵѭ
*DO,j,1,Kn*i                ! ԳĽڵѭ,iȦɷΪKn*i
    x=R                     ! x
    y=(j-1)*360/(Kn*i)      ! y꣬ȦϵĽڵĿΪKnȦ
    z=90-i*DPha             ! z
N,1+Kn*(i-1)*i/2+j,x,y,z    ! μ㲢ڵıźλ
*ENDDO
*ENDDO
LOCAL,11,1,0,0,0      !ԭ㴦һϵΪ11
CSYS,11               !ֲϵ11
!5ϲǸ˼
TYPE,1        !õǰĵԪΪ1
MAT,1         !õǰĲԱΪ1
REAL,1        !õǰʵΪ1
! 
*DO,i,1,Nx                              !1NxȦĽѭ
*DO,j,1,Kn*i-1                          !1Kn*i-1ԳĽѭ
E,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1   !ɵԪ
*ENDDO
E,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i  !һԳĻ
*ENDDO
! ĵԪ
*DO,i,1,Kn                              !ԸԳѭ
E,1,1+i                                 !Ĵ˵Ԫ
*ENDDO
*DO,j,1,Nx-1                            !Ȧ2ȦʼȦѭ
*DO,k,1,Kn                              !ԸԳѭ
*DO,i,1,j+1                             !ÿԳڵĸѭ
*IF,i,EQ,j+1,THEN                       !жǷǵǰԳڵһ
*IF,k,EQ,Kn,THEN                        !жǷһԳ
E,1+Kn*(j-1)*j/2+1,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i 
!1һ
*ELSE
E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i   
!һڵһ
*ENDIF
*ELSE
E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i    !һ
*ENDIF
*ENDDO
*DO,i,1,j
E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i+1  !һ㸺
*ENDDO
*ENDDO
*ENDDO

!6ͼֽ޸ĵǵĽ
*DIM,area,,32 !ÿ˺ͻ˵ʵ
!
*SET,area(1),2,2,2,2,2,3,2,3     !ͼֽе18Ȧ˵ĸֹܹareaĵ18λøֵ
*SET,area(9),4,5,2,5,2,5,2,5     !ͼֽе916Ȧ˵ĸֹܹareaĵ916λøֵ
!
*SET,area(17),2,1,1,1,1,1,1,1    !ͼֽе18Ȧ˵ĸֹܹareaĵ1724λøֵ
*SET,area(25),1,1,1,1,1,1,2,2    !ͼֽе18Ȧ˵ĸֹܹareaĵ2532λøֵ
!޸Ļ˽
num_elem_b=1  !һȦ˵ʼ
num_elem_e=6  !һȦ˵ĩβ
*DO,i,1,Nx,1               !116Ȧѭ
ESEL,s,,,num_elem_b,num_elem_e,1   !ѡIȦл
EMODIF,all,real,area(i)            !޸ĵIȦĻ˵Ԫʵ
ESEL,all                           !ѡеԪ
num_elem_b=num_elem_b+i*Kn         !IȦ˵ʼ
num_elem_e=num_elem_e+(i+1)*Kn     !IȦ˵ĩβ
*ENDDO
sum_num=Nx*Kn+Nx*(Nx-1)/2*Kn    !㻷˵Ԫֵsum_num
!޸ľ˽
num_elem_b=sum_num+1         !1Ȧ˵ʼ
num_elem_e=sum_num+6         !1Ȧ˵ĩβ
*DO,i,1,Nx,1                 !116Ȧѭ
ESEL,s,,,num_elem_b,num_elem_e,1   !ѡIȦо
EMODIF,all,real,area(i+16)            !޸ĵIȦľ˵Ԫʵ
ESEL,all                           !ѡеԪ
num_elem_b=num_elem_b+6+12*(i-1)        !IȦ˵ʼ
num_elem_e=num_elem_e+6+12*i            !IȦ˵ĩβ
*ENDDO
!7²ϵĽڵ
*SET,nodeinc,NDINQR(0,14)      !ȡǰڵ㶨Ŀ
*DO,i,1,7,1       !֧񷶥²ϵ1-7Ȧѭ
NGEN,2,nodeinc,num(2*i)+1,num(2*i+1),2,0,0,-numcg(i)  !øϲǵķ²IȦϵĽڵ
*ENDDO
!8²ϵгŸ˵Ԫ
TYPE,2                  !Ÿ˵ĵԪͱΪ2
MAT,1                   !Ÿ˵ĲԱΪ1 
REAL,13                 !Ÿ˵ʵΪ13
*DO,i,1,7,1             !Ÿ˵17Ȧѭ
*DO,j,num(2*i)+1,num(2*i+1),2 
E,j,j+nodeinc            !Ÿ˵Ԫ
*ENDDO
*ENDDO
!9²ϵеĻԪ
*DO,j,1,7,1             !17Ȧѭ   
TYPE,3                  !廷ĵԪͱΪ3 
MAT,2                   !廷ĲԱΪ2   
REAL,5+j                !廷ʵΪ5+J
*DO,i,num(2*j)+1,num(2*j+1)-2,2
E,i+nodeinc,i+2+nodeinc            !Ԫ
*ENDDO
E,num(2*j)+1+nodeinc,num(2*j+1)-1+nodeinc    !Ԫ
*ENDDO
!10²ϵеľԪ
TYPE,2                !廷ĵԪͱΪ2 
MAT,1                 !廷ĲԱΪ1
REAL,14               !廷ʵΪ14
*DO,j,1,7,1
*DO,i,1,6,1
E,num(2*j)+1+nodeinc+2*j*(i-1),num(2*j+2)+1+(2*j+2)*(i-1)  !˵Ԫ
*ENDDO
*ENDDO

*DO,j,1,7,1
*SET,m,0
*DO,i,1,numnode(2*j)/2-1,1
*SET,t,mod(i-1,j)
*IF,t,eq,0,then
m=m+2
E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m
E,num(2*j)+1+nodeinc+2*i,num(2*j+2)+1+2*(i-1)+m
*ELSE
E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m
E,num(2*j)+1+nodeinc+2*(i),num(2*j+2)+1+2*(i-1)+m
*ENDIF
*ENDDO
E,num(2*j+1)-1+nodeinc,num(2*j+3)-1
E,num(2*j)+1+nodeinc,num(2*j+3)-1
*ENDDO

!11ϲڵѹڵ
NUMCMP,node
NUMCMP,elem
!12֧񷶥ṹԼ
CSYS,11   !ֲ11
NROTAT,722,814,4   !ڵ7228144Ϊ24ڵתֲϵ11ƽеλ
*DO,i,1,24  
D,718+4*i,uz,0     !Լڵ718+4*iλ
D,718+4*i,uy,0     !Լڵ718+4*iĻλ
*ENDDO  