LS-DYNA材料的二次开发汇总

合集下载

利用LS-DYNA进行成形仿真的输入控制参数

利用LS-DYNA进行成形仿真的输入控制参数

利用LS-DYNA进行成形仿真的输入控制参数Translated by SunnyWinterLS-DYNA已广泛用于汽车碰撞分析。

默认的输入参数一般能给出有效,精确的碰撞模拟结果。

但是,这些默认值对于成形仿真分析并不一定理想。

下面是一个标准的金属成形过程。

为及时参考,推荐输入参数用黑体字标识,并包含在盒状关键字输入框中。

模型明确要求的数据,如终止时间等参数,输入黑体的0值。

一般问题设定在显式成形仿真中,利用质量比例缩放和(或者)人为的高工具速度,运行时间可以大大缩减。

这两种方法都会引入人为的动力学影响,因此必须将其减小到在工程意义上合理的水平。

一个单独的描述人为动力影响的参数是:工具每运动1毫米所采用的显式时间步进值(或周期)数目。

当成形过程允许大的无限的板料运动,比如冲击成形,需要更多的毫米周期数。

当板料被压边圈和冲模支撑较强的约束住时,较少的毫米周期数是必要的。

对大多数的仿真来说,100到1000之间的毫米周期数能产生合理的结果。

如果可能,或者有必要重复一个仿真,可利用两个不同的毫米周期值并比较分析结果去估计其对人为动力学影响的敏感性。

推荐选择的一个最大工具速度是2.0mm/ms,起始和结束速度为0。

可以使用简单的梯形速度轮廓(如图1)。

利用大的时间缩放步参数dt2ms获得要求的毫米周期数,可参考下面的公式:时间步大小=1.0/(最大工具速度*毫米周期数)工具速度,时间步大小和结束时间必须在协调的参照系中选择。

如果所有的工具运动给定,可用下面的步骤设置模拟参数:已知:工具全部行程(mm):D最大工具速度(mm/ms):2.0速度轮廓: 2.0毫秒上升和2.0毫秒下降的梯形(如图1)选择:毫米周期数:ncpm计算:结束时间(ms): T=2.0+D/2速度数据点:(0.0,0.0)(2.0,2.0)(T-2.0,2.0) (T,0.0)时间步大小(ms): dt2ms=1/(2*ncpm)上面的运算提供速度轮廓数据点用于下面的工具运动部分。

hyperworks RADIOSS材料的二次开发实例介绍

hyperworks  RADIOSS材料的二次开发实例介绍

RADIOSS用户二次开发-用户材料模型(User Material LAW) –实例实例下面是一个用于实体单元弹性材料模型的二次开发的例子,这个例子来选自RADIOSS二次开发工具书( User’s Code Interface) 的2.3节。

在这个材料模型的二次开发中,首先需要的子程序有:⚫Starter子程序:LECM29⚫Engine子程序:SIGEPS29⚫两个子程序所求的是:单元应力σ我们的目的是通过上面两个子程序能够描述材料的力学性能。

那么对于这个简单的弹性材料的力学性能是描述下面的应力应变关系:σ=Dε这里σ和ε应力应变的张量,D是描述材料的张量。

如果σ和ε写出1X6矢量型式,那么上面的关系用矩阵表示为:()()11011221121202122xx xx yy yy zz zz xy xy yz yz zx zx E ννννννσενννσενσεσγνννσγσγν−⎡⎤⎢⎥−⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥−⎢⎥⎢⎥⎢⎥−⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥+−⎢⎥⎢⎥⎢⎥−⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎢⎥−⎢⎥⎣⎦σεDσ是我们所求的应力,ε是RADIOSS 内部其他程序计算后存储在EPSPXX ,EPSPYY ,EPSPZZ ,EPSPXY ,EPSPYZ ,EPSPZX 中的,在定义engine 子程序时可以在engine 中调用。

D 矩阵中我们可以看出需要杨氏模量E 和泊松比ν,那么这两个参数需要用户定义,所以需要用LECM29的starter 子程序读入,并通过内部参数UPARAM(*)传递给engine 子程序SIGEPS29,以用于计算D 矩阵。

这样就可求出单元应力σ。

最后计算声速c 用于在RADIOSS 其他内部程序中计算时间步长。

所以首先我们来编写starter 的子程序LECMnn (这里是 LECM29)。

在这个starter 子程序中读入材料密度,杨氏模量,泊松比。

ANSYSLS-DYNA二次开发及其在侵彻模拟中的应用

ANSYSLS-DYNA二次开发及其在侵彻模拟中的应用

ANSYS/LS-DYNA二次开发及其在侵彻模拟中的应用[范斌1,2马壮1,2范群波1,2,*金福生1祝威1][1.北京理工大学,100081 2.冲击环境材料技术国家级重点实验室,100081]*通讯作者Email:fanqunbo@[ 摘要] 针对利用商用软件ANSYS/LS-DYNA建立弹靶有限元模型及K文件修改的复杂性,运用编程语言C#进行了ANSYS/LS-DYNA的二次开发,建立了装甲防护领域的专业软件——装甲防护效能仿真评估平台。

该软件通过定制专用前后处理界面,实现了参数化的前处理过程,K文件自动提交计算过程,以及高效的后处理过程。

该软件针对无较多有限元分析经验的普通研究人员使用,可高效完成弹靶侵彻过程的模拟及装甲的抗弹性能的定量评估,避免了大量的重复性工作,提高了分析效率。

[ 关键词]二次开发;数值模拟;抗弹性能;侵彻Secondary Development of ANSYS/LS-DYNAand Application in Numerical Simulation of Penetration [FAN Bin1,2, MA Zhuang1,2, FAN Qun-bo1,2,*, JIN Fu-sheng1, ZHU Wei1 ][1.Beijing Institute of Technology, 100081 2.National Key Laboratory of Science andTechnology on Materials under Shock and Impact,100081][ Abstract ] Armor ballistic performance simulation evaluating platform, a professional software in armor ballistic performancing area, has been developed to deal with the complexity in building the finite element model and modifying the keyword file when using the commercial software ANSYS/LS-DYNA. Parametric pre-processing, keyword file automatically submitting, as well as efficient post-processing are achieved by designing special pre-processing and post-processing user interface. To those ordinary researchers lacking FE analysis experience, this software can efficiently simulate the penetrating process and quantificationally evaluate the ballistic performance,thus avoiding the vast repeatability and improving the analyzing efficiency.[ Keyword ] secondary development; numerical simulation; ballistic performance; penetration1 前言侵彻是指高速运动的弹体侵入甚至穿透目标靶板的过程,它是一种普遍存在的物理力学现象,研究弹体与靶板的相互作用过程,具有重要的民用价值和军事应用背景。

(完整word版)ansys中LS-DYNA 2D金属切削模拟步骤

(完整word版)ansys中LS-DYNA 2D金属切削模拟步骤

在ANSYS Launcher界面中,选择ANSYS Mechanical/LS-DYNA1、菜单过滤Main Menu→Preprocessor→LD-DYNA Explicit→OK2、设置文件名及分析标题Utility Menu→File→change Jobname→2D cutting→New log and error file :YES→OKUtility Menu→File→change Title→cutting analysis →OK3、选择单元类型Main menu→preprocessor→Element Type→Add/Edit/Delete→Add→2D solid 162→OK→options→选择const.stress ;Lagrangian→OK4、定义材料模型1)定义刀具材料模型Main menu→preprocessor→Material Props→Material Models→rigid material→输入:DENS:5.2e3 ;EX:4。

1e11 ;NUXY:0.3 ;选择“Y and Zdisps” ;“All rotations”→OK (2) 定义工件Johnson—cook材料模型Main menu→preprocessor→Material Props→Material Models→Gruneisen→Johnson-cook→输入: DENS:7.8e3 ;EX:2。

