前一段时间闲着没事,看了 DEFORM 的 help 文件.和众位兄弟交流一下.|Simwe.com|仿真|设计|有
限元|虚拟仪器 1d8S"Q!x0~9m!~.Q 5U6{9^
用户子程序实现过程:
第一步:所需文件准备:把 DEF_SIM 目录下的 def_usr.f , DEF_SIM_USR_ABsoft70.gui , DEF_SIM_P4_USR_ABsoft70.gui , DEF_SIM_P4_USR_LIB.lib , DEF_SIM_USR_LIB.lib 和 lib 目录下的所有.lib 文件拷 到工作目录下。备份 DEF_SIM.exe ,DEF_SIM_P4.exe 两个文件。
第二步:编写源程序。对于新手可以使用模版自带的子程序,对于材料流动应力子程序模版里头本身就自带有一个,所以可以不需要自己编写。(我就利用过自带的作过模拟,把前面的常数设置为 10 和 100 分别模拟)仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent ,CFD,CAE,CAD,CAM(k/b8|0^9b)y
第三步:用 absoft7.0 或以上版本打开 DEF_SIM_USR_ABsoft70.gui 文档,指定好 library files,用工作目录下的 lib 文件来替换原来默认的 lib 文件,上述做完后直接 点 build 就 ok 了,自动生成了 DEF_SIM.exe。重复上面的过程打开 DEF_SIM_P4_USR_ABsoft70.gui 文档生成 DEF_SIM_P4.exe。
第三步:用生成的 DEF_SIM.exe ,DEF_SIM_P4.exe 替换原来的这两个文件。 第四步,运行模型。对于流动应力子程序,只要在 material 那里选择子程序就 ok 了。仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent 8]0P&E B,L+{&Z W%?/b
注:3D 中必须是 DEF_SIM.exe,而 DEF_SIM— P4.exe 不好!(我也不知道原因,师兄是这么说的!).
还有一个问题,关于 DEFORM 的 text 运行模式.
在安装目录下面,有如下几个需要了解的文件:<1>DEF_PRE.EXE;<2>DEF_ARM_CTL3.COM
DEF_PRE.EXE 这是前处理,DOS 界面输入前处理参数设置,记录每次设置时的操作, 按一定格式记录在记事本上面,这个很重要,二次开发可能需要这个文件.具体参 见 help.
DEF_ARM_CTL3.COM 这是运行命令.具体格式见 help.
下面是关键:通过 fortran 子程序调用 DEFORM.具体如下.我用的是 visual fortran6.6.
result=system('E:\DEFORM3D\V5_0\DEF_PRE.EXE') (启动前处理,弹出 DEF_PRE.EXE 界面)
result=system('E:\DEFORM3D\V5_0\DEF_PRE.EXE<INI.TXT') (进行前处理 参数设置,INI.TXT 是记录每次设置时的操作命令流),譬如一个简单的操作命令流:
<CR>
2
1
XXXX.KEY (key 文件, 需要 copy 到你的子程序目录下)
<CR>
E
7
2
XXXX.DB (生成 DB 文件)
<CR>
E
Y
<CR>
result=system('E:\DEFORM3D\V5_0\DEF_ARM_CTL3.COM XXXX B') (运行 DB 文件, XXXX 为文件名, B 表示 batch 模式运行)
注意运行过程中,有可能生成临时文件,如 FOR003 等,会影响模拟进行,可通过 fortran 命令 open 和 write 操作清除.以上可以实现一些特殊的操作.如运动子程序等.
上述即是我的一点小体会.很多我也不是很懂,自己的课题也不是 DEFORM 二次开发,也不专长编程.呵呵,希望对大家有所帮助!
这是我尝试过的关于流动应力的二次开发,希望能给没有做过二次开发的朋友一点经验~~~现在要好好研究二次开发和有限元软件的核心机制了~~~
共同进步~~~~
program USRMTR
real YS,TEPS,EFEPS,TEM
read (*,*)TEPS,EFEPS,TEM
YS=123.5237-1.238956*TEM+3.8584*LOG10(EFEPS)+6.7852*TEPS-1.29*TEM*TEPS+52.895*LOG10(EFEPS)*TEPS+0.00088442*TEM*TEM
Print *,YS
END
相信看了这个程序后,大家对二次开发肯定有个初步的了解~
结合论坛上各位大虾的经验和自带帮助,前段时间动手试了一下用户子程序的实现过程,现将自己的一些体会与大家共享,相信对做二次开发的新手有用
用户子程序实现过程:
第一步: 所需文件准备: 把 DEF_SIM 目录下的 def_usr.f , DEF_SIM_USR_ABsoft70.gui , DEF_SIM_P4_USR_ABsoft70.gui , DEF_SIM_P4_USR_LIB.lib , DEF_SIM_USR_LIB.lib 和 lib 目录下的所有.lib 文件拷到工作目录下。备份 DEF_SIM.exe ,DEF_SIM_P4.exe 两个文件。
第二步:编写源程序。对于新手可以使用模版自带的子程序,对于材料流动应力子程序模版里头本身就自带有一个,所以可以不需要自己编写。
第三步:用 absoft7.0 或以上版本打开 DEF_SIM_USR_ABsoft70.gui 文档,指定好 library files,用 工作目录下的 lib 文件来替换原来默认的 lib 文件(这一步很关键,试了好久才发现),要不然编译 可以通过,可是不能生成执行文件。上述做完后直接点 build 就 ok 了,自动生成了 DEF_SIM.exe。
重复上面的过程打开DEF_SIM_P4_USR_ABsoft70.gui 文档生成DEF_SIM_P4.exe。仿真分析,有限元,模拟,计算,力学,航空,航天,ANSY S,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM%y'p)o!T2B/{'a5K 第三步:用生成的 DEF_SIM.exe ,DEF_SIM_P4.exe 替换原来的这两个文件。仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,CO MSOL,FEMLAB ,Matlab,Fluent,CFD,CAE,CAD,CAM _5B 2f!p)Q/h+\-e 第四步,运行模型。对于流动应力子程序,只要在 material 那里选择子程序就 ok 了。
这一个星期以来,每天都在编译二次开发后的 DEFORM 子程序,总是不能通过,看了论坛中也没有详细说这方面的,虽然按照一些操作操作了还是不行,所以详细讲述一下操作步骤。
首先,安装的系统是 windows 的,到电驴上下载并安装 absoft pro fortran v9.0,这应该是在网上能找到的最接近的版本了。|Simwe.com|仿真|设计|有限元|虚拟仪器 6A3g$L)p(j&I:|' d0@
安装 DEFORM-2D,DEFORM-3D,我是这么装的,具体是不是可以只装一个我也没试过,有意的试试吧。
在 def_usr.f(该文件在 DEF_SIM 文件夹中)编写二次开发的程序,保存。
找个地方建一个文件夹 M,将 DEFORM 中的 UserRoutine 文件夹中的所有文件和所有的*.lib 文件拷贝到文件夹 M 中。
(这样比较省事点,虽然有些文件用不到。)
将 absoft pro fortran v9.0 的安装文件中的 f77_oldnames.obj 文件也拷贝到文件夹 M 中。 (该文件在..\Absoft90\LIB 中)
双击打开 DEF_SIM_USR.gui 文件,将 Library Files 中的*.lib 文件全部替换成文件夹 M 中的相应的
*.lib。(在 Library Files 任选一个文件,右键选择 Add/Remove File(s) 然后进行替换文件操作)。 将文件夹 M 中的 f77_oldnames.obj 也添加进去。
点击 Tools-->buid 就 OK 了。生成了 DEF_SIM.exe
建立 DEF_SIM_P4.exe 文件如上面的操作,只是改成双击 DEF_SIM_P4_USR.gui 文件。
原资料见附件
免责声明:
本页面/内容部分素材来源于互联网公 开 信 息,旨在传递更多信息,不代表本平台立场。
版权归原作者或机构所有,如涉及侵权,请通过平台联系我们,我们将在核实后第一时间处理。
本平台对转载内容的真实性、准确性不作任何保证,用户需自行判断并承担使用风险。