本人ansys初学,抄抄改改写了如下一点命令,代码很罗嗦 原因是我对apdl语言也很不熟悉。
*get,nodenum,node,,num,max ! 获得节点的数目
*dim,nodepos,array,nodenum,3 ! nodepos存放节点的坐标
*do,i,1,nodenum,1
*get,nodepos(i,1),node,i,loc,x !获得节点的X坐标
*get,nodepos(i,2),node,i,loc,y
*get,nodepos(i,3),node,i,loc,z
*enddo
*get,elemnum,elem,,num,max !得到单元的总数目
*dim,elemlist,array,elemnum,8 !单元包含的节点列表,指定每个单元包含8个节点,根据情况修改
*do,i,1,elemnum,1
*do,ii,1,8,1
*get,elemlist(i,ii),elem,i,node,ii !获得节点编号
*enddo
*enddo
*cfopen,geomfile,txt !打开文件,写入数据
*do,i,1,elemnum,1
*vwrite,
('3dmesh')
*vwrite,
('6')
*vwrite,
('3')
n1=elemlist(i,1)
n2=elemlist(i,2)
n3=elemlist(i,3)
n4=elemlist(i,4)
n5=elemlist(i,5)
n6=elemlist(i,6)
n7=elemlist(i,7)
n8=elemlist(i,8)
a11=nodepos(n1,1)
a12=nodepos(n1,2)
a13=nodepos(n1,3)
a21=nodepos(n2,1)
a22=nodepos(n2,2)
a23=nodepos(n2,3)
a31=nodepos(n3,1)
a32=nodepos(n3,2)
a33=nodepos(n3,3)
a41=nodepos(n4,1)
a42=nodepos(n4,2)
a43=nodepos(n4,3)
a51=nodepos(n5,1)
a52=nodepos(n5,2)
a53=nodepos(n5,3)
a61=nodepos(n6,1)
a62=nodepos(n6,2)
a63=nodepos(n6,3)
a71=nodepos(n7,1)
a72=nodepos(n7,2)
a73=nodepos(n7,3)
a81=nodepos(n8,1)
a82=nodepos(n8,2)
a83=nodepos(n8,3)
*vwrite,a61,a62,a63
(f16.6','f16.6','f16.6)
*vwrite,a21,a22,a23
(f16.6','f16.6','f16.6)
*vwrite,a21,a22,a23
(f16.6','f16.6','f16.6)
*vwrite,a51,a52,a53
(f16.6','f16.6','f16.6)
*vwrite,a11,a12,a13
(f16.6','f16.6','f16.6)
*vwrite,a11,a12,a13
(f16.6','f16.6','f16.6)
*vwrite,a81,a82,a83
(f16.6','f16.6','f16.6)
*vwrite,a41,a42,a43
(f16.6','f16.6','f16.6)
*vwrite,a11,a12,a13
(f16.6','f16.6','f16.6)
*vwrite,a71,a72,a73
(f16.6','f16.6','f16.6)
*vwrite,a31,a32,a33
(f16.6','f16.6','f16.6)
*vwrite,a21,a22,a23
(f16.6','f16.6','f16.6)
*vwrite,a71,a72,a73
(f16.6','f16.6','f16.6)
*vwrite,a71,a72,a73
(f16.6','f16.6','f16.6)
*vwrite,a61,a62,a63
(f16.6','f16.6','f16.6)
*vwrite,a81,a82,a83
(f16.6','f16.6','f16.6)
*vwrite,a81,a82,a83
(f16.6','f16.6','f16.6)
*vwrite,a51,a52,a53
(f16.6','f16.6','f16.6)
*enddo
*cfclos |