马上注册,结交更多同行朋友,交流,分享,学习。
您需要 登录 才可以下载或查看,没有帐号?注册
x
用ansys作动力时程分析的后处理中,一般只能输出或画某一个点的时程曲线或某时刻的位移等值线图,而无法直接输出许多点在某时刻的速度和加速度文件,更画不出该时刻的所有节点的速度和加速度等值线图。用下列方法可以输出任意时刻的许多节点的位移、速度和加速度文件,然后用surfer 可以画出比ansys更直观的等值线图。命令流如下:
/post26
dnumtime=4.755 !定义位移最大时刻的时间
vnumtime=0.885 !定义速度最大时刻的时间
anumtime=0.88 !定义加速度最大时刻的时间
FLST,5,351,1,ORDE,93 !挑选等值线的节点。对于多个节点,用鼠标拾取比较方便
FITEM,5,845
FITEM,5,-848
FITEM,5,857
FITEM,5,-860
FITEM,5,865
FITEM,5,-866
FITEM,5,887
FITEM,5,-1014
FITEM,5,1017
FITEM,5,-1018
FITEM,5,1021
FITEM,5,-1037
FITEM,5,1039
FITEM,5,-1089
FITEM,5,1091
FITEM,5,-1098
FITEM,5,1103
FITEM,5,-1104
FITEM,5,1115
FITEM,5,-1118
FITEM,5,1127
FITEM,5,-1128
FITEM,5,1133
FITEM,5,1137
FITEM,5,-1138
FITEM,5,1140
FITEM,5,1144
FITEM,5,-1146
FITEM,5,1149
FITEM,5,-1150
FITEM,5,1152
FITEM,5,1156
FITEM,5,1158
FITEM,5,1161
FITEM,5,-1162
FITEM,5,1164
FITEM,5,1167
FITEM,5,-1168
FITEM,5,1171
FITEM,5,-1172
FITEM,5,1174
FITEM,5,1177
FITEM,5,-1178
FITEM,5,1181
FITEM,5,-1182
FITEM,5,1184
FITEM,5,1189
FITEM,5,-1192
FITEM,5,1195
FITEM,5,-1196
FITEM,5,1199
FITEM,5,-1200
FITEM,5,1202
FITEM,5,1205
FITEM,5,-1206
FITEM,5,1208
FITEM,5,1210
FITEM,5,1212
FITEM,5,1214
FITEM,5,1216
FITEM,5,1218
FITEM,5,1220
FITEM,5,1222
FITEM,5,1225
FITEM,5,-1226
FITEM,5,1228
FITEM,5,1231
FITEM,5,-1232
FITEM,5,1235
FITEM,5,-1236
FITEM,5,1238
FITEM,5,1240
FITEM,5,1242
FITEM,5,1244
FITEM,5,1247
FITEM,5,-1248
FITEM,5,1251
FITEM,5,-1253
FITEM,5,1258
FITEM,5,1260
FITEM,5,1264
FITEM,5,1267
FITEM,5,-1268
FITEM,5,1270
FITEM,5,1272
FITEM,5,4832
FITEM,5,-4880
FITEM,5,4882
FITEM,5,-4886
FITEM,5,5123
FITEM,5,-5124
FITEM,5,5127
FITEM,5,-5130
NSEL,R, , ,P51X
*get,nodemin,node,,num,min
*get,nodemax,node,,num,max
*get,nodenum,node,,count
*dim,nodearray1,array,nodenum,3 !定义位移数组
*dim,nodearray2,array,nodenum,1 !定义速度数组
*dim,nodearray3,array,nodenum,1 !定义加速度数组
numm=1
*do,i,nodemin,nodemax
*if,nsel(i),eq,1,then !若第i个节点存在
nodearray1(numm,1)=nx(i)
nodearray1(numm,2)=ny(i)
nsol,2,i,u,z !选取第i个节点的Z方向时程位移
deriv,3,2,1 !对位移变量2微分求得速度向量3
deriv,4,3,1 !对速度变量3微分求得加速度向量4
STORE !此项不可少
*GET,kk1,VARI,2,rtime,dnumtime !把获取位移最大时刻的i点的位移
*GET,kk2,VARI,3,rtime,vnumtime !把获取速度最大时刻的i点的速度
*GET,kk3,VARI,4,rtime,anumtime !把获取加速度最大时刻的i点的加速度
nodearray1(numm,3)=kk1*1000000
nodearray2(numm)=kk2*1000
nodearray3(numm)=kk3
numm=numm+1
*endif
*enddo
*cfopen,contour-uz,dat !输出位移最大时刻的所选节点的位移数据
*vwrite, nodearray1(1,1),nodearray1(1,2),nodearray1(1,3)
(F16.8,' ',F16.8,' ',F16.8,)
*cfclos
*cfopen,contour-velo,dat !输出速度最大时刻的所选节点的速度数据
*vwrite, nodearray1(1,1),nodearray1(1,2),nodearray2(1,1)
(F16.8,' ',F16.8,' ',F16.8,)
*cfclos
*cfopen,contour-accel,dat !输出加速度最大时刻的所选节点的加速度数据
*vwrite, nodearray1(1,1),nodearray1(1,2),nodearray3(1,1)
(F16.8,' ',F16.8,' ',F16.8,)
*cfclos
|