06e11 ;NUXY:0.3A:507;B:320;C:0.28;n;0。

064;m=1。

06D1:0。

15;D2:0。

72;D3:1。

66;D4:0.005;D5:--0。

845、创建几何模型(1)创建工件模型Main menu→preprocessor→Create→Areas→Rectangle→By Dimensions→输入:X1,X2:0,5;Y1,Y 2:0,3→OK(2)创建刀片模型Main menu→preprocessor→Create→Keypionts→In Active CS→依次输入:keypoint number:5,X、Y、Z :5.1,2.9,0;keypoint number:6,X、Y、Z :6,3。

LS-DYNA材料的二次开发

LS-DYNA材料的二次开发

character*(*) etype
dimension cm(*),eps(*),sig(*),hisv(*),d(6),s(6),t(6) C c character*(*) etype dimension cm(*),eps(*),sig(*),hisv(*),d(6),s(6),t(6) c g2 =cm(1)/(1.+cm(2)) g =.5*g2
ANSYS/LS-DYNA Training 2001
c c c c c
sig(1)=local x sig(2)=local y sig(3)=local z
stress stress stress
sig(4)=local xy stress sig(5)=local yz stress
c
c c c
sig(2)=0.0
sig(3)=0.0 sig(4)=sig(4)+gc*eps(4) sig(5)=0.0
sig(6)=sig(6)+gc*eps(6)
endif return end ANSYS/LS-DYNA Training 2001
对应的点K中的材料描述
*MAT_USER_DEFINED_MATERIAL_MODELS $ MID RO MT 41 LMC 4 NHV 0 IORTHO 0 IBULK 4 IG 3
ANSYS/LS-DYNA Training 2001
入口条件 参数传递
c c C c c c c c c cm(1)=young's modulus cm(2)=poisson's ratio cm(n)=用户在点K中给定的新本构参数 eps(1)= x应变增量 eps(2)= y应变增量 eps(3)= z应变增量 eps(4)= xy应变增量 eps(5)= yz应变增量 eps(6)= zx应变增量

LS-DYNA中导入CAD二维图形

LS-DYNA中导入CAD二维图形

Get新技能(1)LS-DYNA导入CAD文件——By 202 Corner T 各位已经十分熟知相关方法的师兄师姐和同窗请无视这篇分享。

总体来说,两大步骤,一在CAD中输出.sat文件,二在LS-DYNA中Import(导入).sat 文件。

详细步骤及注意事项举例说明:1 输出.sat文件1.1打开已有或新建CAD平面模型如图1(例子为一个装配图)图1 CAD模型图2 模型处理结果该模型为回转体,故考虑到DYNA中的Rotate功能,剔除一半的模型,为创建面域删除剖面线,处理结果如图2所示。

1.2在命令窗口输入“boundary”回车确定,弹出相应对话框,对话框里“对象类型”选择“面域”后点击拾取点,在CAD主窗口依次选择目标封闭面域,右键/回车确定。

(解除面域命令为“explode”)图3 生成面域1.3选中生成的全部目标面域,点击主窗口左上“A”标,依次点击“输出<其他格式”,弹出相应对话框,文件类型选择“.sat”保存即可。

图4 输出.sat文件2 导入.sat文件2.1 打开LS-DYNA,环境选择“ANSYS”,证书“ANSYS LS-DYNA”,创建指定路径,“Run”。

图5 打开DYNA2.2主窗口依次点击“File<Import<SAT…”,弹出相应对话框,在指定路径下找到第1大步保存的sat文件(前提是需要把目标sat文件保存或复制到指定路径下),点击“OK”,结果如图7所示,导入完成。

图6 导入sat 文件图7 导入结果注意事项1. CAD“boundary ”命令是在原线条上以封闭面域的形式重建了一个框,相邻框的重合边导入DYNA 后共用,但原有线条仍在,故导入成功后需要“Glue ”All Area 操作,将原有的线条与面域框线处理成同一条线,具体操作为:“Main Menu <Modeling 改为 “All Entities ”<Operate <Booleans <Glue <Area”,在弹出的对话框里点击“Pick All”即可。

