【原创】我也来ANSYS_TO_FLAC
受到大虾们的启发,我用APDL写了一个ANSYS_TO_FLAC的程序,单元为solid45,在ANSYS中生成节点和单元后既可以得到FLAC的输入文件,请多多支持……^_^回复: 【原创】我也来ANSYS_TO_FLAC
你的程序贴出来试一下回复: 【原创】我也来ANSYS_TO_FLAC
APDL?嗯,这个强回复: 【原创】我也来ANSYS_TO_FLAC
程序如下:!--------------------------
!ANSYS建模节点和单元转换到FLAC
!Coded by Zhim
!--------------------------
nsel,all
esel,all
*get,NodeNum,node,,NUM,MAX
*get,EleNum,elem,,NUM,MAX
*dim,NodeData,array,NodeNum,3
*dim,EleData,table,EleNum,8
*do,i,1,NodeNum,1
*get,NodeData(i,1),node,i,LOC,x
*get,NodeData(i,2),node,i,LOC,y
*get,NodeData(i,3),node,i,LOC,z
*enddo
*do,i,1,EleNum,1
*get,EleData(i,1),elem,i,NODE,1
*get,EleData(i,2),elem,i,NODE,2
*get,EleData(i,3),elem,i,NODE,3
*get,EleData(i,4),elem,i,NODE,4
*get,EleData(i,5),elem,i,NODE,5
*get,EleData(i,6),elem,i,NODE,6
*get,EleData(i,7),elem,i,NODE,7
*get,EleData(i,8),elem,i,NODE,8
*enddo
!写数据到文件
*cfopen,Flac,dat
*vwrite,
(';The file from ANSYS')
!写入节点信息
*vwrite,sequ,NodeData(1,1),NodeData(1,3),NodeData(1,2)
gen point id %G (%G ,%G ,%G )
!写入单元信息
*vwrite,EleData(1,1),EleData(1,2),EleData(1,4),EleData(1,5),EleData(1,3),EleData(1,8),EleData(1,6),EleData(1,7)
gen zone brick p0 point %G p1 point%G p2 point %G p3 point %G p4 point %G p5 point %G p6 point %G p7 point %Gsize 1 1 1 rat 1 1 1
*cfclos
回复: 【原创】我也来ANSYS_TO_FLAC
谢谢Re:【原创】我也来ANSYS_TO_FLAC
很好的程序如果能继续开发tetra的就更完美了
Re:【原创】我也来ANSYS_TO_FLAC
加分鼓励原创开发,希望继续。Re:【原创】我也来ANSYS_TO_FLAC
请问zhim,你的ANSYS-TO-FLAC程序APDL语言考虑的只是六面体8节点单元,棱柱形六节点5面体你如何考虑呢,请指教Re:【原创】我也来ANSYS_TO_FLAC
关键要看懂APDL然后对zhim的程序做简单的修改就可以满足自己的要求了
比如,输出FLac3D格式的文件:
!--------------------------
! 用APDL写的一个ANSYS_TO_FLAC3D的程序
! 单元为solid45
! 在ANSYS中生成节点和单元后就可以得到FLAC3D的输入文件
!--------------------------
! ANSYS建模节点和单元转换到FLAC3D
! Coded by Zhim@SimWe
!--------------------------
nsel,all
esel,all
*get,NodeNum,node,,NUM,MAX
*get,EleNum,elem,,NUM,MAX
*dim,NodeData,array,NodeNum,3
*dim,EleData,array,EleNum,8
*do,i,1,NodeNum,1
*get,NodeData(i,1),node,i,LOC,x
*get,NodeData(i,2),node,i,LOC,y
*get,NodeData(i,3),node,i,LOC,z
*enddo
*do,i,1,EleNum,1
*get,EleData(i,1),elem,i,NODE,1
*get,EleData(i,2),elem,i,NODE,2
*get,EleData(i,3),elem,i,NODE,3
*get,EleData(i,4),elem,i,NODE,4
*get,EleData(i,5),elem,i,NODE,5
*get,EleData(i,6),elem,i,NODE,6
*get,EleData(i,7),elem,i,NODE,7
*get,EleData(i,8),elem,i,NODE,8
*enddo
!写数据到文件
*cfopen,Grid,Flac3D
*vwrite,
('* FLAC3D grid produced by ANSYS')
!写入节点信息
*vwrite,
('* GRIDPOINTS')
*vwrite,SEQU,NodeData(1,1),NodeData(1,2),NodeData(1,3)
G %G %G %G %G
!写入单元信息
*vwrite,
('* ZONES')
*vwrite,SEQU,EleData(1,1),EleData(1,2),EleData(1,4),EleData(1,5),EleData(1,3),EleData(1,8),EleData(1,6),EleData(1,7)
Z B8 %G %G %G %G %G %G %G %G %G
*cfclos
Re:【原创】我也来ANSYS_TO_FLAC
对,我应用的过程中,原版的也可以出图形,但是稍微有一个小问题就是,好像那些点的位置不对,可能需要更改以下点的位置,不过毕竟提供了一个很好的方法,我觉得思路很好,很不错,但是对这个需要增加一个应用条件,那就是,1.单元和节点的编号必须从1开始
2.而且编号必须连续
还有一个有待改进的期望,
1.再增加一个数组,保存材料号码,转化到flac中变成group
这样自,这个工具就显得非常完美哦!
Re:【原创】我也来ANSYS_TO_FLAC
谢谢 支持楼主!继续发帖! 这个东西怎么开挖啊 reterterterter
页:
[1]