LS-DYNA使用指南中文版本 下载本文

第一章引言

ANSYS/LS-DYNA将显式有限元程序LS-DYNA和ANSYS程序强大的前后处理结合起来。用LS-DYNA的显式算法能快速求解瞬时大变形动力学、大变形和多重非线性准静态问题以及复杂的接触碰撞问题。使用本程序,可以用ANSYS建立模型,用LS-DYNA做显式求解,然后用标准的ANSYS后处理来观看结果。也可以在ANSYS和ANSYS-LS-DYNA之间传递几何信息和结果信息以执行连续的隐式-显式/显式-隐式分析,如坠落实验、回弹、及其它需要此类分析的应用。

1.1 显式动态分析求解步骤概述

显式动态分析求解过程与ANSYS程序中其他分析过程类似,主要由三个步骤组成: 1:建立模型(用PREP7前处理器) 2:加载并求解(用SOLUTION处理器) 3:查看结果(用POST1和POST26后处理器)

本手册主要讲述了ANSYS/LS-DYNA显式动态分析过程的独特过程和概念。没有详细论述上面的三个步骤。如果熟悉ANSYS程序,已经知道怎样执行这些步骤,那么本手册将提供执行显式动态分析所需的其他信息。如果从未用过ANSYS,就需通过以下两本手册了解基本的分析求解过程:

·ANSYS Basic Analysis Guide ·ANSYS Modeling and Meshing Guide

使用ANSYS/LS-DYNA时,我们建议用户使用程序提供的缺省设置。多数情况下,这些设置适合于所要求解的问题。

1.2 显式动态分析采用的命令

在显式动态分析中,可以使用与其它ANSYS分析相同的命令来建立模型、执行求解。同样,也可以采用ANSYS图形用户界面(GUI)中类似的选项来建模和求解。

然而,在显式动态分析中有一些独特的命令,如下: EDADAPT :激活自适应网格

EDASMP :创建部件集合

EDBOUND :定义一个滑移或循环对称界面 EDBVIS :指定体积粘性系数 EDBX :创建接触定义中使用的箱形体 EDCADAPT :指定自适应网格控制 EDCGEN :指定接触参数 EDCLIST :列出接触实体定义

EDCMORE :为给定的接触指定附加接触参数 EDCNSTR :定义各种约束 EDCONTACT :指定接触面控制 EDCPU :指定CPU时间限制 EDCRB :合并两个刚体 EDCSC :定义是否使用子循环 EDCTS :定义质量缩放因子 EDCURVE :定义数据曲线 EDDAMP :定义系统阻尼

EDDC :删除或杀死/重激活接触实体定义

EDDRELAX :进行有预载荷几何模型的初始化或显式分析的动力松弛 EDDUMP :指定重启动文件的输出频率(d3dump) EDENERGY :定义能耗控制 EDFPLOT :指定载荷标记绘图

EDHGLS :定义沙漏系数 EDHIST :定义时间历程输出 EDHTIME :定义时间历程输出间隔 EDINT :定义输出积分点的数目

EDIS :定义完全重启动分析的应力初始化 EDIPART :定义刚体惯性 EDLCS :定义局部坐标系 EDLOAD :定义载荷 EDMP :定义材料特性 EDNB :定义无反射边界

EDNDTSD :清除噪声数据提供数据的图形化表示 EDNROT :应用旋转坐标节点约束 EDOPT :定义输出类型,ANSYS或LS-DYNA EDOUT :定义LS-DYNA ASCII输出文件 EDPART :创建,更新,列出部件 EDPC :选择、显示接触实体 EDPL :绘制时间载荷曲线

EDPVEL :在部件或部件集合上施加初始速度 EDRC :指定刚体/变形体转换开关控制 EDRD :刚体和变形体之间的相互转换

EDREAD :把LS-DYNA的ASCII输出文件读入到POST26的变量中

EDRI :为变形体转换成刚体时产生的刚体定义惯性特性 EDRST :定义输出RST文件的时间间隔 EDSHELL :定义壳单元的计算控制

EDSOLV :把“显式动态分析”作为下一个状态主题 EDSP :定义接触实体的小穿透检查

EDSTART :定义分析状态(新分析或是重启动分析) EDTERM :定义中断标准

EDTP :按照时间步长大小绘制单元 EDVEL :给节点或节点组元施加初始速度 EDWELD :定义无质量焊点或一般焊点

EDWRITE :将显式动态输入写成LS-DYNA输入文件 PARTSEL :选择部件集合

RIMPORT :把一个显式分析得到的初始应力输入到ANSYS REXPORT :把一个隐式分析得到的位移输出到ANSYS/LS-DYNA UPGEOM :相加以前分析得到的位移,更新几何模型为变形构型

关于ANSYS命令按字母顺序排列的详细资料(包括每条命令的特定路径),请参阅《ANSYS Commands Reference》。

1.3 本手册使用指南

本手册包含过程和参考信息,可从前到后选择性阅读。然而,选择与规划和进行显式动态分析求解过程相对应的顺序阅读更有帮助。

在建模之前,必须确定最能代表物理系统的单元类型和材料模型,下面几章将为你提供相关的一些基础知识: 第二章,单元

第七章,材料模型

选择了合适的单元类型和材料模型后,就可以建模了。建模的典型方面如下所示: 第三章,建模 第六章,接触表面 第八章,刚体 第四章,加载

与求解和后处理有关的特征如下: 第五章,求解特性 第十二章,后处理

有些高级功能在一个分析中可能涉及不到,但在某些情况下可能用到,如下所示: 第九章,沙漏 第十章,质量缩放 第十一章,子循环 第十三章,重启动

第十四章,显-隐式连续求解 第十五章,隐-显式连续求解

最后,附录中还包含了有关下列主题的有关信息: 附录A,隐、显式方法的比较 附录B,材料模型样例

附录C,ANSYS/LS-DYNA和LS-DYNA命令变换 1.4 何处能找到显式动态例题

The Explicit Dynamics Tutorial描述了一个典型的显式动态分析例题。 1.5 其它信息

对于显式动态分析的详细资料,请参阅《ANSYS Structural Analysis Guide》中的第十四章。对于显式动态分析单元的详细资料,请参阅《ANSYS Element Reference》;至于详细的理论信息,请参阅Livermore Software Technology Corporation的《LS-DYNA Theoretical Manual》。

第二章 单元

在显式动态分析中可以使用下列单元: ·LINK160杆 ·BEAM161梁 ·PLANE162平面 ·SHELL163壳 ·SOLID164实体 ·COMBI165弹簧阻尼 ·MASS166质量 ·LINK167仅拉伸杆

本章将概括介绍各种单元特性,并列出各种单元能够使用的材料类型。

除了PLANE162之外,以上讲述的显式动态单元都是三维的,缺省时为缩减积分(注意:对于质量单元或杆单元缩减积分不是缺省值)缩减积分意味着单元计算过程中积分点数比精确积分所要求的积分点数少。因此,实体单元和壳体单元的缺省算法采用单点积分。当然,这两种单元也可以采用全积分算法。详细信息参见第九章沙漏,也可参见《LS-DYNA Theoretical Manual》。

这些单元采用线性位移函数;不能使用二次位移函数的高阶单元。因此,显式动态单元中不能使用附加形状函数,中节点或P-单元。线位移函数和单积分点的显式动态单元能很好地用于大变形和材料失效等非线性问题。

值得注意的是,显单元不直接和材料性能相联系。例如,SOLID164单元可支持20多种材料模型,其中包括弹性,塑性,橡胶,泡沫模型等。如果没有特别指出的话(参见第六章,接触表面),所有单元所需的最少材料参数为密度,泊松比,弹性模量。参看第七章材料模型,可以得到显式动态分析中所用材料特性的详细资料。也可参看《ANSYS Element Reference》,它对每种单元作了详细的描述,包括单元的输入输出特性。

2.1 实体单元和壳单元 2.1.1 SOLID164

SOLID164单元是一种8节点实体单元。缺省时,它应用缩减(单点)积分和粘性沙漏控制以得到较快的单元算法。单点积分的优点是省时,并且适用于大变形的情况下。当然,也可以用多点积分实体单元算法(KEYOPT(1)=2);关于SOLID164的详细描述,请参见《ANSYS Element Reference》和《LS-DYNA Theoretical Manual》中的§3.3节。如果担心沙漏现象,比如泡沫材料,可采用多点积分算法,因为它无需沙漏控制;计算结果要好一些。但要多花大约4倍的CPU时间。

楔形、锥型和四面体单元是六面体单元的退化产物(例如,一些节点是重复的)。这些形状在弯曲时经常很僵硬,有些情况下还有可能产生问题。因此,应尽量避免使用这些退化形状的单元。

对于实体单元可采用下列材料模型: ·各向同性弹性 ·正交各向异性弹性 ·各向异性弹性 ·双线性随动强化 ·塑性随动强化 ·粘弹性 ·Blatz-ko橡胶

·双线性各向同性 ·幂律塑性 ·应变率相关塑性 ·复合材料破坏 ·混凝土破坏 ·地表材料 ·分段线性塑性 ·Honeycomb蜂窝材料 ·Mooney-Rivlin橡胶 ·Barlat各向异性塑性 ·弹塑性流体动力 ·闭合多孔泡沫 ·低密度泡沫 ·粘性泡沫 ·可压缩泡沫 ·应变率相关幂律塑性 ·Johnson-Cook塑性 ·空材料

·Zerilli-Armstrong ·Bamman ·Steinberg

·弹性流体 2.1.2 SHELL163

SHELL163单元有12中不同的算法。用KEYOPT(1)来定义所选的算法。和实体单元一样,积分点的个数直接影响着CPU时间。因此,对于一般的分析而言,建议使用缺省积分点个数。以下将概述SHELL163单元的不同算法:

2.1.3 通用壳单元算法

·Belytschko-Tsay(KEYOPT(1)=0或2)—缺省 —速度快,建议在多数分析中使用 —使用单点积分

—单元过度翘曲时不要使用

·Belytschko-Wong-Chiang(KEYOPT(1)=10) —比Belytschko-Tsay慢25% —使用单点积分

—对翘曲情况一把可得到正确结果 ·Belytschko-Leviathan(KEYOPT(1)=8) —比Belytschko-Tsay慢40% —使用单点积分

—自动含有物理上的沙漏控制

·Hughes-Liu(KEYOPT(1)=1,6,7,11)有4种不同的算法,它可以将节点偏离单元的中面。

KEYOPT(1)=1一般型Hughes-Liu,使用单点积分,比Belytschko-Tsay慢250%。 KEYOPT(1)=11快速Hughes-Liu,使用单点积分,比Belytschko-Tsay慢150%。

KEYOPT(1)=6S/R Hughes-Liu,有4个积分点,没有沙漏,比Belytschko-Tsay慢

20倍。

KEYOPT(1)=7 S/R快速Hughes-Liu,有4个积分点,没有沙漏,比Belytschko-Tsay

慢8.8倍。如果分析中沙漏带来麻烦的话,建议使用此算法。

KEYOPT(1)=12全积分Belytschko-Tsay壳。在平面内有四个积分点,无需沙漏控制。通过假设的横向剪切应变可以矫正剪切锁定。但是它比单点Belytschko-Tsay慢2.5倍,如果分析中担心沙漏的话,建议使用此方法。

2.1.4 薄膜单元算法

·Belytschko-Tsay薄膜(KEYOPT(1)=5) —速度快,建议在大多数薄膜分析中使用 —缩减(单点)积分

