LS-DYNA常见问题汇总2.0 yuminhust2005 2008-10-12 10. 阻尼
在LS-DYNA中阻尼完全是可选的,通过使用一个*DAMPING卡片来调用。应该知道能量可以通过其它的非*DAMPING的方式耗散,比如,因为沙漏力产生的能量,刚性墙的力产生的能量,接触摩擦力产生的能量,离散阻尼产生的内能等。
有时候,接触力可能将噪声引入到响应里。在这种情况下,通过*CONTACT卡第二张卡的VDC参数来增加粘性阻尼,从而帮助减小噪声。VDC以临界阻尼的百分比输入,典型的值是10到20。
*DAMPING卡片概览:
LS-DYNA中的质量阻尼(Mass damping)包括*damping_global & *damping_part_mass,是用于抑止低频的结构振动模式,但此外它有抑制刚体模式的效应。因此对经受明显刚体运动的部件,应该要么从质量阻尼中排除或者在部件经历大的刚体运动期间关掉质量阻尼;或者使用*damping_relative来替代。通过使用*damping_relative,仅仅相对指定刚体的运动/振动被抑制。
在质量阻尼情况下临界阻尼系数是4*pi/T,其中T是要抑制的模态的周期(通常是最低阶(基频)模态)。周期可以通过特征值分析(eigenvalue)或者从一个无阻尼的瞬态分析结果来估计。如果选择使用质量阻尼,建议使用小于临界阻尼系数的阻尼值。取10%的临界阻尼的值,即输入0.4*pi/T,是相当典型的值。可以选择用同样的阻尼系数抑制所有的部件(*damping_global)或者对每一个部件指定不同的阻尼系数(*damping_part_mass)。在任何一种情况下,阻尼系数可能会随时间变化(在仿真中间关掉或打开阻尼时会有用)。
*damping_part_stiffness是为了抑制高频振动和数值振荡,通常对结构振动没有明显的影响。这种情况下阻尼系数COEF近似表示临界阻尼的一个系数。典型的COEF值是0.1。如果使用刚性阻尼产生不稳定,消除阻尼或者减小COEF的值来使回复稳定(也许降低一个数量级或者在某些情况下更多)。
质量和刚性阻尼在隐式瞬态分析中都实现了。
在版本970中另一个可选的阻尼是频率不相关的阻尼选项,它的目标是抑制一个范围的频率和一批部件(*damping_frequency_range)。Damping_frequency_range是由Arup的Richard Sturt开发的,它的理论细节是私有的。它开发的意图是帮助LS-DYNA来适当地处理振动预测问题中的阻尼--包括车辆NVH时间历程分析,某些地震问题和土木结构的振动问题。
*damping_frequency_range的关键点在于: -仅使用很小的阻尼,例如1%到2%
-处理阻尼将轻微的减小了响应的刚度,那是因为阻尼力的应力滞后于理论上正确的阻尼力,由于需要估计频率内容。
-用户指定的频率范围最理想情况是不要超过最高值和最低值之间30%。在这个范围之外同样可以获得阻尼,但阻尼值会减小。这种阻尼是基于节点速度的,所以可能会由于结构模态或者刚体转动而有振荡。
在Rayleigh阻尼里,阻尼矩阵表达为质量和刚度矩阵的线性组合 C = alpah*M + beta*K
LS-DYNA为标准的非线性分析在单元级实现Rayleigh阻尼。这是为了数值上的方便,因为在显式方法里不需要生成刚度矩阵K。取而代之,通过简单的将应力在单元面积上积分得到内力。Rayleigh阻尼作为这个应力的一个修正而实现。
版本960中的刚性阻尼(stiffness damping)完全重新实现,即使这样可以在960中提供COEF值,这个值与950中的BETA值是相符的,其中:COEF=BETA*(w/2)
版本950和960中的刚性阻尼不完全相同。在960中刚性阻尼方程在高频域提供一个近似的临界阻尼分数。方程的详细信息是不公开的。这个方程中的变化是因为使用旧版本方程时产生不稳定的频率而促使的。在版本970的3510子版本(或者更高)中,旧的950版本的刚性阻尼方程作为一个选项提供,通过设置COEF值为负值来调用。这个参数之后被解释成V950用户手册中所指的BETA值。
第 14 页
LS-DYNA常见问题汇总2.0 yuminhust2005 2008-10-12 11. ASCII output for MPP via binout
从970版本开始,有了二进制格式格式的所谓的ASCII output文件(matsum,rcforc,etc.)。--注单机版和smp版输出的为文本格式的ASCII output文件。
MPP-DYNA 不是直接写出ASCII输出文件,而是输出二进制格式数据。这些数据可以有两种格式:dbout(参见V.970用户手册Appendix L,P.L3)和binout。MPP缺省情况下会输出binout格式的数据。卡片*database_matsum,*database_rcforc,etc的第二个参数控制输出哪一种类型的数据。
1= old format,例如,ASCII文件(SMP) 或者 dbout文件(MPP) 2= new binout格式(对MPP版这是缺省的) 3= both formats都输出
LS-Prepost可以直接读取binout数据而不需要转换,但dbout文件需要用dumpbdb来转换成ASCII格式输出。 在LS-Prepost里,选项页‖2″(启动界面右边的Group按钮下面),在CFD按钮下面有―Binout‖按钮。点击之后在左下面出现的子面板中点击―Load‖按钮,选择求解器输出的binout文件。之后可以进行相关曲线的绘制。(此处修改原文部分)
作为lsda软件包的一部分,有两个程序可以获得(以用户账号登陆lstc ftp site,在‖lsda‖目录下)。一个是‖l2a‖,它可以用来从binout文件中提取不同的ascii文件。另一个是‖ioq‖,它是让你用来直接读取/浏览binout文件的小工具。
通常一个‖l2a‖执行块会包含在相应平台的MPP执行块的压缩包里,但你也可以用那个l2a来操作任何ls-dyna执行块(MPP or SMP)产生的binout文件。要从binout文件中提取ASCII输出文件,在命令行执行l2a,后面包含binout文件的名字。例如:‖./l2a binout.0000″
Binout文件是平台无关的,例如,你可以在与输出binout数据的平台同一平台或者任何其它平台下处理binout数据。
当MPP LS-DYNA执行块输出binout数据时,将会有多于一个的文件以‖binout‖作为根名字。每一个这样的文件需要被独立的打开来得到所有需要的数据。在d3hsp文件里,你可以看到像如下的部分所示的信息告许你每一个binout文件包含哪些数据。
>The following binary output file are being created,
>and contain data equivalent to the indicated ascii output files > binout0000:(on processor 0) > nodout > matsum > rcforc > abstat > rbdout > sleout
> jntforc (type 0)
> binout0001:(on processor 1) > jntforc
> binout0003:(on processor 3) > deforc
对MPP可选的控制输出格式的方法(from Jason): 如果你在pfile中输入如下行 pfile:
gen {dboutonly}
to execute:
mpirun -np ## mpp970 i=… p=pfile
程序将像之前一样输出dbout.*文件(没有binout),之后你可以用dumpbdb来提取所有的ASCII文件。
第 15 页
LS-DYNA常见问题汇总2.0 yuminhust2005 2008-10-12 12. 接触概述
这里提供LS-DYNA接触的一些简要信息。讨论不包含所有的接触类型的接触选项。更详细的LS-DYNA的接触回顾可以在www.feapublicatoins.com上找到FEA Information Newsletters中关于接触模型的由四个部分组成的系列文章。这一系列文章的四部分分别在2001年的8,9,10,12月份的新闻信里。
Automatic vs. Non-automatic:
对大多数显式分析推荐用自动接触类型。非自动接触类型(接触方向是重要的情况)有时用于金属成型仿真,其中几何是非常直接的且接触面的方向在分析之间可以可靠的确定。非自动接触通常推荐用于隐式分析。
类型:
Type 13接触(contact_automatic_single_surface)是一种单面接触(不需要定义主面),总是考虑壳的厚度且没有方向性。因而参与接触的板壳面在建模的时候需要至少保持一个小的间隙。为了避免初始穿透,间隙不能小于潜在会发生接触的两个壳之间厚度的平均值。体单元之间不需要有间隙。接触类型13的接触搜索算法比接触类型3(contact_surface_to_surface)或者接触类型a3(contact_automatic_surface_to_surface)更加复杂。例如,type13可以处理例如壳边对面,梁对壳面的情况。和任何其它单面接触类型一样,接触力不是直接从RCFORC文件中获取,你必需要定义contact_force_transducer_penalty来获取接触力。文章‖contact.13vs26″提供了关于contact_automatic_single_surface 和contact_automatic_general对比的一些额外信息。(之后会贴出,敬请等待)
Type 3接触(contact_surface_to_surface)是双向的面对面接触,其中壳的厚度考虑选项可以通过*contact或者*control_contact(*contact优先)卡片打开或者关闭。接触片的方向是很重要的,因为这种接触类型只在一个方向来检测潜在的接触。
在如面对面的一个双向接触中,先检测从面侧的节点对主面的穿透,然后再检测主面侧的节点对从面的穿透。这种方法当用用设置SOFT=2来调用segment-based接触时会有例外。
接触类型a3没有方向性(从壳的中面检测任一侧的潜在接触)而且总是考虑壳厚度,从这一点考虑它非常类似于type 13的接触。
接触参数的一些摘记: SOFT
SOFT是*contact选项卡A的第一个参数。SOFT的缺省值是0。SOFT=1除了在确定接触刚度方面之外与SOFT=0差不多是一样的。SOFT=2与SOFT=0根本上是不一样的,不但在确定接触刚度方法上,而且在搜索穿透的产生的方法上也不一样。SOFT=2会调用所谓的‖segment-based contact‖。对于SOFT=1 & 2接触的摘记可以分别参考文章‖contact.soft1″ & ―contact.soft2″。(稍后推出,敬请期待)
IGNORE
在仿真分析中的任何一个时间点,如果一个节点突然检测到在面下面(比如说,节点运动的非常快,穿透之前没有检测到),原来的(IGNORE=0)算法仅仅是把节点移动到主面上,不施加任何力(称之为‖shooting node logic‖)。如果shooting node logic选项被关掉(SNLOG=1),会突然出现一个相当大的力,而且产生负的接触能。如果IGNORE设置为1,这样shooting node logic标志SNLOG没有作用。相当于突然的穿透被留意到而且通过局部的调整接触厚度来补偿。因此在任何分析的时间点,如果检测到突然的穿透,程序不会施加任何很大的力也不会移动任何节点。但接触力会阻止进一步的穿透。
第 16 页
LS-DYNA常见问题汇总2.0 yuminhust2005 2008-10-12 13. Contact Soft 1 接触Soft=1
通过在*Contact卡的选项卡A中设置Soft=1所调用接触方程与缺省的罚函数接触方程的区别不如Soft=2接触算法大。除了在确定接触刚度方面不一样外,Soft=1和Soft=0是差不多的。Soft=1方法基于考虑稳定性的时间步来计算接触刚度。换句话说,你可以把soft=1的接触看作是一组简单弹簧质量系统,其中每一个都有与实际仿真分析中用到的时间步相匹配的Courant 时间步。对软材料与刚硬材料的接触或两个接触面的网格密度不一致情况,Soft=1通常比Soft=0更有效。
当Soft=1时,采用通过soft=0 & soft=1计算得到的最大的刚度值。因此如果soft=0刚度更大,减小SOFSCL将没有效果。
K = max(SLSFAC*SFS*k0, SOFSCL*k1) 其中:
k 是罚刚度
SLSFAC是用户在*Control_contact中输入的选项 SFS 是用户在*Contact卡3中输入的选项
SOFSCL 是用户在*Contact选项卡A中输入的值 k0 是从材料体积模量和单元尺寸计算得到的刚度 k1 是从节点质量和计算时间步计算得到的刚度 注意:对于双面接触,像*contact_automatic_surface_to_surface,在上面的方程中用SFM替换SFS(在*contact卡3中输入)
第 17 页