ansys-lsdyna知识

一、关于dyna中材料失效准则的定义有些材料类型中有关于失效准则的定义,但是也有些材料类型没有失效准则的材料类型,这时需要额外的失效准则定义,与材料参数一块定义材料特性。

需要用到*mat_add_erosion关键字,对于这个关键字有几个需要注意的地方。

1、材料的通用性破坏准则:`材料通常为拉破坏或者剪切破坏,静水压是以压为正,拉为负,所以静水压破坏就是给出最小的承受压力,当然需要小于0(即拉力),如果静水压小于该值,则材料破坏。

相反,应力则是以压为负,拉为正,故最大主应力或最大等效应力或最大剪应力破坏等等都是给出最大的应力极限,当然大于0,如果拉应力大于该值,则材料破坏,无论是*MAT_ADD_EROSION,还是材料内部自带的破坏准则还是其他软件,都遵循以上准则。

注意:屈服不是失效。

2、单元失效模拟的功能与目的单元删除功能是为了克服有限元本身的缺陷而提出的一项方法,由于有限元本身是基于连续介质力学的,而在连续介质力学中,所研究的物体需要是连续的,既物质域在空间中连续。

在这样的理论假设框架下,单元本身是不会消失的。

然而在实际情况下,由于损伤断裂的存在,势必会使得一些单元消失或者完全的失效,所以为了能够模拟这种情况,DYNA 提供了单元失效功能。

破坏、失效、断裂,都是工程性的概念,它表示在达到某一准则后,结构、构件、或者构件中的某一部分,从结构中退出工作,不再影响整体结构的受力。

而从有限元概念上说,对上述机制的模拟,基本手段都是一样的,就是当满足某一指标(比如某个应变大小)后,将一个单元或者一个积分点的质量、刚度和应力、应变都设为零(或者非常接近与零),这样它在整体结构计算中就不再发挥作用,进而实现了退出工作机制的模拟。

所以,无论是把纤维模型中的某个纤维、或者分层壳模型中的某一层、或者实体模型中的某个积分点,或者结构中的某个单元,让其不再参与整体结构计算,都可以达到模拟破坏退出工作的目的。

而所谓单元生死技术,是上述基本概念在有限元程序中的一个“打包”应用。

LS-DYNA材料的二次开发


对应的点K中的材料描述
*MAT_USER_DEFINED_MATERIAL_MODELS $ MID RO MT 41 LMC 4 NHV 0 IORTHO 0 IBULK 4 IG 3
1 7.890E-09 $ IVECT 0 $ P1(E) IFAIL 0 P2(NU)
P3(G)
P4(K) 175.0E+3
每个积分步、主程序提供 如下这些已知量:
6个应变增量 可能涉及的历史变量hisv(n) 单元类型的字符串 当前时间 当前时间步长
ANSYS/LS-DYNA Training 2001
参数说明
•由主程序提供的所有参数基于单元坐标 系,计算得到的应力显然如此,之后由 主程序将其转换到整体坐标系 •所有的历史变量在初始调用子程序 时将置零 •能量计算完全由主程序完成
二次开发如何实现?
用户自定义的本构代替ls-dyna.f或dyn21.f中的相 关本构描述 LS-DYNA共提供10种 *user_defined_material_model,由这些输入数据为 自定义本构提供参数,完成分析 在程序中使用的自定义subroutine要和Jobname.K 中指定的相同 在一次分析中,用户最多可同时使用10种自定 义材料本构
c c c c c c c
dt1=current time step size capa=reduction factor for transverse shear etype: eq."brick" for solid elements eq."shell" for all shell elements eq."beam" for all beam elements

ls-dyna命令帮助手册(中文)[整理版]

Fini(退出四大模块,回到BEGIN层)/cle (清空内存,开始新的计算)1.定义参数、数组,并赋值.2./prep7(进入前处理)定义几何图形:关键点、线、面、体定义几个所关心的节点,以备后处理时调用节点号。

设材料线弹性、非线性特性设置单元类型及相应KEYOPT设置实常数设置网格划分,划分网格根据需要耦合某些节点自由度定义单元表3./solu加边界条件设置求解选项定义载荷步求解载荷步4./post1(通用后处理)5./post26 (时间历程后处理)6.PLOTCONTROL菜单命令7.参数化设计语言8.理论手册Fini(退出四大模块,回到BEGIN层)/cle (清空内存,开始新的计算)1 定义参数、数组,并赋值.u dim, par, type, imax, jmax, kmax, var1, vae2, var3 定义数组par: 数组名type:array 数组,如同fortran,下标最小号为1,可以多达三维(缺省)char 字符串组(每个元素最多8个字符)tableimax,jmax, kmax 各维的最大下标号var1,var2,var3 各维变量名,缺省为row,column,plane(当type为table时)2 /prep7(进入前处理)2.1 定义几何图形:关键点、线、面、体u csys,kcnkcn , 0 迪卡尔坐标系1 柱坐标2 球4 工作平面5 柱坐标系(以Y轴为轴心)n 已定义的局部坐标系u numstr, label, value设置以下项目编号的开始nodeelemkplineareavolu注意:vclear, aclear, lclear, kclear 将自动设置节点、单元开始号为最高号,这时如需要自定义起始号,重发numstru K, npt, x,y,z, 定义关键点Npt:关键点号,如果赋0,则分配给最小号u Kgen,itime,Np1,Np2,Ninc,Dx,Dy,Dz,kinc,noelem,imoveItime:拷贝份数Np1,Np2,Ninc:所选关键点Dx,Dy,Dz:偏移坐标Kinc:每份之间节点号增量noelem: “0” 如果附有节点及单元,则一起拷贝。

ls-dyna命令帮助手册(中文)

定义一个截面号,并初步定义截面类型
ID:截面号
TYPE: BEAM:定义此截面用于梁
SUBTYPE: RECT矩形
CSOLID:圆形实心截面
CTUBE:圆管
I:工字形
HREC:矩形空管
ASEC:任意截面
MESH:用户定义的划分网格
NAME: 8字符的截面名称(字母和数字组成)
REFINEKEY:网格细化程度:0~5(对于薄壁构件用此控制,对于实心截面用SECDATA控制)
为线指定网格尺寸
NL1:线号,如果为all,则指定所有选中线的网格。
Size:单元边长,(程序据size计算分割份数,自动取整到下一个整数)?
Angsiz:弧线时每单元跨过的度数?
Ndiv:分割份数
Space: “+”:最后尺寸比最先尺寸
“-“:中间尺寸比两端尺寸
free:由其他项控制尺寸
kforc 0:仅设置未定义的线,
Bottom产生单元且法线方向与所覆盖的单元相反,仅对梁或壳有效,对实体单元无效
Reverse将已产生单元反向
Shape:空与所覆盖单元形状相同
Tri产生三角形表面的目标元
注意:选中的单元是由所选节点决定的,而不是选单元,如同将压力加在节点上而不是单元上
Nummrg,label,toler, Gtoler,action,switch合并相同位置的item
注意:MAT,REAL,TYPE将一起拷贝,不是当前的MAT,REAL,TYPE
u A, P1, P2, ……… P18由关键点生成面
u AL, L1,L2, ……,L10由线生成面
面的法向由L1按右手法则决定,如果L1为负号,则反向。(线需在某一平面内坐标值固定的面内)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

支持的平台: 940.2 版
DEC NEC HP SGI IBM SUN
在UNIX平台提供如下资源:
Makefile 执行编译批处理文件(?)
object 文件(内含主程序) dyn21.f 用户定义本构子程序
950d 版
COMPAQ CRAY SGI IBM LINUX SUN
ANSYS/LS-DYNA Training 2001
ANSYS/LS-DYNA Training 2001
子程序举例
c****************************************************************** c| user-defined subroutine example |
c******************************************************************
二次开发如何实现?
用户自定义的本构代替ls-dyna.f或dyn21.f中的相 关本构描述 LS-DYNA共提供10种 *user_defined_material_model,由这些输入数据为 自定义本构提供参数,完成分析
在程序中使用的自定义subroutine要和Jobname.K 中指定的相同
ANSYS/LS-DYNA Training 2001
二次开发环境 LS-DYNA二次开发基于FORTRAN环境 在PC和UNIX平台下都需要进行连接编译, 生成新的求解器 Pc平台需安装 digital visual fortran 5.0或 Microsoft power station 4.0 提供的资源包括:
ANSYS/LS-DYNA Training 2001
入口条件 参数传递
c c C c c c c c c cm(1)=young's modulus cm(2)=poisson's ratio cm(n)=用户在点K中给定的新本构参数 eps(1)= x应变增量 eps(2)= y应变增量 eps(3)= z应变增量 eps(4)= xy应变增量 eps(5)= yz应变增量 eps(6)= zx应变增量
在一次分析中,用户最多可同时使用10种自定 义材料本构
ANSYS/LS-DYNA Training 2001
主程序及入口条件
c******************************************************************
c| LS-DYNA main program entry |
c****************************************************************** program lsdyna3d call dyna3d stop end c******************************************************************
Ls-dyna.f 用户自定义本构子程序 Ls-dyna.lib 静态连接库 Ls-dyna.dsp digital FORTRAN workspace 文件或MAKEFILE 用于 (包括主程序) Readme.txt 说明文件 ANSYS/LS-DYNA Training 2001
用户平台需安装 FORTRAN77
ANSYS/LS-DYNA Training 2001
c c c c c
sig(1)=local x sig(2)=local y sig(3)=local z
cm(2)=poisson's ratio
eps(1)=local x eps(2)=local y eps(3)=local z
strain increment strain increment strain increment
eps(4)=local xy strain increment eps(5)=local yz strain increment eps(6)=local zx strain increment
c c c c c c c c c … c
sig(1)= x应力 sig(2)=y应力 sig(3)=z应力 sig(4)=xy应力 sig(5)=yz应力 sig(6)=zx应力
hisv(1)=历史变量1 hisv(2)=历史变量2
c c c c c c c
单元类型 etype: eq.“brick” 实体单元 eq.“shell” 壳单元 eq.“beam” 梁单元
hisv(n)=历史变量n
time=当前时间 dt1=当前时间步长
c
capa=纵向剪切缩减因子
ANSYS/LS-DYNA Training 2001
用户在点Байду номын сангаас文件中 给定如下参数:
弹性模量 波松比 其它参数cm(n)
Ls-dyna.f或dyn21.f应 完成的工作:
求出6个应力增量
求出其它可能涉及的历 史变量hisv(n)
每个积分步、主程序提供 如下这些已知量:
6个应变增量 可能涉及的历史变量hisv(n)
单元类型的字符串
当前时间 当前时间步长
ANSYS/LS-DYNA Training 2001
参数说明
由主程序提供的所有参数基于单元坐标 系,计算得到的应力显然如此,之后由 主程序将其转换到整体坐标系 所有的历史变量在初始调用子程序 时将置零 能量计算完全由主程序完成
subroutine umat41 (cm,eps,sig,hisv,dt1,capa,etype,time) c isotropic elastic material (sample user subroutine)
c variables
c
c c c c c c c c
cm(1)=young's modulus
ANSYS/LS-DYNA专题培训
LS-DYNA材料的 二次开发
ANSYS/LS-DYNA Training 2001
内容
二次开发环境
主程序及入口条件 开发材料的本构、子程序及求解输入文件描述 编译、运行新的求解器 开发Kelvin_voigt粘弹材料 用新材料模式做大变形分析
● ● ● ● ● ●
相关文档
最新文档