—很好地用于关心起皱的纺织品(例如,大的平面压缩应力破坏较薄的纤维单元) ·全积分Belytschko-Tsay薄膜(KEYOPT(1)=9) —明显的比通用薄膜单元慢(KEYOPT(1)=5) —面内有四个积分点 —无沙漏

2.1.5 三角型薄壳单元算法

·C 三角型薄壳(KEYOPT(1)=4)单元 —基于Mindlin-Reissner平板理论

—该构型相当僵硬,因此不建议用它来整体划分网格 —使用单点积分

·BCIZ三角型薄壳(KEYOPT(1)=3)单元 —基于Kirchhoff平板理论

0

—比C 三角型薄壳单元慢 —使用单点积分

ANSYS/LS-DYNA用户手册中有关SHELL163的描述对可用的壳单元算法作了完整的介绍。 退化的四边形单元在横向剪切时易发生锁死。因此,应使用C 三角型薄壳单元(基于Belytschko和其合作者的工作),如果在同一种材料中把单元分类标记( EDSHELL 命令的ITRST域)设置为1(缺省值),就可混合使用四边形和三角形单元。对于壳单元可使用以下材料模型:

·各向异性弹性 ·正交各向异性弹性 ·双线性随动强化 ·塑性随动强化 ·Blatz-Ko橡胶 ·双线性各向同性 ·幂律塑性 ·应变率相关塑性 ·复合材料破坏 ·分段线性塑性 ·Mooney-Rivlin橡胶 ·Barlat各向异性塑性 ·3参数Barlat塑性 ·横向各向异性弹塑性 ·应变率相关幂律塑性 ·横向各向异性FLD

0

0

·Johnson-Cook塑性 ·Bamman

注意 --当SHELL163单元使用Mooney-Rivlin橡胶材料模型时,LS-DYNA编码将自动使用Belytschko-Tsay算法的完全拉格朗日修正法来代替KEYOPT(1)指定的算法。程序选择的算法要求满足超弹材料的特殊需要。

图2-1积分点

所有的壳单元算法沿厚度方向都可以有任意多个积分点。典型地,对于弹性材料沿厚度方向需要2个积分点,而对于塑性材料则需要3个或更多的积分点。沿厚度方向的积分点个数由第二实常数来控制:

R ,NEST,,R2,这里R2为积分点的个数(NIP)。

壳单元使用三维平面应力本构子程序修正应力张量,使垂直于壳单元中面的正应力分量为零。积分点位于壳单元的质心垂线上,见图2-1。

开始时每个节点的厚度方向与单元表面都是正交的但它们随节点旋转。计算弯矩和平面力需要厚度方向的积分点。其应变呈线性分布,而应力分布要复杂得多,它和材料性质有关。

对于线弹性材料两个积分点就足够了,而非线性材料则需要更多的积分点,输出的应力属于最外层的积分点,而不是表面上的(尽管后处理的术语是指顶面和底面),因此在分析结果时需要注意,对于弹性材料,应力可以外推到表面上。对于非线性材料来说,通常是选择沿厚度方向的四五个节点而忽略其不精确性(例如,忽略表面和外部积分点之间的应力差)。高斯积分法最外层积分点的位置由下表给出:

中面 0 两点 三点 最外积分点 四点 五点 外表面 0.5774 0.7746 0.8611 0.9062 1.000 注意 --在使用线弹性材料时,能够预先准确定义这些积分准则,但是通常在ANSYA/LS-DYNA中无法做到,由于模拟大多涉及非线性行为。

另外,对于全积分单元来说,其输出应力是同一层内2×2积分点的应力平均值。 2.1.6 PLANE162

PLANE162单元是一个二维,4节点的实体单元,它既可以用作平面(X-Y平面)单元,也可以用作轴对称单元(Y轴对称)。KEYOPT(3)用来指定单元的平面应力、轴对称和平面应变选项。对于轴对称单元可以利用KEYOPT(2)指定面积或体积加权选项。PLANE162典型情况下为四节点单元。当然也可以用三节点三角形选项,但是由于它太僵硬,所以不推荐使用它。这个单元没有实常数。重要的是要注意到含有PLANE162单元的模型必须仅包含这种单元。ANSYS/LS-DYNA中不允许有二维和三维单元混合使用的有限元模型。

这种单元可用的材料模型与KEYOPT(3)的设置有关。对KEYOPT(3)=0,1,2(平面应力、平面应变或轴对称),用户可以选择下列材料模型:

·各向同性弹性 ·正交各向异性弹性 ·Blatz-ko橡胶 ·Mooney-Rivlin橡胶 ·粘弹性 ·双线性各向同性 ·双线性随动强化 ·塑性随动强化

·幂率塑性

·应变率相关幂率塑性 ·应变率相关塑性 ·分段线性塑性 ·复合材料破坏 ·Johnson-Cook塑性 ·Bamman

对平面应力选项(KEYOPT(3)=0),可以选择下列材料: ·3参数Barlat塑性 ·Barlat各向异性塑性 ·横向正交各向异性弹塑性 ·横向正交异性FLD

对轴对称和平面应变选项(KEYOPT(3)=1或2),可以选用下列材料: ·正交各向异性弹性 ·弹塑性流体动力 ·闭合多孔泡沫 ·低密度泡沫 ·可压缩泡沫 ·Honeycomb蜂窝材料 ·空材料

·Zerilli-Armstrong

·Steinberg ·弹性流体

2.2 梁单元和杆单元 2.2.1 BEAM161

BEAM161有两种基本算法:Hughes-Liu和Belytschko-Schwer。因为BEAM161不产生任何应变,所以它最适合于刚体旋转。必须用三个节点来定义单元;在每个端点处有一节点,同时需要有一定向节点。对于这两种算法来说,可用KEYOPT(4)和KEYOPT(5)来定义几种横截面。通常,对于2×2高斯积分点,BEAM161具有高效和耐用性。可用KEYOPT(2)来定义不同积分算法。

Hughes-Liu梁单元(缺省值)是一个传统积分单元,它可以采用梁单元中间跨度的一组积分点来模拟矩形和圆形横截面。另外,用户也可以定义一个横截面积分规则来模拟任意的横截面。梁单元沿其长度方向能有效地产生一个不变力矩,因此,与实体单元和壳体单元一样,网格必须合理划分以保证精度。由于积分点的位置,只在单元中心才可检验屈服,因此,由于必须在夹持单元的中心处产生全塑性力矩而不是单元外边根部,悬臂梁模型将在一个稍高的力作用下产生屈服。

Belytschko-Schwer.梁单元(KEYOPT(1)=2,4,5)是一个显式算法,可以产生一个沿长度方向呈线性分布的力矩。这种单元有“正确”的弹性应力并且在其末端可检验屈服。例如:当一个悬臂梁在端部静态加载时,可用一个单元来精确地表达弹性和塑性状态。如同Hughes-Liu梁单元,质量堆积到节点上,因此,在动态问题中必须要细分网格,因为此时正确的质量分布是很重要的。

对于梁单元,可使用下列材料模型:(对于某些算法有些限制) ·各向同性弹性 ·双线性随动强化 ·塑性随动强化 ·粘弹性 ·幂率塑性 ·分段线性塑性

2.2.2 LINK160

LINK160桁架单元与Belytschko-Schwer梁单元很相似,但只能承受轴向载荷。这种类型单元支持直杆,在两端轴向加载,材料性质均匀。对于这种单元可使用的材料类型为各向同性弹性,塑性随动强化(率相关)和双线性动力。

2.2.3 LINK167

LINK167单元是仅能拉伸的杆,可以用于模拟索。它与弹性单元类似,由用户直接输入力与变形的关系。本单元类型需要用 EDMP 命令来定义索单元选项(参看 EDMP 命令概述)。

2.3 离散单元

2.3.1 COMBI165 弹簧-阻尼单元

弹簧单元因位移产生一个力;也就是说改变单元的长度产生力。力沿单元轴向加载。例如,拉力在节点1上是沿轴的正方向,而对节点2是沿轴的负方向。缺省时,单元轴的方向就是从节点1到节点2。当单元旋转时,力作用方向线也将随之而旋转。

阻尼单元可认为是弹簧单元的一种:可模拟线性粘性和非线性粘性阻尼。

也可使用旋转(扭转)弹簧和阻尼单元,这些可通过KEYOPT(1)来选择,其他输入部分和平移弹簧一样;给定的力-位移关系可认为是力矩-转角(为弧度单位)关系,力矩施加方向沿单元的轴向方向(顺时针为正)。旋转弹簧单元只影响其节点的旋转自由度—它们并不把节点铰接在一起。

COMBI165单元可和其它显式单元混合使用。然而,由于它没有质量,在分析中不能只有COMBI165一种类型单元,为了表达一个弹簧/质量系统,必须定义MASS166单元来加上质量。

对于同一个COMBI165单元不能同时定义弹簧和阻尼特性。但是,可以分别定义使用同样节点的弹簧和阻尼单元(也就是说,可以重叠两个COMBI165单元)。

对于COMBI165单元可以使用下列材料模型: ·线弹性弹簧 ·线粘性阻尼 ·弹性塑料弹簧

·非线性弹性弹簧 ·非线性粘性阻尼 ·通用非线性弹簧 ·麦克斯韦粘弹性弹簧 ·无弹性拉伸或仅压缩弹簧

使用COMBI165单元时,应该给每一零件分别指定唯一的实常数,单元类型和材料特性(分别是 R , ET 和 TB 命令)从而保证每个零件都分别定义。

2.3.2 MASS166

质量单元由一个单节点和一个质量值定义(力×时间 /长度)。质量单元通常用于模拟一个结构的实际质量特性,而没有把大量实体单元和壳体单元包括进去。例如,在汽车碰撞分析中,质量单元可以模拟发动机部分,主要感兴趣的不是它的变形性质。采用质量单元将减少分析所需的单元数目,因而减少求解所需的计算时间。

用户也可用MASS166单元来定义一个节点的集中转动惯量。如使用这一选项,可在MASS166单元定义中设置KEYOPT(1)=1并且通过单元实常数输入六个惯性矩值(IXX,IXY,IXZ,IYY,IYZ,IZZ)。这个选项不能输入质量值;所以,必须在同一个节点定义第二个质量单元来说明质量(KEYOPT(1)=0)。

2.4 一般单元特性

以下几种单元可被定义为刚性体:LINK160,BEAM161,PLANE162,SHELL163,SOLID164和LINK167。在第八章,将详细讲述刚性体。

每个实体单元,壳单元和梁单元的质量都平均分配给单元的节点。在壳单元和梁单元中,每个节点还将附加一个转动惯量;只采用一个单值,它的作用就是让质量围绕节点呈球形分布。

第三章建模

显式动态分析的第一步就是创建模型,使它能够表达进行分析的物理系统。用PREP7前处理器来建立模型。

2

