LS-dyna 常见问题汇总00(2)

2019-04-16 19:01

3.Long run times 长分析时间

当用显式时间积分时,对于仿真非常小的部件而分析时间又要相当长时没有好的方法。质量缩放(mass-scaling)增加了需要确认非物理质量的增加不会显著影响计算结果的负担。当使用时间缩放(time-scaling)时也有同样的问题。时间缩放(time-scaling)是指为了减小需要的时间步数,通过增加加载速率而缩短仿真时间。

要确认时间步不是仅由很少的小单元或者刚度大单元控制,可以通过在d3hsp文件中搜索‖smallest‖来显示100个最小的时间步单元。如果只有很少的几个单元控制时间步,可以把那些单元及邻近区域重新remesh或者把它们变成刚体。

可是仅运行必要长的时间是很明显的。这意味着在一个跌落分析的情况时,给跌落物体一个初速度,把它放在离地面一个非常小的距离。冲击之后,仅运行足够得到需要的结果的时间。

值得注意的是对于一个长时间的仿真,如果时间步数超过了50万步,最好使用双精度版本的LS-DYNA求解器,使截断误差的影响最小化。运行双精度版本要增加30%的时间。

对于长时间的分析,自动显式/隐式转换可能是一个选择。使用这种方法,用户可以指定在一个时间段内使用隐式积分。隐式积分的优点是时间步不由单元尺寸控制,所以可以得到大的时间步。当然,隐式计算也非常点用cpu时间。而且,目前并不是所有的LS-DYNA的功能和材料都在隐式分析中实现(大部分已经实现)。下面的FEA information newsletter里讨论了显式/隐式转换(http://www.feapublications.com/pages/pdfnews/3feadec.pdf)。

See also: mass_scaling, quasistatic

English Version:

When you‘re using explicit time integration, there is no magic cure for long run times associated with simulating very small geometries over relatively long periods of time. Mass-scaling carries a burden of having to confirm that the addition of nonphysical mass does not significantly affect the results (see attached file ―mass_scaling‖). A similar burden exists when time-scaling is employed. Time-scaling is a technique where the loading rate is increased and thus the simulation time is shortened in order to reduce the required number of timesteps.

Make sure that your timestep is not being controlled by only a few small or stiff elements by searching in the d3hsp file for the string ―smallest‖. If there are only a few controlling elements, you can remesh in the vicinity of those elements or perhaps make them rigid.

Though it‘s rather obvious, run only as long as is necessary. This means in the case of a drop simulation, assigning an initial velocity to the dropped object and placing it a very small distance from the landing surface. After impact, run only long enough to get the results you need.

Be aware that for lengthy simulations where the number of timesteps goes above half a million or so, you‘d be well advised to use a double precision executable of LS-DYNA to minimize error due to roundoff. Running double precision carries with it a cpu penalty of around 30%.

Automatic explicit/implicit switching may be an option. Using this technique, the user can specify time windows in which implicit time integration is used as opposed to explicit time integration. An advantage of implicit time integration

is that timesteps are not tied to element size and can thus be much larger. Of course, an implicit timestep is also much more expensive in terms of cpu. Further, not all LS-DYNA features and materials are implemented for implicit analysis at this time (though most are). Explicit/implicit switching is discussed in the following archived FEA Information newsletter…

http://www.feapublications.com/pages/pdfnews/3feadec.pdf See also: mass_scaling, quasistatic.

4.Quasi-static 准静态

动态松驰(Dynamic relaxation)并不是有意为一般的准静态(quasi-static)分析设置的。它适合于当预载只产生小的弹情况应变的施加预载,或者初始化系统到一个预定义的几何形状[1]。但对其它更多情况并不适合。

你可以通过做一个常规的显示仿真来模拟准静态分析,通过按需要调用时间/质量缩放(time-scaling,mass-scaling)来在可接受的时间内得到结果,但这种方法是需要技巧地。你必须监测系统动能按希望的使惯性效应最小化。基本上动能相对内能应该保持在一个较小的值。时间缩放是指加载比在准静态实验里更快,以减少总的仿真时间。关于质量缩放更多内容可以看‖mass_scaling‖一节。或者你可以尝试用LS-DYNA运行一个隐式静力分析。可以看用户手册里的卡片*control_implicit_…‖和Appendix M。

See also: gravity.txt, readme.preload, mass_scaling, long_run_times, implicit.general, quick_initialization. Note[1]:初始化到预定义的几何

1. 从第一次分析的最终状态输出一个节点位移文件。(这一部分未按原文翻译)注意d3plot文件里不包含节点转动信息,因此转动输出为0。这对初始化壳和梁单元会是个问题。LS-Prepost有一个选项是输出节点位移,在Output->Nodal Displacements里。但是这个输出是i8,3e16格式的,但需要的是i8,3e15,所以要注意修改一下。

如果你做了一个正常的动态松驰分析来得到初始状态,一个预定义位移和转动的drdisp.sif文件在DR阶段结束时会自动创建。

2. 在第二次分析时,快速的初始化到第一步输出的预定义的几何。你需要设置卡片*control_dynamic_relaxation里的参数IDRFLG=2,而且在命令行里指定‖m=filename‖(其中filename指第一步创建的文件)。这样在瞬态分析之前,LS-DYNA会自动做一个100步的预分析来使节点根据文件filename指定的数据移动到指定值。

English Version:

Dynamic relaxation is not intended for general quasistatic analysis. It‘s ok for applying preload when the preload produces only small elastic strains or for initializing a system to a prescribed geometry[1] but it‘s not good for much else.

You can do a quasi-static analysis by running a regular explicit simulation, invoking time- and/or mass-scaling as necessary to crank out the results in a reasonable timeframe, but this approach can be tricky. You have to keep an eye on the kinetic energy in the system as you want to minimize the inertial effects. Basically, the kinetic energy should remain small relative to the internal energy. (By time-scaling, I mean applying the load more quickly than in the quasi-static experiment in order to reduce the simulation time.) See the file ―mass_scaling‖ for more on mass-scaling.

Or, you can try an implicit, static analysis using LS-DYNA. See the commands *control_implicit_… and Appendix M in the User‘s Manual. There are examples of implicit analysis on our ―user‖ ftp site in the ls-dyna/example directory. See also: gravity.txt, readme.preload, mass_scaling, long_run_times, implicit.general, quick_initialization.

Note [1]

*** Initializing to a prescribed geometry ***

1. Write a file of nodal displacements from the final state of your first run. To get this data in the necessary format, use LS-TAURUS as follows:

ls-taurus g=d3plot < executes 1000 < goes to final state deform < write a file as described above t < termimate LS-TAURUS

Note the d3plot does not contain nodal rotations and thus the rotations are written as zero. This could be a real problem for initialization of shells and beams.

LS-PREPOST has an option to write the displacements using Output > Nodal Displacements but the output is i8,3e16 rather than the required i8,3e15 and hence the suggested use of LS-TAURUS.

LS-TAURUS is not available for Windows PCs. It‘s free and available for Unix and Linux workstations.

If you do a ?regular‘ dynamic relaxation run to get to the initialized state, a file of prescribed displacements and rotations will automatically be written at the conclusion of the DR phase (drdisp.sif).

Bug #2020 reported on 9/22/2004 that rigid body nodes do not get initialized according to data in ―m=pres_geom_file‖. Additional example in /home/jday/test/cantilever/solid/typ2sol_dr_nrb.k (creates drdisp.sif) and typ2sol_presgeom_nrb.k (m=drdisp.sif run). Nodes 11,22,33,44 are not initialized to what‘s in drdisp.sif 2. In your second run, quickly initialize to the prescribed geometry written in step 1. You need to set:

IDRFLG=2 in *control_dynamic_relaxation and include ―m=filename‖ on the execution line where ―filename‖ is the file created in step 1. Before the transient run begins, LS-DYNA will automatically run a precusor analysis of 100 timesteps wherein the nodse are displaced according to the data in ―filename‖.

5.Instability 计算不稳定

一些表示计算不稳定的消息如: ―out-of-range velocities‖ 速度超出范围 ―negative volume in brick element‖ 体单元负体积 ―termination due to mass increase‖ 因质量增加而终止 用来克服显式求解中的不稳定的方法如下:

首先(也是最重要的)是使用可获得的最新的LS-DYNA版本。最新的执行块可以从ftp://user@ftp.lstc.com上下载(注:前提是你有访问权限)。联系LSTC获得user帐号的密码。最新的BETA版执行块可以在ftp://ftp.lstc.com/outgoing/ls971上找到(不需要密码,但lstc公司对ftp访问有IP限制)。

其次是增加d3plot的输出频率到可以显示出不稳定的出现过程。这可以提供导致不稳定性发生的线索。 其它的不些解决数值不稳定性的技巧: * 试着用双精度LS-DYNA版本运行一次

* 试着减小时间步(timestep)缩放系数(即使使用了质量缩放mass-scaling)

* 单元类型和/或沙漏(hourglass)控制。对出现不稳定的减缩体和壳单元,试着用沙漏控制type 4 和沙漏系数0.05

。或者试着用类型16的壳单元,沙漏控制type 8。如果壳响应主要是弹性,设置BWC=1 和 PROJ=1 (仅对B-T壳)。

避免使用type=2体单元。对体单元部件,在厚度方向最少用两个体单元。

* 接触。设置接触的bucket sorts之间周期数为0,这样会使用缺省的分类间隔。如果参与接触的两个部件的相对速

度异常的大,可能需要减小bucket sort的间隔(比如减小到5,2甚至1)。

如果仿真过程中有明显的接触穿透出现,转换到使用*contact_automatic_surface_to_surface或者

*contact_automatic_single_surface,并设置SOFT=1。 确保几何考虑了壳单元的厚度。如果壳非常薄,比如小于

1mm,放大或者设置接触厚度到一个更加合理的值。

* 避免冗余的接触定义,也就是说不要对同样的两个部件定义多于一个的接触对。 * 查找出现不稳定的部件的材料定义中的错误(比如误输入,不一致的单位系统等) * 关掉所有的*damping

这些技巧是一些通用的方法,可能并不适合于所有的情况。

See also: negative_volume_in_brick_element.tips,shooting-nodes

English Version:

Some messages that indicate an instability has occurred:


LS-dyna 常见问题汇总00(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:重庆市梁平红旗中学高2011级招生简章

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: