/input, E:\BOOK_APDL\chapter_5\exzample5.2\EX5.1,txt
E=1.8e11       !ĵĵģ 
P1=4.88E+05    !1ȦԤӦֵ
p2=4.57E+05    !1ȦԤӦֵ
p3=3.65E+05    !1ȦԤӦֵ
p4=8.16E+05    !1ȦԤӦֵ
p5=7.83E+05    !1ȦԤӦֵ
p6=1.14E+06    !1ȦԤӦֵ
p7=1.52E+06    !1ȦԤӦֵ
*get,n,node,,count    !ȡ֧񷶥ṹԪģͽڵ
*DIM,wfinalx,,n,1     !ڵƼεX
*DIM,wfinaly,,n,1     !ڵƼεy
*DIM,wfinalz,,n,1     !ڵƼεz
*DIM,wzerox,,n,1      !ڵ̬X
*DIM,wzeroy,,n,1      !ڵ̬y
*DIM,wzeroz,,n,1      !ڵ̬z
*DIM,wbalanx,,n,1     !ڵƽ̬X
*DIM,wbalany,,n,1     !ڵƽ̬y
*DIM,wbalanz,,n,1     !ڵƽ̬z
*DIM,wx,,n,1     !ڵ̬ƽ̬Xֵ
*DIM,wy,,n,1     !ڵ̬ƽ̬yֵ
*DIM,wz,,n,1     !ڵ̬ƽ̬zֵ
*DO,i,1,n                  
*GET,wfinalx(i),node,i,loc,x    !洢ڵƼεx
*GET,wfinaly(i),node,i,loc,y    !洢ڵƼεy 
*GET,wfinalz(i),node,i,loc,z    !洢ڵƼεz
*ENDDO
!-----------------------һ
/SOLU 
ANTYPE,0       !ָΪ
NLGEOM,1       !򿪴ЧӦ
SSTIF,on       !ӦջЧӦ
AUTOTS,on      !ָʹԶʱ䲽ٻߺز
KBC,0          !ָΪ
OUTRES,all,last       !д뵽ݿе
OUTPR,all,last        !ƽ
NSUBST,10             !ָӲ
NROPT,full            !ָʹȫN-R
ACEL,0,0,9.8          !ָٶȣʩ
TIME,1                 ָ1ز
ESEL,s,real,,7,12,1,   õԪʵԣѡ2-7ȦĻԪ
EKILL,all              еĻԪɱ
ALLSEL,all             ѡеĵԪ
SOLVE                  
*GET,F1_1,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_1,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_1,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_1,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_1,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_1,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_1,ELEM,2647,SMISC,1  !ȡ7
TIME,2                 !ָ2ز
ESEL,s,real,,7         !ʵѡ1Ȧ
EALIVE,all             !1Ȧ
ALLSEL,all             !ѡеĵԪ
SOLVE                  !
*GET,F1_2,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_2,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_2,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_2,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_2,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_2,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_2,ELEM,2647,SMISC,1  !ȡ7
TIME,3                  !ָ2ز          
ESEL,s,real,,8          !ʵѡ1Ȧ  
EALIVE,all              !1Ȧ          
ALLSEL,all              !ѡеĵԪ           
SOLVE                   !                 
*GET,F1_3,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_3,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_3,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_3,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_3,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_3,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_3,ELEM,2647,SMISC,1  !ȡ7
TIME,4                  !ָ2ز          
ESEL,s,real,,9          !ʵѡ1Ȧ  
EALIVE,all              !1Ȧ          
ALLSEL,all              !ѡеĵԪ           
SOLVE                   !                 
*GET,F1_4,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_4,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_4,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_4,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_4,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_4,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_4,ELEM,2647,SMISC,1  !ȡ7
TIME,5                    !ָ2ز          
ESEL,s,real,,10           !ʵѡ1Ȧ  
EALIVE,all                !1Ȧ          
ALLSEL,all                !ѡеĵԪ           
SOLVE                     !                 
*GET,F1_5,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_5,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_5,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_5,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_5,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_5,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_5,ELEM,2647,SMISC,1  !ȡ7
TIME,6                    !ָ2ز           
ESEL,s,real,,11           !ʵѡ1Ȧ   
EALIVE,all                !1Ȧ           
ALLSEL,all                !ѡеĵԪ            
SOLVE                     !                  
*GET,F1_6,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_6,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_6,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_6,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_6,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_6,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_6,ELEM,2647,SMISC,1  !ȡ7
TIME,7                  !ָ2ز           
ESEL,s,real,,12         !ʵѡ1Ȧ   
EALIVE,all              !1Ȧ           
ALLSEL,all              !ѡеĵԪ            
SOLVE                   !                  
*GET,F1_7,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_7,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_7,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_7,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_7,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_7,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_7,ELEM,2647,SMISC,1  !ȡ7
FINISH
*DO,k,1,60,1              !ѭΪ60
/POST1                   !
!-----------------------ĳӦ
*GET,F1,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2,ELEM,2527,SMISC,1  !ȡ2
*GET,F3,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5,ELEM,2581,SMISC,1  !ȡ5
*GET,F6,ELEM,2611,SMISC,1  !ȡ6
*GET,F7,ELEM,2647,SMISC,1  !ȡ7
*GET,R1_6,RCON,6,CONST,2  !ȡ1Ӧ
*GET,R2_7,RCON,7,CONST,2  !ȡ2Ӧ
*GET,R3_8,RCON,8,CONST,2  !ȡ3Ӧ
*GET,R4_9,RCON,9,CONST,2  !ȡ4Ӧ
*GET,R5_10,RCON,10,CONST,2  !ȡ5Ӧ
*GET,R6_11,RCON,11,CONST,2  !ȡ6Ӧ
*GET,R7_12,RCON,12,CONST,2 !ȡ7Ӧ
*GET,A1_6,RCON,6,CONST,1  !ȡ1
*GET,A2_7,RCON,7,CONST,1  !ȡ2
*GET,A3_8,RCON,8,CONST,1  !ȡ3
*GET,A4_9,RCON,9,CONST,1  !ȡ4
*GET,A5_10,RCON,10,CONST,1  !ȡ5
*GET,A6_11,RCON,11,CONST,1  !ȡ5
*GET,A7_12,RCON,12,CONST,1  !ȡ5
error1=abs((p1-f1)/p1)   !1
error2=abs((p2-f2)/p2)   !2
error3=abs((p3-f3)/p3)   !3
error4=abs((p4-f4)/p4)   !4
error5=abs((p5-f5)/p5)   !5
error6=abs((p6-f6)/p6)   !6
error7=abs((p7-f7)/p7)   !7
error_max=max(error1,error2,error3,error4,error5,error6,error7)     !ѰֵΪж
!洢̫
*DO,i,1,n                   
*GET,wzerox(i),node,i,loc,x    !洢̬x
*GET,wzeroy(i),node,i,loc,y    !洢̬y 
*GET,wzeroz(i),node,i,loc,z    !洢̬z
*ENDDO
/PREP7                !ǰ
UPGEOM,1,LAST,LAST,'file','rst',' ' !ֵ·̬꣩  
!洢ƽ̬
*DO,i,1,n                   
*GET,wbalanx(i),node,i,loc,x    !洢ƽ̬x
*GET,wbalany(i),node,i,loc,y    !洢ƽ̬y 
*GET,wbalanz(i),node,i,loc,z    !洢ƽ̬z
*ENDDO
wmax=0
*DO,i,1,n
wx(i)=wfinalx(i)-wbalanx(i) !洢̬ƽ̬Xֵ
wy(i)=wfinaly(i)-wbalany(i) !洢̬ƽ̬yֵ
wz(i)=wfinalz(i)-wbalanz(i) !洢̬ƽ̬zֵ
!Ѱ̬ƽֵֵֵ̬
wmax=max(wmax,abs(wx(i)),abs(wy(i)),abs(wz(i))) 
*ENDDO
!-----------------------жǷҪ
*IF,error_max,lt,0.05,then  !ԤӦֵ5%
*IF,wmax,lt,0.005,then  !ֵ0.005m  
*DO,i,1,n
NMODIF,i,wzerox(i),wzeroy(i),wzeroz(i)!÷̬޸Ľڵ
*ENDDO
CSYS,0         ! ѿϵ
NROTAT,1,n,1   !ȫڵĽڵϵתѿϵ
/PREP7
/FORMAT,,e,5,10
NWRITE,a,txt       !õķ̬a.txtļ    
*EXIT              ˳ѭ
*ENDIF
*ENDIF
!-----------------------Ҫ󣬸³Ӧ¼
R1_6=(p1-F1)/E/A1_6/1+R1_6        
R2_7=(p2-F2)/E/A2_7/1+R2_7 
R3_8=(p3-F3)/E/A3_8/1+R3_8 
R4_9=(p4-F4)/E/A4_9/1+R4_9 
R5_10=(p5-F5)/E/A5_10/1+R5_10 
R6_11=(p6-F6)/(E*A6_11)+R6_11 
R7_12=(p7-F7)/E/A7_12/1+R7_12
R,4,A1_6,R1_6   !޸ĸӦ
R,5,A2_7,R2_7 
R,6,A3_8,R3_8 
R,7,A4_9,R4_9 
R,8,A5_10,R5_10
R,9,A6_11,R6_11
R,10,A7_12,R7_12
!޸Ľڵ
*DO,i,1,n
wzerox(i)=wzerox(i)+wx(i)
wzeroy(i)=wzeroy(i)+wy(i)
wzeroz(i)=wzeroz(i)+wz(i)
nmodif,i,wzerox(i),wzeroy(i),wzeroz(i)
*ENDDO
FINISH
!-----------------------һ
/SOLU 
ANTYPE,0       !ָΪ
NLGEOM,1       !򿪴ЧӦ
SSTIF,on       !ӦջЧӦ
AUTOTS,on      !ָʹԶʱ䲽ٻߺز
KBC,0          !ָΪ
OUTRES,all,last       !д뵽ݿе
OUTPR,all,last        !ƽ
NSUBST,10             !ָӲ
NROPT,full            !ָʹȫN-R
ACEL,0,0,9.8          !ָٶȣʩ
TIME,1                 ָ1ز
ESEL,s,real,,7,12,1,   õԪʵԣѡ2-7ȦĻԪ
EKILL,all              еĻԪɱ
ALLSEL,all             ѡеĵԪ
SOLVE                  
*GET,F1_1,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_1,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_1,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_1,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_1,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_1,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_1,ELEM,2647,SMISC,1  !ȡ7
TIME,2                 !ָ2ز
ESEL,s,real,,7         !ʵѡ1Ȧ
EALIVE,all             !1Ȧ
ALLSEL,all             !ѡеĵԪ
SOLVE                  !
*GET,F1_2,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_2,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_2,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_2,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_2,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_2,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_2,ELEM,2647,SMISC,1  !ȡ7
TIME,3                  !ָ2ز          
ESEL,s,real,,8          !ʵѡ1Ȧ  
EALIVE,all              !1Ȧ          
ALLSEL,all              !ѡеĵԪ           
SOLVE                   !                 
*GET,F1_3,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_3,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_3,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_3,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_3,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_3,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_3,ELEM,2647,SMISC,1  !ȡ7
TIME,4                  !ָ2ز          
ESEL,s,real,,9          !ʵѡ1Ȧ  
EALIVE,all              !1Ȧ          
ALLSEL,all              !ѡеĵԪ           
SOLVE                   !                 
*GET,F1_4,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_4,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_4,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_4,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_4,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_4,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_4,ELEM,2647,SMISC,1  !ȡ7
TIME,5                    !ָ2ز          
ESEL,s,real,,10           !ʵѡ1Ȧ  
EALIVE,all                !1Ȧ          
ALLSEL,all                !ѡеĵԪ           
SOLVE                     !                 
*GET,F1_5,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_5,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_5,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_5,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_5,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_5,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_5,ELEM,2647,SMISC,1  !ȡ7
TIME,6                    !ָ2ز           
ESEL,s,real,,11           !ʵѡ1Ȧ   
EALIVE,all                !1Ȧ           
ALLSEL,all                !ѡеĵԪ            
SOLVE                     !                  
*GET,F1_6,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_6,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_6,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_6,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_6,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_6,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_6,ELEM,2647,SMISC,1  !ȡ7
TIME,7                  !ָ2ز           
ESEL,s,real,,12         !ʵѡ1Ȧ   
EALIVE,all              !1Ȧ           
ALLSEL,all              !ѡеĵԪ            
SOLVE                   !                  
*GET,F1_7,ELEM,2521,SMISC,1  !ȡ1       
*GET,F2_7,ELEM,2527,SMISC,1  !ȡ2
*GET,F3_7,ELEM,2539,SMISC,1  !ȡ3 
*GET,F4_7,ELEM,2557,SMISC,1  !ȡ4 
*GET,F5_7,ELEM,2581,SMISC,1  !ȡ5
*GET,F6_7,ELEM,2611,SMISC,1  !ȡ6
*GET,F7_7,ELEM,2647,SMISC,1  !ȡ7
FINISH
k=k+1
*ENDDO
finish