如果通过GUI路径进行分析的话,那么事先设置参考选项(Main Menu>Preference)为“LS-DYNA Explicit”是很重要的。这样,菜单就被完全过滤成为显式动态的输入选项。(值得注意的是,Preference选项置为“LS-DYNAExplicit”并没有激活LS-DYNA求解。要做到这一点,就必须定义一个显式单元类型,例如,SHELL163。

一旦设置好分析选项Preference,就可以像通常分析任何问题一样建立模型: ·定义单元类型和实常数 ·定义材料模型 ·定义几何模型 ·划分网格 ·定义接触表面

如果以前从未用过任何ANSYS产品,就应该参看一下《ANSYS Basic Procedure Guide》和

《ANSYS Modeling and Meshing Guide》,以了解ANSYS建模的一般过程。 3.1 定义单元类型和实常数

在第二章中已简要地讲述了显式动态分析的单元类型,有关每种显式单元的详细描述可在《ANSYS Element Reference》中找到,所以建议用户在确定使用哪种单元类型建模前仔细阅读一下有关内容。

一旦选择好能代表物理系统的单元类型,就可以用 ET 命令来定义单元类型(在GUI中:Main Menu>Preprocessor>Element Type)。

在《ANSYS Element Reference》中列出了与每种单元相对应的所有实常数。因此必须确定模型中所用每种单元的实常数,然后可以用 R 命令来定义实常数(在GUI中:Main Menu>Preprocessor>Real constants)。

3.2 定义材料特性

在显式动态分析中有很多可使用的材料类型,应该参看一下《ANSYS Element Reference》,以确定特定的单元类型所用的材料模型。也可参看本手册的第七章,该章对所用材料模型作了详细的描述。

一旦确定了所用的材料模型,就可以定义所有相关的特性(如第七章所描述的)。为了用批处理或命令流来定义这些,可以使用 MP , TB 和 TBDATA 命令(某些情况下,可用 EDMP 命令)。在GUI路径中,材料模型通过下列路径来定义:

Main Menu>Preprocessor>Material Props>Material Models

更详细的信息请参看7.1 Defining Explicit Dynamics Material Models. 在选择了合适的材料模型之后,就可以定义模型所需的特性。

定义和整体坐标不一致的各向正交异性模型,必须先用 EDLCS 命令定义局部坐标系。(菜单路径Main Menu>Preprocessor>Material Props>Local CS>Create Local CS)。

对于一些材料模型,还需用 EDCURVE 命令定义与材料相关的数据曲线(例如,应力-应变曲线)。( EDCURVE 的GUI路径表示法为Main Menu>Preprocessor>Material Props>Curve Options)。

3.3 定义几何模型

建立几何模型的最简单方法就是采用ANSYS程序中的实体建模功能。关于实体建模功能的详细信息,请参看《ANSYS Modeling and Meshing Guide》。

对于简单模型(例如,仅线单元),就可以使用直接建模法。用这种方法,可以直接定义模型的节点和单元。详细信息请参看《ANSYS Modeling and Meshing Guide》。

3.4 网格划分

建立实体模型后,就可以用节点和单元对其进行网格划分。《ANSYS Modeling and Meshing Guide》中的Generating the Mesh详细描述了划分网格的步骤。如果对ANSYS网格不太熟悉,在划分显式动态模型之前应该先阅读该章内容,由于该章已详细讨论过了,在此只讨论以下几点:

·定义单元属性 ·定义网格划分控制 ·生成网格

定义单元属性,就是要事先指定单元类型,实常数和材料特性来用于下一步的网格划分。使用 TYPE , MAT , REAL 命令或菜单路径:

Main Menu>Preprocessor>-Attributes-Define>Default Attribs Main Menu>Preprocessor>-Modeling-create>Elements>Elem Attributes

网格控制就是指定划分网格时单元的大小和形状。在ANSYS程序中有许多种控制方法(参考《ANSYS Modeling and Meshing Guide》),在GUI中,菜单路径为:Main Menu>Preprocessor>Mesh Tool

在选择网格控制时要注意以下几点:

·尽量避免退化的实体和壳体单元(例如,三角型壳体和四面体实体),相对于四边形和六面体来说它们太刚硬,并且精度不高。

· 单元的大小尽量均匀(例如:避免产生相对较小的单元面积)单元大小之间差别很大可能会导致很小的时间步长,较长的运行时间。如果划分特殊的几何模型需要相对较小的单元,那么可以用质量比例来增大最小时间步长。(参看第十章, Mass Scaling ).

·尽量不要使用SmartSizing方法进行单元控制( SMARTSIZE 命令),因为它可能在网格中单元的大小上产生很大的差别。应使用 ESIZE 和相关的命令来控制单元大小。

·尽量避免可能产生沙漏的坏单元形状。

·当使用降阶单元算法或者单元可能遭受沙漏变形时,不要使用粗网格划分, ·如果有沙漏现象的话,尽量在部分模型或整个模型中使用全积分单元。

给定网格控制后,就可以用相应的命令进行网格划分(例如: AMESH,VMESH )在GUI路径中,菜单路径为Main Menu>Preprocessor>-Meshing-Mesh( 或用上面提到的Mesh Tool).

3.5 定义接触面

显式动态分析常常涉及到表面之间的接触。本手册的第六章 Contact Surface 讲述了接触类型和定义接触的步骤。这里只给出简要步骤。

定义接触包括四个步骤:

·定义能很好地表达物理模型的接触类型( EDCGEN 命令) ·定义接触表面( CM , EDPART , EDASMP 和 EDCGEN 命令)

·定义摩擦系数参数( EDCGEN )

·为选定的接触类型定义附加数据( EDCGEN 和 EDCONTACT )

如果不使用自动接触,那么可以用 CM 命令把表面上的节点组成为一个COMPONENT来定义接触面。一旦生成了COMPONENT,就可以用 EDCGEN 命令来定义所需表面间的接触(例如,节点部件)。也可以用 EDCGEN 命令来定义接触类型。对于单面接触算法,ANSYS/LS-DYNA定义接触体的外表面。

注意 --接触表面也可以用PART号或一个部件集合来识别(用 EDASMP 而不用节点部件。)部件和集合的定义将在这章的后面讨论。

EDCGEN 命令也可以用来指定摩擦系数参数以及与不同接触类型相对应的输入参数。另一个命令EDCONTACT可以定义多种接触控制例如接触穿透检测和滑移表面罚函数等。(菜单路径为:Main Menu>Preprocessor>LS-DYNA Options>Contact.)

3.6 建模的一般准则

当创建显式动态模型时,应考虑下述基本准则:

·在模型中使用刚性体来代表相对刚硬,没有屈服的部分。使用刚性体可以简化求解,缩短求解时间。

·对材料性能使用一些符合实际的值。例如,不要用很高的不切实际的弹性模量来表达刚性体,对于壳单元不要使用不切实际的厚度值。

·考虑使用阻尼( EDDAMP 命令)以消除结构响应中的不真实的振荡,详细信息参见《ANSYS Commands Reference》。

·如果已经用常规ANSYS程序进行了二维的动态分析,应考虑把模型扩展为三维模型,并用ANSYS/LS-DYNA进行分析。那么就可以在较短的时间内得到更精确的结果。

· 注意 ANSYS程序中的子模型和子结构特性不能在ANSYS/LS-DYNA中使用。 3.7 PART 的定义

具有相同单元类型、实常数和材料号的一组单元被指定为一个PART并给定一个PART 号。有许多ANSYS/LS-DYNA命令和PART ID有关。(例如, EDCGEN,EDDC,EDLOAD,EDDAMP , EDCRB 和 EDREAD ),在ANSYS/LS-DYAN程序对模型进行求解时,自动生成PART 号并且写入LS-DYNA输入文件 Jobname.K ,它可以用 EDPART 命令建立,更新,列表表示。

从顺序编排所选单元建立PART 号。如果在单元编排中改变单元类型、实常数和材料号中的任何一个,将给那组单元定义下一个PART 号。例如,前十个单元有单元类型1、实常数2、材料号3,那么这10个单元将给定PART号为1。如果下面100个单元有单元类型1、实常数1、材料号2,那么这些单元将给定PART号为2,等等,依此类推。

用 EDPART 命令中的CREATE/UPDATE/LIST选项可以创建、更新、列出PART表。如果执行 SOLVE 命令或执行带ANSYS/LSDYNA/BOTH选项的 EDWRITE 命令,则PART表将被建立并永久保存。如果PART表已经存在,则以后的命令只能修改这个表而不能覆盖它。关于 EDWRITE 命令的更多信息,参见《ANSYS Commands Reference》中有关这个命令的描述。

EDPART ,CREATE可以创建新的PART号。可以用 EDPART ,LIST命令列表表示这些PART。这个表显示了在建立或修改时PART的状态。( EDPART ,CREATE)如果 EDPART ,CREATE命令重复使用,则PART表被覆盖。为了得到在修改或增加模型后的实际PART表,执行 EDPART ,UPDATE命令。它可以扩展已经存在的PART表而不用改变它的顺序,并且可以向已经存在的由相同的单元类型、实常数和材料号构成的部件中增加单元。单元类型、实常数和材料号相同的任何PART未被任何所选择单元参考时,则该PART不可用。很明显的它将在PART表的第五列上为零值。如果预先定义的PART相关命令与一个无用的PART有关,那么执行 SOLVE 命令或 EDWRITE ,ANSYS/LSDYNA/BOTH命令时将有一个警告。

下例显示了15个单元的模型,带2种材料(MAT),3种单元类型(TYPE)和3种实常数(REAL)。一个 ELIST 命令列出下列单元表:

ELEM MAT TYP REL ESY TSHA NODES 1 2 3 4 5 6 7 8 9 11 12 13 14 15 1 1 1 1 1 1 1 2 2 2 2 1 1 1 1 1 1 1 1 2 2 2 2 3 3 3 3 3 1 1 1 1 1 3 3 3 3 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 3 13 23 33 43 53 63 73 83 4 14 24 34 44 54 64 74 84 5 15 25 35 45 55 65 75 85 6 16 26 36 46 56 66 76 86 7 17 27 37 47 57 67 77 87 8 18 28 38 48 58 68 78 88 11 12 21 22 31 32 41 42 51 52 61 62 71 72 81 82 101 102 103 104 105 106 107 108 111 112 113 114 115 116 117 118 121 122 123 124 125 126 127 128 131 132 133 134 135 136 137 138 141 142 143 144 145 146 147 148 单元1到5有MAT=TYPE=REAL=1生成PART1,单元6到7有MAT=1,TYPE=2和REAL=3生成PART2。单元8到9有MAT=2,TYPE=2和REAL=3生成PART3。

单元10有MAT=TYPE=REAL=2,但是在生成PART表后被删除了( EDPART ,CREATE)。因此,只剩下了PART4,但是它被标识为无用值(在PART表中USED一列为0)。

单元11到12有MAT=2,TYPE=3和REAL=2生成PART5。单元13到15有MAT=1,TYPE=3和REAL=2生成PART6。这一PART表如下所示( EDPART ,LIST):

PART 1 2 3 4 5 6 MAT 1 1 2 2 2 1 TYP 1 2 2 2 3 3 REAL 1 3 3 2 2 2 USED 1 1 1 0 1 1 注意 --对于这个例子,执行 EDPART ,UPDATE将不会影响PART表的状态。但是执行 EDPART ,CREATE将会创建一个仅有5个部件的PART表。PART5将变成PART4,PART6将变成PART5。这将使以前基于PART定义的载荷,接触特性等失效。

建议采用下列过程:

a.如通常那样建模,直到PART的相关命令给定一个PART号。

b.创建PART表( EDPART ,CREATE)并显示它( EDPART ,LIST)。 c.从PART表中找到相应的PART号,用到PART的相关命令中。 d.继续建模。

e.如果单元或其属性改变,包括增加新单元,则要更新PART表( EDPART ,UPDATE)。 f.列出被修改的PART号,将用于进一步与PART有关的命令中。

除了显示部件外,还可以用PARTSEL命令选择部件或绘制部件(通过PART号)。和其它ANSYS选项类似,这也有许多可能的选择类型,它们有特殊的标记:“S”代表选择,“R”代表重新选择,“A”代表另外的选择等等。(因为 PARTSEL 是一个命令集合,所以如果这个命令被包含在批处理文件中,那么在单一的引证中需关闭标识)。用 PARTSEL 命令的PMIN,PMAX和PINC域控制可选号的范围。例如。可以执行下列命令从已定义的PART表中选择PART2和4:

PARTSEL,S,2,4,2

当执行 PARTSEL 命令时,对每个存在的部件将自动生成一个单元组合。可以绘出这些组合,菜单路径为:Utility Menu>Plot>Parts, 命令为: PARTSEL ,‘PLOT’。

注意 --在分析的其它部分中,不要试图使用PARTSEL命令创建的组合,因为如果PART表改变了它们也要重新定义。

注意 --不推荐选择或显示包含COMBI165单元的部件。

CDWRITE 命令把PART信息写入 Johname.CDB 文件。然后使用 CDREAD 命令将这一信息自动地读入ANSYS。但是,如果读入了两个或两个以上的 Johname.CDB 文件,那么最后一个 Johname.CDB 文件里的PART表将覆盖已经存在的表格。一般情况下,必须执行 EDPART ,CREATE命令来重新创建整个模型的PART表。但这将影响 Johname.CDB 文件里的所有与PART相关的命令。因此,用户可以组合模型,但不是那些与PART相关的输入,它们必须用最新创建的PART号修改。

在有限制的情况下,可以更新PART表( EDPART, UPDATE )。这就要求没有使用的 MAT/TYPE/REAL的组合仅在表中出现一次。然而,有必要部分改变与PART相关的命令。

3.7.1 Part 集合

用 EDASMP 命令创建的部件集合,是由多个不同部件组成的实体。部件集合可以用来输入一些ANSYS/LS-DYNA命令。在定义包含多个部件的实体间的接触时,部件集合是非常有用的(参看本手册第六章)。使用 EDASMP 命令,在提供一个ID号后,可以在一个部件集合里定义16个部件。部件ID号必须比当前定义的最高部件号大(用 EDPART ,LIST确定最高部件号)。也可以分别用 EDASMP, LIST和 EDASMP, DELE选项显示和删除部件集合。例如,指定包含部件1,2,4的部件集合的ID号为10,可以执行下列命令:

EDASMP,ADD,10,1,2,4 3.8 自 适应 网格划分

在金属成形和高速撞击分析中,物体要经历很大的塑性变形。单积分点显式单元,常用于大变形,但是在这种情况下,由于单元纵横比不合适可能给出不精确的结果。为了解决这一问题,ANSYS/LS-DYNA程序可以在分析过程中自动重新划分表面来改善求解精度。这一功能,即自适应网格划分,由 EDADAPT 和 EDCADAPT 命令控制。

EDADAPT 命令在一个指定的PART 内激活自适应网格划分。(用 EDPART 命令创建或显示有效PART IDs),例如,为了给PART1打开自适应网格划分,可以执行下列命令:

EDADAPT,1,ON

注意 —自适应网格划分功能仅对包含SHELL163单元的部件有效。

当此项功能打开时,分析中该部件的网格将自动重新生成。从而保证在整个变形过程中有合适的单元纵横比。自适应网格划分一般应用在大变形分析例如金属变形中(调节网格最典型的应用是板料)。在一个模型中要在多个部件上应用此功能,必须对每个不同的PART ID执行 EDADAPT 命令。缺省时,该功能是关闭的。

在指定哪些部件重新划分后,必须用 EDCADAPT 命令定义网格划分参数。采用 EDADAPT 命令定义需要网格划分的所有PART ID号,用 EDCADAPT 命令对其设置控制选项。

EDCADAPT 命令控制的参数如下所示:

·Frequency(FREQ)- 调节自适应网格划分的时间间隔。例如,假设FREQ设置为0.01,如果单元变形超过指定的角度容差,则其将每隔0.01秒被重新划分一次(假设时间单位为秒)。因为FREQ的缺省值为0.0,所以在分析中应用自适应网格划分时必须指定此项。

·Angle Tolerance(TOL)-对于自适应网格划分(缺省值为1e31)有一个自适应角度公差。TOL域控制着单元间的纵横比,它对保证结果的精度是非常重要的,如果单元之间的相对角度超过了指定的TOL值,单元将会被重新划分。

·Adaptivity Option(OPT)- 对于自适应网格划分有两个不同的选项。对于OPT=1,和指定的TOL值相比较的角度变化只是根据初始网格形状计算的。对于OPT=2,和指定的TOL值相比较的角度变化是根据前一次重新划分的网格计算的。

·Mesh Refinement Levels(MAXLVL)- MAXLVL域控制着整个分析中单元重新划分的次数。对于一个初始单元,MAXLVL=1可以创建一个附加单元,MAXLVL=2允许增加到4个单元,MAXLVL=3允许增加到16个单元。高MAXLVL会得到更精确的结果,但也会明显增加模型规模。

·Remeshing Birth and Death Times (BTIME and DTIME)-自适应网格划分的生死时间控制着该功能在分析过程中的激活或关闭。例如,如果设置BTIME=.01和DTIME=.1,那么分析中只在.01和.1秒间进行重新网格划分(假设时间单位为秒)。

·Interval of Remeshing Curve(LCID)-数据曲线把重新划分网格的时间间隔定义为时间的函数。数据曲线的横坐标为时间,而纵坐标为变化的时间间隔。如果这个选项不为0,那么它将代替适应频率(FREQ)。但是要注意,开始第一个自适应性循环仍需要非零FREQ值。

·Minimum Element Size (ADPSIZE)-根据单元边长设定的最小单元尺寸。如果不定义此参数,边长的限制将被忽略。

·One or Two Pass Option (ADPASS)-如果ADPASS=0,将使用双通道自适应划分,在重新划分网格后将重复这一计算(缺省值)。如果ADPASS=1,则使用单通道自适应划分,而计算不再重复。关于这两个选项的图形表示,请参看《ANSYS/LS-DYNATheoretical Manual 》图30.9(a)和30.9(b)。

·Uniform Refinement Level Flag (IREFLG)-值为1,2,3等,分别允许4,16,64等划分等级。对于每个初始单元都分别生成统一的单元。

·Penetration FLAG (ADPENE)-根据ADPENE是正(到达)的还是负(穿透)的,当接触表面到达或穿透工具表面时,程序将依据这个值调整网格。自适应细化主要依据加工曲线。如果ADPENE是正的,细化一般发生在接触之前;因此,可能用单通道划分就可以了。(ADPASS=1)

·Shell Thickness Level (ADPTH)- 绝对薄壳厚度标准,低于该值自适应划分开始。这个选项仅在自适应角度公差不为零的情况下有用。如果期望不改变角度,激活基于厚度的自适应重新划分功能,那么可把TOL设为较大的角度。(如果ADPTH=0.0,不使用这个选项。)

·Maximum Element Limit (MAXEL)- 自适应结束的最大单元数。如果超过了此值,自适应将被中止。

对于大多数问题,不应该用自适应网格划分作初始分析。如果分析结果出现扭曲的网格,或结果不正确,那么再应用此项重新进行分析。当LS-DYNA分析中因为“negative volume element”的错误终止时,也可用此项分析。

当打开自适应网格划分选项时,在求解过程中模型内的单元数将发生变化。在一个调节循环结束后,网格将被更新,并且生成一个扩展名为RSnn的新结果文件,这里nn为自适应网格标准。(在由FREQ指定的每个时间增量或LCID指定的时间间隔,都会发生自适应循环。)例如,重新划分两次网格的模型将产生两个结果文件, Johname.RS01 和 Johname.RS02. 有关自适应划分结果后处理的详细信息,请参看第十二章,Postprocessing.

注意 --既使每次循环网格不发生变化,也会产生一个新的结果文件。

每次循环都会产生一个扩展名为HInn的时间历程文件,尽管这些文件可能不如RSnn文件有用。此外,LS-DYNA还创建了一系列源文件名为“adapt”的文件。因此,在激活调节网格划分时,不要把“adapt”作为你的工作名。

第四章 加载

当模型建好后,下一步就是给结构加载为求解作准备,为了能正确地模拟结构的响应,就必须定义与指定时间间隔相对应的载荷,本章将讲述以下有关加载的几个方面:

·一般加载选项

—使用 component 或 PART IDs 和数组参数 —如何施加、删除、显示一般载荷[ EDLOAD ] —如何绘制载荷曲线[ EDPL] —如何定义数据曲线[ EDCURVE ] —如何显示或隐藏载荷标记 ·约束和初始条件

—如何在ANSYS/LS-DYNA中施加约束[ D ,EDNROT ] —如何定义滑移和循环对称平面[ EDBOUND ] —如何定义混合型约束[ EDCNSTR ] —如何定义焊点[ EDWELD ]

—如何给模型施加初始速度[ EDVEL ,EDPVEL ] ·耦合和约束方程 —自由度耦合[ CP ] —自由度间的约束方程[ CE ] ·非反射边界[ EDNB ] ·温度载荷 ·动力松弛

4.1 一般载荷选项

与许多隐式分析不同的是,显示分析中的所有载荷必须与时间有关。因此,在ANSYS/LS-DYNA中,许多标准的ANSYS命令都是无效的。在ANSYS/LS-DYNA中,尤其不能使用 F , SF , BF 系列命令,因为它们只能定义与时间无关的载荷。此外, D 命令只能定义节点约束。基于上述原因,在ANSYS/LS-DYNA中用一对数组参数定义载荷(一个用来定义时间,另一个定义载荷)。

注意 --虽然节点加速度(A x ,A y ,A z )和节点速度(V x ,V y ,V z )以自由度出现,但它们不是物理自由度,不能使用 D 命令约束。要采用 EDLOAD 命令给这些节点施加载荷。

在ANSYS/LS-DYNA中,所有载荷都是在一个载荷步内施加的。这和隐式分析有很大的不同,它在多个载荷步内施加载荷。在ANSYS/LS-DYNA中,对于一些特定的载荷,也可以用 EDLOAD 命令指定何时施加(birth time)、何时去除(death time)。请参考 EDLOAD 命令中的Birth Time,Death Time和CID,检验birth/death time的适用性。

给模型施加载荷,需遵循以下步骤:

·把模型中受载的那部分定义成Component(或PART,用于刚体) ·定义包含时间间隔和载荷数值的数组参数 ·定义载荷曲线

·如果不是在整体坐标系中加载,需要用 EDLCS 命令定义载荷方向 ·模型加载 4.1.1 组元

除给刚性体加载外,显式分析中所有载荷都施加到Component上。因此,第一步就是把模型中受载的那部分组合成Component,每个Component应由模型中承受同样载荷的部分组成。并且可以通过材料本构、模型中位置、预期状态等联系在一起。

例如,想要分析一个棒球撞击到墙上的结果,可以定义球上的节点为一个Component,球棒上的节点为另一个Component,墙上的节点为第三个Component。

可以定义任意多个Component,然后给每一个Component加载,Component必须由节点或单元组成(只有当施加压力载荷时Component才由单元组成)

定义Component时,首先要选择Component中想要包含的部分,然后使用GUI中的下列菜单路径来定义Component(CM):Utility Menu>Select>Comp/Assembly>Create Component

关于Component的详细信息,参见《ANSYS Analysis Guide》中的Selecting and Components。对于刚性体,载荷一般都施加到PART号上,而不是Component上。这是因为当使用命令 EDMP ,RIGID,MAT定义刚性体时已经包含有一系列节点和单元。

4.1.2 数组参数

值得注意的是,显式动态分析中,载荷在一些特定时间间隔内施加到结构上,这样就可以观察在特定时间段里施加载荷后模型的瞬态行为。因此,不仅需要定义施加载荷的类型(FX,FY,FZ,ROTX,ROTY,ROTZ等),同时也需要定义载荷施加到结构上的时间间隔值。

时间间隔值和其相对应的载荷值组合在一起定义为数组参数。这些参数必须定义为两部分,第一部分为时间间隔值,第二部分为载荷值,载荷应与时间间隔相对应。在GUI中,采用菜单路径来定义一个数组参数:Utility Menu>Parameters>Array Parameters>Define /Edit.

有关如何定义数组参数的详细信息,参看《ANSYS APDL Programmer’s Guide》中的Array Parameters。

注意 --可以通过线性插值得到中间时间点的载荷值。指定时间范围外的载荷值不能由程序插入。因此,必须保证载荷时间范围至少等于求解时间。否则,由于过早的去除载荷求解结束时的结果将会变为无效值。

一旦定义了能代表载荷的数组参数,这些载荷与时间有关,就可以直接用 EDLOAD 命令输入参数定义载荷。或者,可以用 EDCURVE 命令输入参数来定义载荷曲线。相对应的载荷曲线ID可用 EDLOAD 命令输入。

为说明数组参数的应用,考虑前面提过的棒球例子。想要考察从击球瞬间到击球一秒钟后球的变形。假定位移是时间的已知函数,球刚碰撞时的初始速度为1600in/sec(91MPH)。

首先需要定义一些节点组元,用它们来定义载荷和接触面。建立一个Component,它包括球上的所有节点,取名为ball。对这个Component施加一个1600in/sec的初始速度( EDVEL ),(本章后面再讨论)。然后再创建第二个组元,它仅包括球表面上的所有节点,取名为ballsurf.这个Component以后将用于接触定义。还需定义第三个Component,它包括球棒表面上的节点,取名为batsurf,接触算法将在第六章接触表面中讨论。

nsel,s,node,? !选择组成球的所有节点

cm,ball,node !定义Component为ball nsel,s,node,? !选择组成球表面的所有节点 cm,ballsurf,node !定义Component为ballsurf nsel,s,node,? !选择球棒表面的所有节点 cm,batsurf,node !定义Component为batsurf nsel,all

现在选择球棒基座上的节点(bathand),对它施加一个位移时间载荷曲线。 定义一名字为time的数组来存储时间值。使用时间值要与模型的所有载荷、维数以及材料性质相协调。其次,定义一个数组,包括Component bathand相应的X位移值,命名为Xdisp.同样定义数组Ydisp和Zdisp,以包含球棒相应的Y位移和Z位移值。

nsel,s,node,? !选择球棒基座上的节点 cm,bathand,node !定义Component为bathand nsel,all

*dim,time,,4 !定义数组参数为time的维数 *dim,xdisp,,4 !定义数组参数为xdisp的维数 *dim,ydisp,,4 !定义数组参数为ydisp的维数 *dim,zdisp,,4 !定义数组参数为zdisp的维数 time(1)=0,0.25,0.5,0.75,1 !给定位移的时间值 xdisp(1)=0,-1,-2,-1,3 !球棒的X位移 ydisp(1)=0,1,2,3,4 !球棒的Y位移 zdisp(1)=0,3,6,8,9 !球棒的Z位移

给出的例子实际是一个比较复杂的现象的简化模型。更加精确地模拟,应该定义额外的位移位置(和相应的载荷曲线)以更好的模拟球的真实运动。另外,球棒上各节点的初始速度是不同的。最后,球是一些不同材料和材料模型的复合体。

4.1.3 施加载荷

一旦定义好Component和数组参数,就可以给建立的模型加载( EDLOAD 命令)。在GUI中,可以选择下列菜单路径:Main Menu>Solution>Loading Options>Specify Loads.

可以选择增加载荷(EDLOAD中ADD标号),如力、力矩、节点加速度、表面压力等,所有的载荷都用 EDLOAD 命令施加到整体笛卡尔坐标系上,此为其缺省值。

GUI的对话框将列出所有有效载荷,以及先定义好的Component和数组参数。只需简单地选择所需的载荷标号,以及Component(刚体的PART号)和数组参数集合(预先定义的载荷曲线号)。值得注意的是,如下表所示的那样,并不是所有的载荷标记都适用于所有Component或PART号。

以下的载荷标记只适用于节点Component: 力:FX,FY,FZ 力矩:MX,MY,MZ 位移:UX,UY,UZ 转角:ROTX,ROTY,ROTZ 速度:VX,VY,VZ 节点加速度:AX,AY,AZ 体加速度:ACLX,ACLY,ACLZ 角速度:OMGX,OMGY,OMGZ 温度:TEMP

注 --虽然V(X,Y,Z)和A(X,Y,Z)作为DOFs出现,它们实际上不是物理DOFs。然而,这些量是被计算作为DOF求解和存储以用于后处理。

以下的标记只适用于刚性体(部件号)

力:RBFX,RBFY,RBFZ 力矩:RBMX,RBMY,RBMZ 位移:RBUX,RBUY,RBUZ 转角:RBRX,RBRY,RBRZ 速度:RBVX,RBVY,RBVZ 角速度:RBOX,RBOY,RBOZ 以下标记只适用于单元Component: 压力:PRESS

回到前面的棒球例子,需由time和x/y/z disp数组参数用 EDLOAD 命令自动生成位移与时间的载荷曲线。

edload,add,ux,,bathand,time,xdisp !球棒的x位移 edload,add,uy,,bathand,time,ydisp !球棒的y位移 edload,add,uz,,bathand,time,zdisp !球棒的z位移

另一种方法,很刚硬的棒球可以模拟为刚体,以简化所需输入数据和减少CPU时间。对于这种情况,对应刚体载荷可以施加有效的PART号(不是节点Component).

edload,add,rbux,,2,time,xdisp !x位移(如果球棒的PART号为2) edload,add,rbuy,,2,time,xdisp !y 位移(如果球棒的PART号为2) edload,add,rbuz,,2,time,xdisp !z位移(如果球棒的PART号为2)

如果已知球棒对球碰撞的压力是时间的函数,则可以不定义任何接触表面就能实现加载。取而代之用带“PRESS”标号的 EDLOAD 命令对包含球表面单元的组元Component加载。

edload,add,press,1,cover,battime,batload

在这种情况下,在面号1上对单元组元cover加载(在KEY域输入面号),其载荷曲线是由battime和batload数组参数产生的。

特别要提出的是,在上例中,仅仅压力载荷采用 EDLOAD 命令的LKEY域。LOAD keys(1,2,3等)与面载荷有关,在《ANSYS Elements Reference》中每种单元类型在输入数据表“surface loads”中列出。对于许多非压力的载荷,可以使用KEY域定义坐标系标号CID。载荷将作用于用 EDLCS 命令定义的CID的方向上,或者说,如果没有指定CID,就作用于整体坐标系上。详细信息请参看§4.1.5Defining Loads in a Local Coordinate System。

注意 --为避免某些平台的定时问题,通常是加一个小的时间值(如1.0×10 )到时间数组的最后一项.例如,取代3.0的值,数组的最后一项为下列值:

timeint(1)=0,1,2,3.00001

增加这样小的缓冲,不会影响结果的精度。

除了施加载荷外,也可以用 EDLOAD ,LIST和 EDLOAD ,DELE来显示和删除载荷。用 EDFPLOT 命令也可以显示单元上的载荷标号,并且可以用 EDPL 命令绘制载荷曲线。

4.1.4 数据曲线

用 EDCURVE 命令定义的数据曲线广泛应用于ANSYS/LS-DYNA中。它们可以用来定义与显式动态材料模型有关的材料数据曲线(例如,应力-应变)和载荷数据曲线(力-偏转)。它还可以定义时间载荷曲线(力,位移,速度等)。这些载荷曲线可以用 EDLOAD 命令输入。

4.1.4.1 使用材料模型数据曲线

某些材料模型(例如, TB ,PLAW或 TB ,HONEY)要求指定材料特性数据,它们可能是有效应变速率、塑性应变或体积应变的函数。对于这些数据,在用数据表[ TBDATA ]命令定义材料特性之前,需用 EDCURVE 命令定义特性曲线。在刚性体和压延筋接触问题中,也采用数据曲线来定义变形特性。

与对Component加载相类似,数据曲线组合成数组参数,然后与特定的曲线参考号相联系,这个参考号可用于指定的材料模型(PLAW,HONEY,等)或接触类型(RNTR,ROTR)和压延筋。定义数据曲线可以分为以下几个步骤:

1.定义一个包含材料或摩擦力特性横坐标的数组参数(例如,有效塑性应变,有效应变率,位移等)

2.定义第二个数组参数,包含材料特性或摩擦力的纵坐标值。(例如,初始屈服应力,弹性模量,力等)。

-6

3.定义数据曲线( EDCURVE )。选择一个数据曲线ID号,产生数据表[ TBDATA ]时将采用这个数据曲线ID号来将这些数据与特定的材料特性相联系。

定义这些参数后,在GUI中采用下列路径定义数据曲线: Main Menu>Preprocessor>Material Props>Curve Options Main Menu>Solution>Loading Props>Curve Options

可以用 EDCURVE ,LIST显示数据曲线,用 EDCURVE ,PLOT绘制曲线,用 EDCURVE ,DELETE删除曲线。

下例讲述了怎样用曲线来定义钢的分段线性塑性曲线( TB ,PLAW,,,,8): !“3”是任选的材料参考号(MAT) mp,ex,3,30.0e6 !弹性模量(psi)

mp,dens,3,7.33e-4 !质量密度(lbf-sec /in ) mp,nuxy,3,0.30 !泊松比

注 :首先将工程应变与工程应力关系的数据转换成真实应力与真实应变关系的数据,然后,从总真应变中减去弹性真应变,求出塑性真应变。它与总真应变一起用于LS-DYNA的*MAT-PIECEWISE-LINEAR-PLASTICITY材料模型#24。

2

4

!------------------------------------------------------------------------

! Stress-Strain Data used with Piecewise Linear Plasticity (Power Law 8):

!------------------------------------------------------------------------

! Total Total Total Total Elastic Plastic ! Stress/ Eng. Eng. True True True True

! Strain Stress Strain Stress Strain Strain Strain ! Point (psi) (in/in) (psi) (in/in) (in/in) (in/in)

!------------------------------------------------------------------------

! 1 0 0.0000 0 0.0000 0.0000 0.0000

! 2 60,000 0.0020 60,120 0.0020 0.0020 0.0000

! 3 77,500 0.0325 80,020 0.0320 0.0027 0.0293 ! 4 83,300 0.0835 90,260 0.0802 0.0030 0.0772 ! 5 98,000 0.1735 115,000 0.1600 0.0038 0.1562 ! 6 98,300 0.2710 124,940 0.2398 0.0042 0.2356 ! 7 76,400 1.2255 170,030 0.8000 0.0057 0.7943

!------------------------------------------------------------------------

注 :应力/应变曲线的第一点未输入,起始于第二点(横坐标=屈服应力)。要与用*SET命令定义的数组空间相协调。

*dim,strn,,6 !定义有效塑性真应变数据数组 *dim,strs,,6 !定义有效总真应力数据数组

strn(1)=0.0,0.0293,0.0772,0.1562,0.2356,0.7493 !应变(in/in) strs(1)=60120.,80020.,90260.,115000.,124940.,170030. !应力(psi) edcurve,add,1,strn,strs !曲线#1,纵坐标=应变,横坐标=应力 tb,plaw,3,,,8

tbdata,6,1 !为应力/应变数据采用载荷曲线#1

注 :如果需要,可以定义塑性失效应变。其次,还可以用给定必要的应变率参数或载荷曲线定义应变率对屈服应力的影响。请参见本手册的第七章,对这个材料模型有完整的描述。

4.1.4.2 使用载荷数据曲线

除了用于特定材料模型外,数据曲线还可以用来定义与时间有关的载荷。除了第一个数组参数必须包括时间值,第二个数组参数必须包括相应的载荷值外,定义载荷曲线的步骤和上述材料数据曲线一样。在用 EDCURVE 命令定义载荷曲线后,就可以用 EDLOAD 命令输入相应的载荷曲线参考号(LCID)。

下例讲述了用 EDLOAD 命令定义载荷曲线的3个步骤: !步骤1:定义数组参数 *dim,time,,5

time(1)=0,.025,.05,.075,.1

*dim,yforce,,5yforce(1)=0,100,200,300,400 ! 步骤2:定义载荷曲线和相应的LCID(#11) edcurve,add,11,time,yforce ! 步骤3:用 EDLOAD 命令指定LCID edload,add,fy,,comp,,,,11,1.0

如上所述的那样,在 EDLOAD 命令的第九个域定义LCID。值得注意的是,如果 EDLOAD 命令用一个LCID,数组参数不能用来定义载荷。当特定载荷曲线用于多个组元或载荷标记时,在 EDLAOD 命令中使用LCID而不用数组参数是非常有用的。

4.1.5 在局部坐标系中定义载荷

ANSYS/LS-DYNA中,可以在已定义的坐标系的任意坐标方向指定运动为一个组元或部件。这可以用 EDLOAD 命令的KEY域结合局部坐标系来获得( EDLCS 命令)。一旦用 EDLCS 命令定义了局部坐标系后,( EDLCS ,ADD,CID,X1,Y1,Z1,X2,Y2,Z2),就可以在 EDLOAD 命令中的KEY域用局部坐标系ID(CID)定义载荷的作用方向。如果没有指定CID,载荷就会作用在整体笛卡尔坐标系中。一些载荷类型不支持局部坐标系;在 EDLOAD 命令注释部分,参看Birth Time,Death Time和CID Support Table,可以得到更多的信息。

4.1.6 指定Birth和Death时间

对于每个载荷定义,可以用 EDLOAD 命令的BTIME和DTIME域来定义激活或杀死时间( EDLOAD ,ADD,Lab,KEY,Cname,Par1,PHASE,LCID,SCALE,BTIME,DTIME)。在分析中使用这些选项就可以在任意时刻激活载荷,随后杀死。在多阶段成形过程中这些选项是非常有用的,这一过程需要连续施加多个载荷。一些载荷类型不支持局部坐标系;在 EDLOAD 命令注释部分,参看Birth Time,Death Time和CID Support Table,可以得到更多的信息。

4.2 约束和初始条件

在开始求解之前,需要给模型施加约束。另外,还可能给运动物体设定初始速度。 4.2.1 约束

与ANSYS(隐式)不同,ANSYS/LS-DYNA区分零约束与非零约束。非零约束如载荷那样处理(伴随着载荷曲线,见本章前面的讨论)。仅零约束才能使用 D 命令,也就是说,给定的值必须总是零。其它值无效, D 命令仅用于固定模型的某些部分。可以用零约束来实现对称/反对称边界条件。

用户可以用 EDNROT 命令在旋转节点坐标系中施加零载荷。但首先需用 EDLCS 命令定义局部坐标系。

当模拟几何体的小对称部分时,需定义滑移或循环对称。可以使用 EDBOUND 命令来定义滑移或循环对称的对称边界面。可以用节点组元确定边界或方向矢量来定义法向(滑移对称)或旋转轴(循环对称)。

在ANSYS/LS-DYNA中,可以用 EDCNSTR 命令模拟其它类型的约束。可用的约束类型有附加节点设置(ENS),节点刚性体(NRB),薄壳边界到实体(STS),以及铆接(RIVET)。在GUI中,可以通过下列路径施加这些约束:

Main Menu>Solution>Constraints>Apply>Additional Nodal

附加节点设置约束类型( EDCNSTR ,ADD,ENS)允许在一个已经存在的刚性体上增加节点(通过节点组元),这个刚性体是用 EDMP 命令定义的,该节点组元不能和其它任何刚体连接在一起。在刚体上附加的节点可以放置在模型的任何地方,并且可放置在初始刚体外。ENS选项有许多应用,包括在两个刚体结合的地方设置节点,定义施加节点载荷的节点,还有在指定的位置定义集中质量。

不像用 EDMP 命令定义的典型刚体一样,用 EDCNSTR ,ADD,NRB命令定义的节点刚体不是和一个部件号相联系, 而是与一个节点组元有关。当模拟刚性连接时(焊接),NRB选项是非常有用的。对于一个刚性连接,不同柔性组元(有不同的MAT IDs)的部分作用在一起形成一个刚体。所以说很难用一个单一的MAT ID(和相应的部件号)来定义这种类型的刚体。但是,用一个节点刚体很容易定义刚性连接。因为节点刚体不是和一个部件号相联系,所以使用刚体(例如用 EDLOAD 命令施加的载荷)的其他选项不能用于节点刚体。

薄壳到实体边界选项( EDCNSTR ,ADD,STS)把实体单元区域和薄壳单元区域固连起来,如图4-1所示,Constrained Shell to Solid , 可将一个单独壳节点固连到最多9个实体节点上,这些实体节点定义一个‘fiber‘矢量。定义‘fiber’矢量的实体单元节点在整个分析中保持线性但是在fiber方向上保持相对移动。薄壳节点必须和某个沿fiber方向的实体单元节点位置重合。

图4-1

与用 EDWELD 命令定义的焊接点相似,RIVET( EDCNSTR ,ADD,RIVET)选项在两个不同位置的节点间定义了一个无质量刚性约束。和焊接点不同的是,一个rivet不能定义破坏。当定义了一个rivet时,节点间的距离将在模拟中的任何运动中保持不变。由rivet连接的节点不能是模型中其它约束的一部分。

4.2.2 焊接

在显动态分析中,模拟被焊接在一起的组元是很普遍的。在部件通常是通过焊接装配在一起的汽车应用中,显得尤其普遍。这种情况下,在ANSYS/LS-DYNA中使用 EDWELD 命令来模拟焊接约束。可以模拟两种不同类型的焊接:无质量焊接点和一般焊接。用 EDWELD 命令连接的节点不能用其它方式约束。

对于一个无质量焊接,必须指定两个不同位置的节点。也可以用 EDWELD 命令输入失效参数在焊点内定义失效。失效依据下列关系:

在GUI中,用下列菜单路径来定义一个无质量焊点:

Main Menu>Preprocessor>LS-DYNA Options>Spotweld>Massless Spotwld

一般焊接用于模拟两个部件的长焊接截面。对于一般焊接,你必须指定一个有效的节点组元,可以使用重合节点。但是,如果使用了重合节点,就必须定义输出数据所用的局部坐

标系。一般焊接内的失效也可以用EDWELD命令的失效参数来定义,使用与上述等式相同的关系式。

在GUI中,采用下列菜单路径来定义一般焊接:

Main Menu>Preprocessor>LS-DYNA Options>Spotweld>Genrlizd Spotwld 4.2.3 初始速度

在瞬动态模拟中,经常需要定义初始条件。在ANSYS/LS-DYNA中,可以用 EDVEL 和 EDPVEL 命令定义初始速度。可以使用这些命令对各种实体施加线速度和角速度。用 EDVEL 对节点组元或单个节点施加速度;用 EDPVEL 给部件或部件集合施加速度。

EDVEL 和 EDPVEL 提供了两种定义角速度的方法,Option=VGEN和Option=VELO. VGEN方法围绕指定轴对一个实体(节点组元,部件等)施加刚体旋转。VELO法直接给每个节点的自由度施加角速度。因为只有壳和梁单元有旋转自由度,VELO法的角度输入只适用于SHELL163和BEAM161单元。对于VGEN 和VELO方法,瞬态速度可以相对于整体笛卡尔坐标系来定义。

注 --为了模拟旋转体,不管是否用位移,都应该用Option=VGEN因为此方法施加了刚体旋转。

由于LS-DYNA的结构体系,定义初速度的两种方法Option=VGEN和Option=VELO不能在同一个分析中使用。

定义初速度,可使用下列步骤:

1.定义想要施加初速度的实体。这可以是单个节点,一个节点组元[ CM ],一个部件[ EDPART ]或一个部件集合[ EDASMP ]。

2.确定VGEN 和VELO是否适合你的应用。

3.在GUI中采用下列菜单路径之一定义初始速度[ EDVEL , EDPVEL ]:

Main Menu>Solution>Initial Velocity>-On Nodes-w/Nodal Rotate (VELO 选项) Main Menu>Solution>Initial Velocity>-On Nodes-w/Axial Rotate (VGEN选项) Main Menu>Solution>Initial Velocity>-On Parts-w/Nodal Rotate(VELO 选项) Main Menu>Solution>Initial Velocity>-On Parts-w/Axial Rotate(VGEN选项)

对于VGEN 和VELO选项,相对于整体坐标系输入平动速度(EDVEL或EDPVEL命令的VX,VY和VZ域)。对于VELO选项,在整体笛卡尔坐标系中输入节点角速度(OMEGAX,OMEGAY和OMEGAZ域)。对于VGEN选项,输入角速度的数量级(OMEGAX)、旋转坐标轴(XC,YC,和ZC域)以及相对于整体X,Y,Z轴的方向角。

如果没有用 EDVEL 或 EDPVEL 命令指定初始速度,则所有的初始速度为零。同样的,如果仅指定 EDVEL (例如, EDVEL ,VGEN,Cname)命令的Cname域或 EDPVEL(EDPVEL ,VGEN ,PID)的PID域,由于这两个命令的其它域缺省值为零,所以此时施加的初始速度为零。

若想改变事先用 EDVEL 命令指定的初始速度,用相同的组元名字或节点号重新定义一个新的速度就可以了。这个新值将覆盖原来的组元或节点值。为了显示或删除事先加在节点或节点组元的初始速度,使用 EDVEL ,LIST和 EDVEL ,DELE 命令(在GUI中,Main Menu>Solution>Initial Velocity>-On Nodes-List,Main Menu>Solution>Initial Velocity>-On Nodes-Delete)。

类似的,若想改变事先用 EDPVEL 命令指定的初始速度,可以用相同的部件或部件集合ID来重新定义一个新速度。这个新值将覆盖原来的部件或部件集合的速度。为了显示或删除事先加在部件或部件集合上的初始速度,使用 EDPVEL ,LIST和 EDPVEL ,DELE 命令。(在GUI中,Main Menu>Solution>Initial Velocity>-On Parts-List,Main Menu>Solution>Initial Velocity>-On Parts-Delete)。

对棒球例子来说,可以用下列命令指定初始速度:

edvel,velo,ball,,,-1600.0 !component ball 以1600in/sec的初始速度沿-z方向运动.

或者,假设component ball 在模型中为部件1,棒球的初始速度可给定如下: edpvel,velo,1,,,-1600.0 ! 部件1沿-z方向的初始速度为1600in/sec。 4.3 耦合和约束方程

CP 系列命令( CP,CPDELE,CPINTF,CPLGEN,CPLIST,CPNGEN,CPSGEN )可用来在一个结构的不同自由度(DOFS)间进行定义、修改、删除、列表和产生耦合。同样, CE 系列命令( CE , CEDELE , CEINTF , CELIST , CERIG )可在一个结构的不同DOF间定义、修改、删除、列出约束方程。在ANSYS/LS-DYNA的显式动态程序中, CP 和 CE 命令仅用于UX,UY和UZ DOFS(不允许旋转DOFS)。

既然旋转DOFS(UX,UY,UZ)不能使用,那么在显式分析中就不能用 CP 一系列的命令来模拟涉及旋转的刚体行为。如果使用了 CP 命令,将会导致非物理响应。

并且,要注意到,包含非重合节点,或包含不沿耦合自由度方向节点的耦合设置不会产生力矩约束。这就意味着如果结构旋转,耦合的节点也会旋转。只有作用力和反作用力在模型中满足力矩平衡。对于耦合约束的每个节点,力矩结果与节点到固定中心的距离有关,位移方向与结果力矩有关。在某些情况下这可能导致非物理响应。

有关耦合和约束方程的详细信息,请参看《ANSYS Modeling and Meshing Guide》中的耦合和约束方程。

4.4 非反射边界

当模拟地理力学系统时,常常用一个有限域来表示地面或其他大的实体。对于这种分析,可以在模型外部使用非反射边界限制模型的整体尺寸。可以在以SOLID164单元模拟的有限域的表面上应用这些边界。非反射边界将防止在边界产生的人工应力波反射重新进入模型从而破坏结果。

当模型中包含非反射边界时,LS-DYNA会根据线性材料行为假设计算所有边界部分的阻抗匹配函数。因此,需进行有限元网格划分从而使所有重要的非线性行为都包含在离散模型中。

要定义非反射边界,需选择沿SOLID164实体外表面( NSEL )组成所需边界的节点,然后定义一个节点组元( CM ),用 EDNB 命令在这些节点组元上施加非反射边界,然后激活膨胀和剪切选项。例如,对组元“ground”可以用下列命令定义边界:

edbound,add,ground,1,1

用 EDNB ,LIST和 EDNB ,DELE来显示或删除定义的非反射边界。 4.5 温度载荷

在显式动态分析中,为了应用与温度有关的材料,或包括热应力的影响,可能需要定义温度载荷。温度载荷主要应用在PLANE162,SHELL163和SOLID164单元中。ANSYS/LS-DYNA程序提供了几种温度载荷:

·应用于节点组元的随时间变化的温度( EDLOAD ) ·应用于模型中所有节点的常温度( TUNIF/BFUNIF )

·在顺序显式动态分析中,施加非均匀温度载荷(不随时间变化)的ANSYS热分析结果( LDREAD ,要求顺序求解)。

第一种方法用 EDLOAD ,TEMP命令和一般的加载方法对给定的节点组元施加随时间变化的温度。但必须定义两个数组参数表示载荷;第一个包括时间值,第二个包括温度值。可以用这些参数定义曲线或用 EDLOAD 命令直接输入。也可以用 EDLOAD 的SCALE参数来对这些温度值进行缩放。在§4.1General Loading Options,对此有详细的描述。

第二种方法允许给模型中所有节点施加均匀不变的温度。这种方法用于模拟稳态热载荷的结构。也可以用 TUNIF 命令或 BFUNIF ,TEMP命令施加这种温度载荷。

第三种方法允许把ANSYS热分析中计算的温度作为载荷施加到显式动态分析中。这种方法对模拟与温度有关的现象是很有用的,比如锻造。应用这种方法,必须执行隐显顺序求解。在显式阶段,可以用 LDREAD 命令从热分析(隐)结果文件( Jobname.RTH )中读入温度数据,然后加到模型的节点上。在热分析中只能从指定的时间点转移这些温度。对于加载步骤的详细描述,请参考本手册的第十五章,Implicit-to-explicit Sequential Solution .

对于这三种温度加载方法,可以用 TREF 命令输入参考温度。热载荷定义为施加温度和参考温度的差值。如果不定义参考温度,其缺省值为零。

为了使温度载荷有效,必须使用温度相关双线性各向同性材料模型。忽略屈服强度和切向模量,可以用这个模型代表热弹性材料。关于这种材料模型的详细描述,请参看第七章,Material Models.

注 --值得注意的是,温度加载的 EDLOAD 方法不能和 LDREAD 或 TUNIF/BFUNIF 方法混合使用。另外, EDLOAD 命令不能显示或删除 LDREAD,TUNIF 或 BFUNIF 施加的温度载荷。

在一个显动态分析中可以同时使用 LDREAD 和 TUNIF ( BFUNIF )。 LDREAD 命令把温度载荷施加到所选的节点上,覆盖了 TUNIF 或 BFUNIF 定义的任何温度载荷。 LDREAD 没有选择的节点将采用 TUNIF 或 BFUNIF 命令定义的温度载荷。采用 BFDELE 命令,删除 LDREAD 定义的温度载荷,用 BFLIST 命令显示其定义的载荷。 4.6 动力松弛

为进行隐式-显式连续求解(见第十五章),已将动力松驰功能加入到ANSYS/LS-DYNA程序( EDDRELAX 命令)。真实的动力松弛( EDDRELAX ,DYNA)是通过增加阻尼,使动能降为零,从而允许显式求解器进行静态分析。当隐式求解器用于提供预载荷时( EDDRELAX ,ANSYS),可采用稍不同的方法,基于预加载的几何构型(也就是,由隐式求解得到的节点

位移)进行应力初始化。在后一种情况中,显式求解器仅用101个时间步来施加预载荷。而在前一种情况,求解器每250个循环步(缺省值)就检查动能直到预载荷动能耗散完毕。ANSYS/LS-DYNA支持两种方法,它在零时间瞬态分析部分开始前,在虚拟时间内进行。 EDLOAD 命令通过PHASE标记指定分析类型。 EDLOAD ,ADD,Lab,,Cname,Par1,Par2,PHASE

PHASE: 0 载荷曲线仅用于瞬态分析(缺省值),或隐式-显式连续求解。

1 载荷曲线仅用于动力松弛

2 载荷曲线仅用于瞬态分析和动力松弛

与ANSYS/LS-DYNA的动力松弛有关的主要有五种不同的分析类型,现讨论如下: 1.仅瞬态动力分析( EDDRELAX, OFF):在这种情况下, EDLOAD 命令的PHASE参数置为零。不采用动力松弛,这是缺省设置。

2.仅应力初始化而没有瞬态分析( EDDRELAX, DYNA):这种情况用ANSYS/LS-DYNA显式求解器近似求解静力分析,实际最好由隐式求解器,如ANSYS来处理。在 EDLOAD 命令中PHASE参数置为1,终止时间( TIME 命令)必须置0,以预防静载荷的卸载。采用实际的动力松弛

3.无载荷瞬态分析的应力初始化( EDDRELAX, DYNA):这种情况与前一种情况相同,不同的是时间设置为所期望的值。在零时间时,结构立即卸载,自由振动。

4.有加载瞬态分析的应力初始化( EDDRELAX, DYNA):它类似于前一种情况,不同的是用 EDLOAD 命令(借助于PHASE=2)在虚拟时间进行动力松弛以获得预加载并在真实时间进行瞬态分析。如果用倾斜载荷曲线代替恒定载荷曲线,则结构在零时刻时卸载并重新加载。因此,如果显式求解器需要一个倾斜载荷曲线对静态求解精确收敛,那么较好的是使用两个 EDLOAD 命令。第一个PHASE=1)用斜坡载荷曲线施加预载荷。而第二个(PHASE=0)不用斜坡载荷曲线继续加载。

注 --如果对同一个组元(或PART ID)和同一个载荷标签多次执行 EDLOAD 命令,那么会用最后一个 EDLOAD 命令的值。对于给定的组元(PART ID)和载荷标签不能使用多个PHASE参数值。为符合这一设置,必须为应力初始化和瞬态曲线复制节点组元。(这一工作区仅适用于用组元定义载荷)。

5.隐式-显式连续求解( EDDRELAX, ANSYS):这种情况是用ANSYS隐式求解器施加预载荷以求得位移结果,作为预载荷施加ANSYS/LS-DYNA显示器解器的给定几何构型上,通过

应力初始化得到预加载的几何实体。在 EDLOAD 命令中的PHASE必须置为0。这种情况请参看本手册第十五章Implicit-to-explicit Sequential Solution . EDDRELAX 命令的2-6域都被略去。

第五章 求解特性

5.1 求解过程

当模型建好后(即,单元、实常数、材料性质的定义,建立模型、网格划分、边界/初始条件指定以及加载、结束控制),执行 SOLVE 命令即可以开始求解过程。(在GUI中,菜单路径为Main Menu>Solution>Solve)。

此时,ANSYS/LS-DYNA程序将运行以下几步:

1.标题记录:包括几何特性(如节点和单元等),都写到相应的两个结果文件 Jobname.RST 和 Jobname.HIS 中。(此时ANSYS/LS-DYNA数据库中包含全部相应的信息。即在运行 SOLVE 命令前,必须执行 SAVE 命令,把所有的模型信息都写入到文件 Jobname.DB )。

2.将所有输入的信息写出LS-DYNA程序的输入文件 Jobname.K 。

3.控制权由ANSYS程序转移给LS-DYNA程序。LS-DYNA求解器运行的结果写入到结果文件 Jobname.RST 和 Jobname.HIS 中。如果执行 SOLVE 命令前给定命令 EDOPT ,ADD,,BOTH,则也将输出用于LS-POST后处理程序的结果文件(d3plot和d3thdt文件)。

当求解结束后,ANSYS/LS-DYNA GUI将提醒用户求解已完成,控制权重新转回到ANSYS/LS-DYNA程序。可以通过ANSYS/LS-DYNA程序的POST1和POST26后处理器来查看结果。如果产生了错误或警告,输出窗口将自动显示弹出信息,表明有几个错误和警告。可以参考LS-DYNA的信息文件,其中详细记录了错误和警告。这些信息也同时被写入到LS-DYNA d3hsp文件。

5.2 LS-DYNA 终止控制

LS-DYNA求解终止点与建模时设定的终止控制有关。主要有以下几种终止控制类型: ·终止时间-用T IME 命令定义分析结束时间。时间步累积达到结束时间时计算就会停止。

·CPU时间限制-可以用 EDCPU 命令指定CPU时间限制(以秒为单位)。在达到时间限制时就会停止计算。

·终止判据-当指定点和刚性体到达某一个特定位置,或一个指定点和其它表面发生接触,可以用 EDTERM 指定结束求解。可以用这个命令设定多个判据。(详细信息请看 EDTERM 。)

一般用 TIME 命令指定分析结束时间。其他的终止控制都是可选的。程序遇到任何一个种终止判据时,求解都会停止。

当执行小型重新启动( EDSTART ,2)或完全重新启动( EDSTART ,3)时,如果以前的分析由于 EDTERM 设定的终止判据而终止,那么必须改变或删除这个判据,从而以免造成重启动立即终止。

5.3 共享存储器并行处理

对于大的模型,用户必须用ANSYS/LS-DYNA的共享存储器并行处理(SMP)功能来缩短分析所需的时间。要应用这一功能,一台机器上必须至少有两个处理器,并且必须申请合适的ANSYS/LS-DYNA SMP授权号。在申请授权时,详细信息请与ANSYS销售代表联系。

使用SMP功能需注意:

1.指定使用的处理器数。可以用config60.ans文件,/CONFIG命令或SETNPROC宏来设定这个值。关于这种方法的详细信息,请参看《ANSYS Advanced Analysis Techniques Guide》中的§9. 1 -Activating Parallel Processing.如果没有设定处理器数目大于一,那么在GUI中不能用合适的菜单选项来设定SMP, EDRUN 命令设置也会变为无效。

2.执行 EDRUN 命令来定义SMP的运行。

当使用共享存储器并行处理时,根据每个CPU的利用率及工作量,计算将会以不同的顺序进行。基于此原因,在多次运行同一个文件时,可能会注意到结果间存在细微差别。为了避免这些差别,可以指定保持一致性,保持一致性将使CPU时间增加15%。

如果在一个平台上使用所有的CPUs(ANSYS建议运行的CPU数比可用的要少一个为好),并且应该关闭这些CPUs所有其它的应用。任何与ANSYS/LS-DYNA在SMP运行模式应用相竞争的计算或机器资源都会显著影响SMP的性能。

当使用最多达8个处理器时,SMP性能成线性提高。当多于8个处理器时,获得的附加性能提高都很小;问题越大,性能提升潜力也越大。

5.4 求解控制和监控

LS-DYNA程序有几个控制开关,使得用户可以中断求解进程并检查求解状态。本节讲述怎样使用这些控制开关。

当 LS-DYNA正在运行时,在ANSYS/LS-DYNA程序的操作窗口中键入CTRL-C。它将中断LS-DYNA程序的运行,进入ANSYS/LS-DYNA操作的控制命令窗口。(注意:与ANSYS不同,CTRL-C并不会让用户脱离ANSYS/LS-DYNA的GUI,LS-DYNA求解器在此背景下继续进行)。下面是一个典型的操作窗口的输出片段。

____________________________________________________

initialization completed dt of cycle 1 is controlled by shell element 31

time........................... 0.00000E+00 time step...................... 2.78623E-05 kinetic energy................. 1.00000E+03 internal energy................ 1.00000E-20 spring and damper energy....... 1.00000E-20 system damping energy.......... 0.00000E+00 sliding interface energy....... 0.00000E+00 external work.................. 0.00000E+00 total energy................... 1.00000E+03 total energy / initial energy.. 1.00000E+00 global x velocity.............. 0.00000E+00 global y velocity.............. -1.28205E+01 global z velocity.............. 0.00000E+00 time per zone cycle= 434 microseconds

estimated total cpu time = 718. sec ( 0 hrs 11 mins) estimated cpu time to complete= 718. sec ( 0 hrs 11 mins) enter sense switch:

______________________________________________________________

此时,可以敲入以下四个开关之一:

SW1:ANSYS/LS-DYNA终止,记一个重启动文件。

SW2:ANSYS/LS-DYNA的时间和循环数将会被显示。程序继续运行,此时用户可以确切地了解到求解的进度。

SW3:ANSYS/LS-DYNA记一个重启动文件,并继续运行下去。 SW4:ANSYS/LS-DYNA将记一个结果数组,程序继续运行。

在操作窗口(运行CTRL-C)中最初预估的CPU时间往往是不精确的(请看上面输出例子中的预估CPU时间项),可以用CTRL-C中断LS-DYNA的求解,然后用开关SW2去得到一个运行时间和循环次数的较好估计值。ANSYS/LS-DYNA程序将把所有重要信息(例如错误,警告,失效单元,接触问题等)都写入到ANSYS/LS-DYNA的操作窗口中和LS-DYNA ASCII文件d3hsp中。

在UNIX系统中,ANSYS/LS-DYNA求解进程也可以通过读取某些ASCII码输出文件的最后一些行来检验。而这需要另开一个窗口,进入到ANSYS/LS-DYNA程序的运行目录中去,然后敲入以下命令:

tail -m filename

其中,filename=d3hsp 或者glstat 或者matsum。对于m(查看的行数)值,30就已足够。

d3hsp文件由ANSYS/LS-DYNA直接产生,而产生glstat和matsum文件必须在ANSYS/LS-DYNA的PREP7或SOLUTION进程中执行以下命令:

EDOUT ,GLSTAT EDOUT ,MATSUM

(有关怎样使用输出控制命令的详细信息,请参看本手册的第十二章)

d3hsp ,glstat,matsum文件都是ASCII码文件。在求解过程中,这些文件都是在要求的时间点上写出。可以从这些文件中任意一个的最后30行查看结果的当前时间值并与 TIME 命令定义的结束时间值进行比较,然后就能确定求解的进程了。

5.5 显示小尺寸单元

正如隐式方法和显式方法所述,ANSYS/LS-DYNA将依据其材料特性和尺寸自动计算模型中每个单元的临界时间步长。模型中的总体时间步长将依据模型中所有单元的最小临界时间步长而定。

用户可以用 EDTP 命令根据时间步大小显式动态单元。这可以使你监控模型中的小单元区域。根据时间步长有三个选项( EDTP 命令的OPTION域)用于显示单元:

·选项1-显示时间步长最小的单元。根据时间步大小每个单元呈红色或黄色。根据 EDTP 命令的VALUE1域确定所显示单元的数目(缺省值=100)。

·选项2-用最小时间步长显示和列出单元。该选项和选项1产生同样的单元,并且可以显示最小单元。

·选项3-除了显示所选单元外,这个选项显示的单元和选项1一样。超出VALUE1指定数目的单元是蓝色及半透明的,其透明度与 EDTP 命令的VALUE域有关。

在 EDTP 产生的图中,根据其时间步大小,单元将会呈现红色(最小),黄色(中间),或蓝色(最大)。

注 --在大模型中使用 EDTP 命令时要注意,因为其时间步长的计算要花费很多的CPU时间。

5.6 编辑LS-DYNA的输入文件

ANSYS/LS-DYNA程序支持LS-DYNA的大部分功能,并且可以由该程序的GUI界面得到。然而值得指出的是:还有一些LS-DYNA的功能不能从ANSYS/LS-DYNA 的GUI中直接得到,例如:

·一些材料特性,例如纤维,土壤等 ·某些单元类型,例如SEATBELT ·在局部坐标系下对刚体的约束

虽然这些功能不能直接使用,但熟悉LS-DYNA程序的用户仍然可以从ANSYS/LS-DYNA程序中间接地使用这些功能,这些方法将简述如下。

当模型建好后,执行 EDWRITE 命令(在GUI中,菜单路径为Main Menu>Solution>Write Jobname.k . )创建一个LS-DYNA输入文件 Jobname.k. (注意到,如果为小型重启动,输入文件命名为 Jobname.R 如果为全启动, 输入文件命名为 Jobname_nn.K)

EDWRITE 和 SOLVE 命令的区别就是本章开始讨论的求解过程中的第三步将不运行。也就是说,只写出 Jobname.k. (还有ANSYS结果文件的标题),但是,LS-DYNA程序将不会

开始求解。执行 EDWRITE 命令后,在显动态分析中,可以使用包含附加功能的下列任一种方法进行求解。

5.6.1 方法A

1. 退出ANSYS/LS-DYNA程序

2. 编辑LS-DYNA文件 Jobname.k 中在ANSYS/LS-DYNA程序不能直接得到的部分。 3. 在两个结果文件 Jobname.RST 和 Jobname.HIS 存在的目录下执行LS-DYNA , LS-DYNA程序运行得到的结果将加入到这两个文件中。

4.当LS-DYNA程序运行完以后,进入ANSYS/LS-DYNA程序,用后处理器(POST1和POST26)观看结果。

5.6.2 方法B

1.使用另一个窗口,进入到ANSYS/LS-DYNA程序运行的目录下,在原窗口下并不退出ANSYS程序。

2.编辑输入文件 Jobname.k 中从ANSYS/LS-DYNA程序不能直接得到的部分。

3.在相同的目录下另外运行LS-DYNA程序(该目录下有结果文件 Jobname.RST 和 Jobname.HIS )。求解结果将加入到这些结果文件中(记住,并没有退出ANSYS/LS-DYNA的原始窗口。)

4.当LS-DYNA程序运行结束后,回到原来的窗口里,用ANSYS/LS-DYNA的后处理观看结果。 对于方法A和方法B,可以通过运行lsdynaxx副本来执行LS-DYNA程序。(这里xx是ANSYS版本号)

lsdynaxx i=jobname.k p=product name

例如,如果在ANSYS版本6.0里ANSYS/Mechanical配有LS-DYNA,并且输入文件是“crashtest.k”,就可以敲入:

lsdyna60 i=crashtest.k p=ansysds

根据所运行的分析类型,可能还需要其它的命令行。对于隐显顺序求解( REXPORT 和 EDDRELAX 命令;请参看第十五章,Implicit-to-Explicit Sequential Solution),需要参数“m=drelax”.对于重启动分析,( EDSTART 命令;请参看第十三章,Restarting)这里

需要参数“r=d3dumpnn”,nn为用于重启动点的存储文件号(01,02,...99)。对于任何分析,都可以包含命令行参数”memory=n”,这里n是期望开辟的内存空间。

当使用这些方法修改 Jobname.k. 文件时,节点和单元都不能改变。同时也注意到ANSYS/LS-DYNA中的数据库并不因 Jobname.k. 文件的改变而更新。因此,当求解完成后,用PREP7,POST1,POST26处理器进行观看时,看到的是初始模型而并不是修改后的模型。(因此,编辑关键输入文件 Jobname.k 不是ANSYS/LS-DYNA所支持的特性)。不管什么情况下,LS-DYNA后处理器LS-POST能处理完整的计算结果(假设通过 EDWRITE 命令执行LS-DYNA结果文件)。

5.6.3 使用预先存在的FILE.K

在典型的ANSYS/LS-DYNA分析中,当执行 SOLVE 命令时,就会写入结果文件标题(或执行 EDWRITE 命令时)。但是,当仅有一个file.k输入文件存在时,LS-DYNA求解器能够创建RST和HIS结果文件标题。这就要求采用以前存在的file.k,用LS-DYNA求解,然后用ANSYS/LS-DYNA程序进行后处理。

使用这种方法,首先应确定file.k定义的模型不包括ANSYS/LS-DYNA不支持的任何特性。然后编辑.k文件,所以对ANSYS仅有的结果文件*DATABASE-FORMAT命令设置为1,对ANSYS和LS-DYAN都有的文件,它设置为2。接下来,如上所述,运行lsdynaxx副本。

然后可以用POST1和POST26处理结果。如果ANSYS数据不存在的话,在结果文件中不会得到单元特性(材料特性,实常数等。)但是,仍然能用ANSYS后处理器处理结果。如果要求LS-DYNA结果文件,也可以用LS-POST处理结果。

第六章接触表面

ANSYS/LS-DYNA中的接触表面可以使用户在模型中诸Component之间定义多种接触类型,本章将概要地讲述一下显式动态分析中定义物理上的真实接触。

必须注意的是显式动态分析中的接触与其它类型的ANSYS分析中的接触类型不同,在其它分析中,接触是由实际接触单元表示。而在显式动态分析中没有接触单元。只需定义接触表面,它们之间的接触类型以及相应的参数。

6.1 接触的定义