【待】DEFORM二次开发的一点小心得

更新时间:2023-08-15 02:52:01 阅读量: 人文社科 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

DEFORM二次开发的一点小心得!

前一段时间闲着没事,看了DEFORM的help文件.和众位兄弟交流一下.限元虚拟仪器1d8S"Q!x0~9m!~.Q5U6{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分别模拟)

第三步:用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,CFD,CAE,CAD,CAM(k/b8|0^9b)y仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent8]0P&E B,L+{&Z W%?/b

注:3D中必须是DEF_SIM.exe,而DEF_SIM— P4.exe不好!(我也不知道原因,师兄是这么说的!)8]$M*q)v3V;V

仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM#d1I1k6D0F&n"r4j

还有一个问题,关于DEFORM的text运行模式.

在安装目录下面,有如下几个需要了解的文

件:<1>DEF_PRE.EXE;<2>DEF_ARM_

DEF_PRE.EXE这是前处理,DOS界面输入前处理参数设置,记录每次设置时的操作,按一定格式记录在记事本上面,这个很重要,二次开发可能需要这个文件.具体参见help.

DEF_ARM_这是运行命令.具体格式见help.

SimWe仿真论坛5O+[7_:v$x7~;?,i6e3q

下面是关键:通过fortran子程序调用DEFORM.具体如下.我用的是visualfortran6.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仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM b/O#G3N!D3G1_:c7x5}9v'E3A;}%^5}/5Y+M3d$x;"m%e'o&V2O!b%

SimWe仿真论坛4j-v-M-a(l9A

1

XXXX.KEY (key文件,需要copy到你的子程序目录下)

<CR>

E

7

2

XXXX.DB(生成DB文件)

<CR>

E

Y

<CR>仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent/c*W(t2h!~ @$N G||仿真|设计|有限元|虚拟仪器+P(E;u'r5H8r%}仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM0u'n*V&U.w,S'C仿真分析,有限元,模拟,计算,力学,航空,航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM!K*i4n8l0||仿真|设计|有限元|虚拟仪器$e(W'V%d.G*T-n:z;P'_/`9E R

result=system('E:\DEFORM3D\V5_0\DEF_ARM_ XXXX B')(运行DB文件,XXXX为文件名,B表示

batch模式运行)

注意运行过程中,有可能生成临时文件,如FOR003等,会影响模拟进行,可通过fortran命令open和write操作清除.以上可以实现一些特殊的操作.如运动子程序等.

上述即是我的一点小体会.很多我也不是很懂,自己的课题也不是DEFORM二次开发,也不专长编程.呵呵,希望对大家有所帮助!仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM B&d5~0X1@1D)J.\*~仿真分析,有限元,模拟

Re:请问能不能帖个自己二次开发加本构方程的例子

这是我尝试过的关于流动应力的二次开发,希望能给没有做过二次开发的朋友一点经验~~~现在要好好研究二次开发和有限元软件的核心机制了~~~

共同进步~~~

(s-e+N9|.BE,]*w"f6y/W'u+4S"]!F$i7W"E$S+u)e

program USRMTR

real YS,TEPS,EFEPS,TEM仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM%[,L9o#s(`(|)D1H

read (*,*,*)TEPS,EFEPS,TEM仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM$P#]2R3L;T!z"m)F4[

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目录下SimWe仿真论坛&u%B;c f(k0f'G.m$A6r"^/}-p&S!r7?"t'L/@相信看了这个程序后,大家对二次开发肯定有个初步的了解了~||仿真设计有限元虚拟仪器(`5Q4n0s;H3u8O7e5T

的所有.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。

第三步:用生成的DEF_SIM.exe,DEF_SIM_P4.exe替换原来的这两个文件。仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM%y'p)o!T2B/{'a5K

仿真分析有限元模拟计算力学航空航天,ANSYS,MSC,ABAQUS,ALGOR,Adina,COMSOL,FEMLAB,Matlab,Fluent,CFD,CAE,CAD,CAM _5B2f!p)Q/h+\-e

第四步,运行模型。对于流动应力子程序,只要在material那里选择子程序就ok了。

共享:DEFORM二次开发后,fortran子程序编译问题

这一个星期以来,每天都在编译二次开发后的DEFORM子程序,总是不能通过,看了论坛中也没有详细说这方面的,虽然按照一些操作操作了还是不行,所以详细讲述一下操作步骤。

||仿真设计有限元虚拟仪器,L(\:y'v'?.F4|SimWe仿真论坛+z ?(V%{$S(n0M-u(N1X

首先,安装的系统是windows的,到电驴上下载并安装absoft pro fortran v9.0,这应该是在网上能找到的最接近的版本了。

吧。

在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文件。||仿真设计有限元虚拟仪器6A3g$L)p(j&I:|'d0@安装DEFORM-2D,DEFORM-3D,我是这么装的,具体是不是可以只装一个我也没试过,有意的试试

关于流动应力的二次开发~!

前几天有个网友求租关于流动应力二次开发的子程序~!现和大家一起讨论讨论~!其实二次开发我

也是个beginner~!如果材料库里面没有你所需要的流动应力的模型~!你可以自己定义流动应力~~流动应力可以表示

为应力应变温度或者其他变量的函数~!用户可以定义100种流动应力的程序~!

定义变量如下:

YS=FLOW STRESSYPS=DERIVATIVE OF FLOW STRESS W.R.T. TEPS

FIP=DERIVATIVE OF FLOW STRESS W.R.T. EFEPS

TEPS=EFFECTIVE STRAINEFEPS=EFFECTIVE STRAIN RATE

如果流动应力只由应变速率灵明度指数和等效应变速率来决定~那么流动应力的子程序如下:

PEM = 0.1

YS= 10. * (EFEPS)**PEMFIP = 10. * PEM* (EFEPS)**(PEM-1)

YPS = 0如果流动应力由应变(PEN),应变速率(PEM),等效应变 (STRAIN),等效应变速率来决定,子程序如

下:(用户自己定义等效应变值)

STRAIN = USRE1(1)

IF (STRAIN.LE.0.) STRAIN = 1.E-5

PEN = 0.15

PEM = 0.1

YS= 10. * STRAIN**PEN* (EFEPS)**PEMFIP = 10. * STRAIN**PEN* PEM * (EFEPS)**(PEM-1)

YPS = 10. * PEN * STRAIN**(PEN-1.) * (EFEPS)**PEM

这就是最基本的流动应力的二次开发,大家可以再探讨探讨~!谢谢~!

2008-11-18

DEFORM 2D / DEFORM 3D二次开发心得

一求解过程中的二次开发

Procedure: If you can find Compile_DEF_SIM_USR.bat in the current directory, you cancompile the user routine by simply click on that batch file, and copy the DEF_SIM.exe orDEF_SIM_P4.exe to the folder where DEFORM3D installed.

To build DEF_SIM.exe follows these steps:

(1) Double click DEF_SIM_USR.gui ( DEF_SIM_USR_Absoft70.gui if you are using Absoft 7.0),Absoft Pro Fortran compiler will open automatically.

(2) Click on Build or in the menu bar click on Tools->Build to build DEF_SIM.exe.

(3) Copy DEF_SIM.exe to the DEFORM3D/V5_0 directory (do not forget to make a backup copy ofthe originalDEF_SIM.exe).

To build DEF_SIM_P4.exe follows these steps:

(1) Double click DEF_SIM_P4_USR.gui ( DEF_SIM_P4_USR_Absoft70.gui if you are usingAbsoft 7.0), Absoft Pro Fortran compiler will open automatically.

(2) Click on Build or in the menu bar click on Tools->Build to build DEF_SIM_P4.exe.

(3) Copy DEF_SIM_P4.exe to the DEFORM3D/V5_0 directory (do not forget to make a backupcopy of the originalDEF_SIM_P4.exe).

具体方法:

对于DEFORM 3D 5.0

如果安装的是Absoft7.0,先检查是否存在DEF_SIM_USR_Absoft70.amk和DEF_SIM_P4_USR_Absoft70.amk这两个文件,只有这两个文件完好才能正常编译.

1.双击DEF_SIM_USR_Absoft70.gui打开编译窗口,单击Build创建DEF_SIM.exe.

2.双击DEF_SIM_P4_USR_Absoft70.gui打开编译窗口,单击Build创建DEF_SIM_P4.exe.

3.这时DEF_SIM_USR_Absoft70.amk和DEF_SIM_P4_USR_Absoft70.amk如果变成了DEF_SIM_USR_Absoft70.amk.bk和DEF_SIM_P4_USR_Absoft70.amk.bk则要将扩展名中的.bk去掉.

4.双击Compile_DEF_SIM_USR.bat,完成编译,将DEF_SIM.exe和 DEF_SIM_P4.exe拷贝到DEFORM3D/V5_0目录下.

对于DEFORM 3D 6.1

Batch building:

If you can find build_all_def_sim_usr.bat in the current directory, you can compile the user routineby simply click on that batch file, and copy the DEF_SIM.exe and DEF_SIM_P4.exe andDEF_SIM_P4P.exe to the folder where DEFORM3D installed. If you have Absoft7.0 instead ofAbsoft9.0, you should clickbuild_all_def_sim_usr_absoft70.bat. If you have Absoft7.5 instead ofAbsoft9.0, you should clickbuild_all_def_sim_usr_absoft75.bat.

Interactive building:

(1) Double click DEF_SIM_USR.gui, Absoft Pro Fortran compiler will open automatically.

(2) Click on Build or in the menu bar click on Tools->Build to build DEF_SIM.exe.

(3) Copy DEF_SIM.exe to the folder where DEFORM3D installed (do not forget to make a backupcopy of the originalDEF_SIM.exe).

To build DEF_SIM_P4.exe follows these steps:

(1) Doubleclick DEF_SIM_P4_USR.gui, Absoft Pro Fortran compiler will open automatically.

(2) Click on Build or in the menu bar click on Tools->Build to build DEF_SIM_P4.exe.

(3) Copy DEF_SIM_P4.exe to the folder where DEFORM3D installed (do not forget to make a

backup copy of the originalDEF_SIM_P4.exe).

To build DEF_SIM_P4P.exe follows these steps:

(1) Double click DEF_SIM_P4P_USR.gui, Absoft Pro Fortran compiler will open automatically.

(2) Click on Build or in the menu bar click on Tools->Build to buildDEF_SIM_P4P.exe.

(3) Copy DEF_SIM_P4P.exe to the folder where DEFORM3D installed (do not forget to make abackup copy of the originalDEF_SIM_P4P.exe)

具体方法:

如果安装的是Absoft7.0,先检查是否存在build_def_sim_usr_absoft70.amk和build_def_sim_p4_usr_absoft70.amk这两个文件,只有这两个文件完好才能正常编译.

1.双击DEF_SIM_USR_Absoft70.gui打开编译窗口,单击Build创建DEF_SIM.exe.

2.双击DEF_SIM_P4_USR_Absoft70.gui打开编译窗口,单击Build创建DEF_SIM_P4.exe.

3.双击build_def_sim_usr_absoft70.bat和build_def_sim_p4p_usr_absoft70.bat完成编译,将DEF_SIM.exe和 DEF_SIM_P4.exe拷贝到DEFORM3D/V6_1目录下.

注意:

1.按上面的方法即可得到自定义变量的每一步的值,但前提是必须在前处理里面定义变量名称并给变量赋初值,方法是:

In the Pre-processor, go to Advanced--> Element Data for the deforming object and go to the Usertab.Here, you should define the element variables that you are interested in.These variables willthen be listed in the Post-processor in the "FEM user elem" section of the State Variable menu.

2.以上方法得到的是单元的值,要得到节点值,方法如下:

The variables in the NODCOM3 common block are at the nodal level.These values only exist ifnodal values are output from the simulation.To do this, go to Simulation Controls--> Advanced-->Output Control and set all three variables to "Element + Node" output.

After doing this, EFEPS_NN, TEPS_NN, DAMG_NN, IELMNOD(1), IELMNOD(2)andIELMNOD(3) all have values (IELMNOD(1), IELMNOD(2)and IELMNOD(3) are all set to thepositive number 2 since "Element + Node" output was selected).The stress components STS_NN(6)were still zero, however.This is because these nodal stress components only get calculated when theworkpiece is Elasto-Plastic (EP).Once I made my workpiece EP, these stress components werenonzero.

二后处理的二次开发

Procedure:

If you can find Compile_DEF_PST_USR.bat in current directory, user routine post processor can be

compiled by double click on that batch file.

To generate USR_DEF_PST3.dll follow these steps:

1.Double click USR_DEF_PST3.gui (USR_DEF_PST3_Absoft70.gui for Absoft 7.0 compiler),Absoft Pro Fortran compiler will open automatically.

2.

3.

4.Click on Build or in the menu bar Click “ToolsàBuild”, to build USR_DEF_PST3.dll.After finishing with the set up of the project, customize pstusr3.f and rebuild USR_DEF_PST3.gui.Copy USR_DEF_PST3.dll to the DEFORM3D/v5_0/Usr directory.

具体方法:

1.双击USR_DEF_PST3_Absoft70.gui打开编译窗口,单击Build创建USR_DEF_PST3.dll.2.双击Compile_DEF_PST_USR.bat,完成编译,将USR_DEF_PST3.dll拷贝到DEFORM3D/V5_0/USR目录下.

其实,完成第一步后就直接把USR_DEF_PST3.dll拷贝到DEFORM3D/V5_0/USR目录下,就可以了.

注意:后处理里面能实现的都可以按前面的方法在usr_upd.f中实现,而且按前面的方法实现效果要好得多,原因在于后处理里面的更新是在已经存储的.DB文件里面取数据进行计算,如果不是每步都存储到DB中了,那得出的结果会很不准确,而且目前后处理中只能显示100步的结果,所以建议尽量不在后处理中进行二次开发.

本文来源:https://www.bwwdw.com/article/vf5j.html

Top