LS-DYNA材料的二次开发汇总
- 格式:ppt
- 大小:69.00 KB
- 文档页数:22
利用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)上面的运算提供速度轮廓数据点用于下面的工具运动部分。
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 子程序中读入材料密度,杨氏模量,泊松比。
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 前言侵彻是指高速运动的弹体侵入甚至穿透目标靶板的过程,它是一种普遍存在的物理力学现象,研究弹体与靶板的相互作用过程,具有重要的民用价值和军事应用背景。
在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。
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”即可。
一、关于dyna中材料失效准则的定义有些材料类型中有关于失效准则的定义,但是也有些材料类型没有失效准则的材料类型,这时需要额外的失效准则定义,与材料参数一块定义材料特性。
需要用到*mat_add_erosion关键字,对于这个关键字有几个需要注意的地方。
1、材料的通用性破坏准则:`材料通常为拉破坏或者剪切破坏,静水压是以压为正,拉为负,所以静水压破坏就是给出最小的承受压力,当然需要小于0(即拉力),如果静水压小于该值,则材料破坏。
相反,应力则是以压为负,拉为正,故最大主应力或最大等效应力或最大剪应力破坏等等都是给出最大的应力极限,当然大于0,如果拉应力大于该值,则材料破坏,无论是*MAT_ADD_EROSION,还是材料内部自带的破坏准则还是其他软件,都遵循以上准则。
注意:屈服不是失效。
2、单元失效模拟的功能与目的单元删除功能是为了克服有限元本身的缺陷而提出的一项方法,由于有限元本身是基于连续介质力学的,而在连续介质力学中,所研究的物体需要是连续的,既物质域在空间中连续。
在这样的理论假设框架下,单元本身是不会消失的。
然而在实际情况下,由于损伤断裂的存在,势必会使得一些单元消失或者完全的失效,所以为了能够模拟这种情况,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” 如果附有节点及单元,则一起拷贝。