New version of LS-DYNA is released for all common platforms.
Release notes for Version 971 R6.1.1 Herein are summarized most of the new features, enhancements, and significant corrections made since the previous release, 971 R6.1.0. New features are listed first in no particular order. Enhancements and corrections are then listed by category.
Add MPP support for *CONTACT_AUTOMATIC_…_TIEBREAK option 4 with PARAM=1 (frictional stress limit).
Enable the CNTCO=2 option on *CONTROL_SHELL to work with segment based contact (SOFT=2 on optional card A of *CONTACT).
Add *CONTROL_CPM NP2P option (card 1, column 2). This will control the particle to particle contact redistribution frequency between processors — MPP only.
Add porous leakage to abstat_cpm (*DATABASE_ABSTAT) of each gas under airbag part database.
New *DEFINE_CONNECTION_PROPERTIES parameter SCLMRR (cards 3 and 5, column 8) scales torsional moment in failure function. Default value is 1.
Add new option PROPRUL=2 to *DEFINE_CONNECTION_PROPERTIES: Use *DEFINE_FUNCTION expressions to determine weld data depending on several values of both weld partners.
Add failure information output option to *MAT_ARUP:
New parameter OUTFAIL (=0: off, =1: on) on card 6, column 2.
Allow TABIDC and TABIDT of *MAT_255 to be TABLE_3D. This enables hardening rule to be functions of strain rate and temperature.
Enhance *DEFINE_CPM_BAG_INTERACTION so that abstat data (*DATABASE_ABSTAT) for slave, constant volume (CV) bag includes updates to density, temperature, etc. due to mass vented from master CPM bag to slave bag.
*AIRBAG_PARTICLE: allow heat convection between environment and bag (two ways). Apply proper probability density function to part temperature created by the particle impact.
Add air partial pressure while using IAIR=1 on *AIRBAG_PARTICLE for cpm_sensor output (*DATABASE_CPM_SENSOR).
Fix SEGV problem for processor without any particles and no bucket (*AIRBAG_PARTICLE) — MPP only.
Set particle domain limit higher for *AIRBAG_PARTICLE — MPP only.
Add two more exceptions for applying air drag forces to airbag exterior surface in CPM method (*AIRBAG_PARTICLE):
1. do not apply drag forces on vent holes,
2. do not apply drag forces on segments which are in contact.
Limit *AIRBAG_PARTICLE vent coefficients C23, LCTC23, LCPC23 between [0,1] to get consistent answer.
Adjust *AIRBAG_PARTICLE option NP_RELAX<0. Apply bag segment with ambient pressure before active particles impact. This will avoid bag collapsed by the outside pressure and hard to open the bag.
Fix the problem of same *AIRBAG_PARTICLE inflator node exists on multiple processors. Only the lowest processor ID having this shared node will act as inflator — MPP only.
Memory bug fix for *AIRBAG_PARTICLE using surface drag option. The drag was calculated based on surface nodes instead of segments. This could cause SEGV during runtime.
Fix functional capability of negative friction coefficient in *AIRBAG_PARTICLE.
Fix *AIRBAG_PARTICLE keyword reader when _ID and _MPP are used in the same card.
Fix input error when HCONV<0, i.e. load curve, in optional card of *AIRBAG_HYBRID and the load curves are offset with the *INCLUDE_TRANSFORM function offset, IDFOFF.
Disable *BOUNDARY_PRESCRIBED_ACCELEROMETER during dynamic relaxation.
Fix for *BOUNDARY_ACOUSTIC_COUPLING_MISMATCH:
uninitialized data incorrectly prevented automatic coupling of mismatched fluid-structure faces.
*BOUNDARY_PAP: correct a bug that happens when BLOCK=1, MPP only.
Fix a MPP bug for *BOUNDARY_PAP pore air flow analysis.
Trap input error, KEY+902/903, if different birth/death times are used for the same node in separate *BOUNDARY_SPC cards.
Fix part out-of-range error when using *BOUNDARY_PRESCRIBED_MOTION_RIGID with vad=4.
Fix for *CONSTRAINED_BUTT_WELD. The constraints were imposed on the accelerations before the accelerations had been updated from forces to accelerations. As a result, the welds could open up. The welds are now properly constrained.
If *CONSTRAINED_NODAL_RIGID_BODY nodes are shared by several processors with mass scaling on, the added mass was not summed up across processors. This caused instability of the NRB — MPP only.
Fix summation order for *CONSTRAINED_LAGRANGE_IN_SOLID CTYPE=2 for rebar. This will avoid round off errors, which caused slightly different shared nodal velocity on echo processor — MPP only.
Fix memory access error in *CONSTRAINED_LINEAR_OPTION when rotational terms are involved.
Bug fixes for *CONSTRAINT_INTERPOLATION_LOCAL.
Fix input error due to large load curve IDs for FMPH, FMT, FMPS in *CONSTRAINED_JOINT_STIFFNESS_GENERALIZED card 3.
Fix for MPP groupable contact (see *CONTROL_MPP_CONTACT_GROUPABLE) which could hang in some cases if there were contacts with death time.
Fix *CONTROL_MPP_CONTACT_GROUPABLE constrained tied contact issue that only happened with dynamic relaxation: the rotational mass increase for stability was being applied both at the start of dynamic relaxation AND on the first cycle afterward. This resulted in problem that showed up as contact instabilities.
Fix roundoff issue for groupable tied master nodes that do not have anything tied to them (*CONTROL_MPP_CONTACT_GROUPABLE).
Fix for *CONTACT_SLIDING_ONLY initialization — MPP only.
Fix for *CONTACT_TIED_…:
slave nodes are unique on each processor. Synchronization of coordinates has to be after all treatment because some nodes may move back to original position due to special options — MPP only.
Fix adjacent segment data used for triangular segments in the edge to edge checking and sliding option of segment based contact (SOFT=2 on optional card A of *CONTACT). The 1-3 edge did not have knowledge of adjacent segments. This affects the option to split quad segments to triangles (Q2TRI on optional card D of *CONTACT).
Fix spot weld thinning SPOTHIN on *CONTROL_CONTACT for segment based contact (SOFT=2). The thinning was too large. Also, if the bucket sort did not find anything to watch during the first cycle, then segment thinning failed to occur.
Fix an issue with segment based contact (*CONTACT, SOFT=2) where setting an endcycle less than the number of steps used during dynamic relaxation could lead to large contact forces.
Fix contact segment input phase. With multiple contact interfaces, the error could have caused memory pointers to get set wrong leading to bad contact segments or a segmentation fault.
Modify segment based contact (*CONTACT, SOFT=2) bucket sort to eliminate possible problems after dynamic relaxation when there are thin solid parts in the model.
Support thick shells in segment based contact (*CONTACT, SOFT=2) penetration checks.
Fix MPP support of the SWRADF parameter on *CONTROL_CONTACT. This parameter sets a radius for thinning segments around beam spot welds. This parameter was having no effect on MPP solutions.
Fix segmentation fault problem when using more than one *CONTACT_AUTOMATIC_…_TIEBREAK and if the tiebreak with OPTION=8/10/11 is not the last *CONTACT keyword.
Fix negative volume problem for simple or small deck restart when using *CONTACT_TIED_…(OPTION).
Fix for possible message passing error (truncation) in MPP when checking for failed contact elements.
Fix termination by DTMIN on *CONTROL_TERMINATION which was not working.
Fix error when using contact thickness for shell offsets (*CONTROL_SHELL, CNTCO=2), which resulted in incorrect offsets being applied. Also, fix the echo of CNTCO in the d3hsp file.
Output from *CONSTRAINED_SPR2 and *CONSTRAINED_INTERPOLATION_SPOTWELD to SWFORC file was not set up correctly — MPP only.
Bug fix for output crack data to crack file (*DATABASE_BINARY_D3CRACK). Solid internal element ID was not stored correctly — MPP only.
Fix bug for *DATABASE_BINARY_INTFOR in small restart. The intfor file was overwritten.
Fix for output of the “damage” value in the “contact gap” location of intfor file, for MPP *CONTACT_AUTOMATIC_…_TIEBREAK, OPTION=9/11.
Change the eloutdet and d3plot output for tet formulations 4, 16, and 17 with NIPTETS=4 on *CONTROL_SOLID and NINTSLD=8 on *DATABASE_BINARY. Until now, the 1st integration point was skipped and only 2 to 5 were output. Now all 5 are output.
Fix stress output for thick shell formulation 1 when CMPFLG=1 on *DATABASE_EXTENT_BINARY.
A minor correction to the cross section force calculation routine for solid element formulation 15 (prism) elements. This could have caused minor changes in the moment output to SWFORC (*DATABASE_SWFORC).
Fix bug in *DATABASE_BINARY_D3PART output.
Recover the old legend style for *DATABASE files rcforc and jntforc.
Fix error in reading *DATABASE_BINARY_RUNRSF for long format.
Correct a bug for seatbelt slipring output using *DATABASE_SBTOUT:
sbtout could be erroneous when there were more than one slipring.
*DATABASE_PAP: fix a bug for pore air seepage velocity in d3plot, MPP only. This bug only affects the info stored in d3plot, not analysis result.
Fix error message for duplicate *DATABASE_CROSS_SECTION_IDs (STR+529).
Fix input parsing problem with *DEFINE_CURVE_FUNCTION and *DEFINE_FUNCTION when using structured input (not keyword).
Change routine that processes *DEFINE_FUNCTION so that it removes end of line spaces before processing: this allows longer functions.
Fix an order dependency problem when initializing MPP, so it is now OK to have a *DEFINE_CURVE_FUNCTION that references a *DEFINE_FUNCTION.
Add MPP support for multiple *DEFINE_FRICTION cards.
Fix for *DEFINE_COORDINATE_SYSTEM with local coordinate system CIDL.
Suppress echo of *DEFINE_FUNCTION and *DEFINE_CURVE_FUNCTION data in the d3hsp file for any such keywords that appear in an encrypted portion of the input file.
Fix a bug for *DEFINE_CURVE_FUNCTION: ACCX/ACCY/ACCZ/ACCM were not reported correctly for rigid nodes. The array for flagging rigid nodes was built with internal IDs but queried with external IDs.
Fix failure of beam spot welds when there are 3-sheet welds in the model and dynamic scale factors are defined on *DEFINE_SPOTWELD_RUPTURE_PARAMETER. The bug occurred only when there were spot weld beams with internal numbers greater than nlq.
Fix critical invariance bug in solid element formulation -2 (*SECTION_SOLID, ELFORM = -2). Prior to this fix the element only yielded correct results if the nodal connectivity is such that the shortest element dimension is in the local z-direction.
Fix for *ELEMENT_BEAM_PULLEY: correct strain increment computation.
Fix mass scaling of tetrahedral element formulation 13 (ELFORM=13 on *SECTION_SOLID). This fix affects MPP and also SMP when SMP parallel consistency is not being used. The lumped mass was about twice what was needed.
Add code to delete pressure segments from thick shell surfaces when the elements erode.
Switch the s- and t-direction bending stiffness terms of the linear beam formulation 13 (ELFORM=13 on *SECTION_BEAM). They were not consistent with the manual or with the other elements. Before the fix, the input ISS value was used for bending about the t-axis, and ITT was for bending about the s-axis.
Correct a bug for shell element type 23 (*SECTION_SHELL, ELFORM=23).
Changes to the reporting of *INITIAL_AXIAL_FORCE_BEAM when the initialization is complete. It appears that previously all beams were assumed to end initialization at the same time, resulting in problems when this was not the case. Each beam now reports when its own initialization is complete, and properly transitions to post-initialization independently.
Disable license security for *INITIAL_IMPULSE_MINE. This feature is no longer restricted.
Fix excessive input & initialization time when using *INITIAL_STRESS_SHELL with *INITIAL_STRESS_SHELL_SET and when *INITIAL_STRESS_SHELL_SET appears after *INITIAL_STRESS_SHELL. The same applies to *INITIAL_STRAIN_SHELL and *INITIAL_STRAIN_SHELL_SET.
Fix issue with *INTERFACE_LINKING:
if one or more of the linking files was missing, lots of empty files might be created.
Fix MPP bug in *INTERFACE_LINKING_SEGMENT. If there was more than one slave node tied to a segment, the segment would get renumbered more than once, resulting in the slave nodes being tied improperly.
Fix for MPP implementation of *INTERFACE_LINKING_EDGE when dynamic relaxation is active: do not move slave nodes during dynamic relaxation.
Fix SMP support for *INTERFACE_LINKING_NODE which never worked at all.
Fix incorrect input error, KEY+362, when using more than one *INTERFACE_COMPONENT_NODE with the _TITLE option.
Fix for LSDA *INTERFACE_LINKING file output.
Fix for *LOAD_SEGMENT on *MAT_ACOUSTIC faces:
Corrected a small imbalance in the entrant acoustic boundary pressure loading that could over time grow into an instability. This was mostpronounced in single precision solutions and with low load levels.
Fix bug in *LOAD_THERMAL_VARIABLE_BEAM that could lead to spurious error messages during input (for example, a message wrongly stating that the points are in the wrong order). The bug was introduced in R6.1.0 but was not present in R6.0.0 or previous versions.
Fix mass scaling for cohesive element materials (*MAT_COHESIVE_…) with ROFLG=1.
Fix for *MAT_054 with SOFT2>0. This was not really working for elements with varying fiber directions.
Fix for EPSTHIN of *MAT_ADD_EROSION:
Only thinning, i.e. negative z-strain, should lead to failure.
Correct strain calculation for failure criterion ERODS<0 of *MAT_058.
Fix for implicit calculations with *MAT_ADD_EROSION damage model GISSMO:
update damage history only in case of converged step.
Fix for *MAT_156: correct stiffness for time step calculation.
Minor correction of *MAT_156 timestep calculation with DMP>0 to avoid instabilities.
Fix for *MAT_024 table check, Warning SOL+1162, to avoid unpredictable memory overwrite in rare cases.
Correct MPP *MAT_NONLOCAL and *MAT_CODAM2 with nonlocal smoothing which had an error in searching for neighbors for the smoothing calculation which showed up with more processors. The error caused abnormal termination.
Fix a bug with *MAT_PLASTICITY_WITH_DAMAGE_ORTHO_RCDC. If data has this material using RCDC damage and also contains it without using RCDC, we correctly allocate history data only for the RCDC material. However, we checked a global flag that sent all elements to the RCDC routine where those elements without enough memory could be deleted.
Modify the behavior of spot weld assemblies failure used with the TRUE_T parameter on *MAT_SPOTWELD. There was a failure to measure and reduce only the moment due to shear loading so welds in the bending mode were failing a bit too late at higher load due to reduction of the bending moment in the failure function. Now the assemblies behave as intended and TRUE_T affects failure only of welds in shear.
Fix visco-elastic effects in 2D plane strain and axisymmetric elements when used with materials *MAT_002, *MAT_057, *MAT_062, *MAT_073, *MAT_076, *MAT_077, *MAT_079, *MAT_087, *MAT_127, *MAT_129, *MAT_163, *MAT_176, *MAT_178, and *MAT_276.
Fix MPP beam spotweld failure with OPT=6 or 9 in *MAT_SPOTWELD. Welds on the decomposition boundary failed at the wrong stress.
Fix *MAT_CODAM2 when used with shells or thick shells with section angles. The input angles were being ignored.
Fix *MAT_059 for fully integrated bricks. The strain calculation was generating large shear strain and stress in a small strains tension test.
Fix *MAT_NONLOCAL for plastic strain smoothing with fully integrated shell elements. The plastic strain was being incorrectly reduced from failed integration points due to negative strain increments being calculated at neighboring integration points that had failed. The negative increments were calculated due to the plastic strain being set back to the failure strain at the failed points.
Fix for *MAT_076:
shear relaxation curve LCID was erroneously being used for the bulk relaxation curve LCIDK.
Fix bug in *MAT_176 with respect to coefficients C1 to C6.
Bug fixes for *MAT_ALE_INCOMPRESSIBLE.
Fix incorrect element failure when using *MAT_ADD_EROSION with LCFLD and when there are more than one *MAT_ADD_EROSION keyword.
Fix incorrect internal energy for *MAT_PSEUDO_TENSOR when using shell type=14/15 (axisymmetric).
Enhancement for ALE *INITIAL_VOLUME_FRACTION reading to cover both new and old formats.
Fix memory error for ALE *CONSTRAINED_LAGRANGE_IN_SOLID coupling CTYPE=5. Restructure the memory allocation across processors which allows much bigger problem with CTYPE=5 to run. — MPP only.
Fix ALE *CONSTRAINED_LAGRANGE_IN_SOLID coupling CTYPE=11 which had been accidentally disabled.
Allow multiple definitions (two or more) of keyword *BOUNDARY_SPH_FLOW for SPH particles in the input file.
Fix memory bug for axisymmetric boundary condition (IDIM = -2 on *CONTROL_SPH).
Bug fix for SPH symmetric boundary condition (*BOUNDARY_SPH_SYMMETRY_PLANE).
Fix for SPH FORMS=7 and 8 on *CONTROL_SPH.
Fix SPH neighbor searching algorithm — SMP only.
Fix bug whereby sphout file (*DATABASE_SPHOUT) contains fewer particles from history node set due to same internal number of output particles from multiple CPUs — MPP only.
Fix two bugs for axisymmetric SPH (IDIM = -2 on *CONTROL_SPH):
1. Assign the sound speed of parent node to the ghost node across the axisymmetric plane.
2. Allow user-defined symmetric plane, on top of auto-created xz-symmetric plane.
Correct a bug which created axisymmetric ghost nodes even for non-active nodes.
Only apply viscosity force to x and y components, not on axisymmetric hoop component.
Fix save and restart for EFG in single precision.
Fix bug for EFG shell formulation 41 (ELFORM=41 on *SECTION_SHELL) in rigid body rotation.
Remove license checking for EFG shell adaptivity and implicit.
Fix problem with shooting nodes in implicit MPP contact.
Fix problem with initialization of header for d3eigv file (*CONTROL_IMPLICIT_EIGENVALUE/MODES) when MPP pre-decomposition is being used.
Fix implicit’s output to spcforc (*DATABASE_SPCFORC).
Correct processing of SPC constraints on rigid bodies in local coordinates (*BOUNDARY_SPC with CID>0).
Fix problem with keypoints in implicit time stepping: *CONTROL_IMPLICIT_AUTO with DTMAX<0.
Fix implicit mechanics and MPP tied contact that could have a negative slave node.
Add the saving and restoration of frictional work arrays during the interaction of implicit mechanics and contact.
Correct computation of external work associated with prescribed motion of rigid bodies (*BOUNDARY_PRESCRIBED_MOTION_RIGID) for implicit mechanics.
Fix bug when outputting rigid body data in local system for implicit solver 12 (NSOLVR=12 on *CONTROL_IMPLICIT_SOLUTION). This could lead to error termination.
Fix a file name problem (which resulted in initialization failures) with MPP when doing predecomposition and also using a jobid (*KEYWORD_JOBID).
Fix MPP full deck restart problem if there are tied interfaces AND frictional work.
Synchronize the computation of the damping factor used during dynamic relaxation (*CONTROL_DYNAMIC_RELAXATION), which was being computed differently on each processor, resulting in poor behavior (including different forces on shared nodes, which showed up as “sync” errors).
Increase max size of allocated memory from 2^30 to 2^33 bytes, which should fix some memory allocation problems for MPP when decomposing large problems (60 million elements or more).
Fix setting SMP consistency flag (ncpu<0 on command line) for job start from pre-decomposition file to honor the command line input — MPP hybrid only.
Fix bugs for trimming (*DEFINE_CURVE_TRIM) and subsequent mesh checking (*CONTROL_CHECK_SHELL). Unwanted deletion of elements at the trimming line was likely to occur.
Suppress non-printing characters in *COMMENT text.
Fix problem in *PARAMETER substitution code:
wasn’t always replacing the proper number of characters.
Fix incorrect reporting of controlling timestep in MPP.
Fix a couple of problems related to the switch to 64 bit file offsets. In particular, the command line option x= was being ignored for some output files, including the component linking output file.
Fix a problem with doing restarts in some 2D applications.
Fix the stiffness of standard beam cross sections, ICST=14, 16, 17, 18, 21, and 22 on *INTEGRATION_BEAM. The location of some integration points was incorrect leading to the wrong stiffness.
Correct precision of frequencies on USA file.
Fix bug in converting internal to external number in keyword phase of adaptive steps (*CONTROL_ADAPTIVE).
Fix bug when using *SET_PART_LIST_GENERATE with *PART_COMPOSITE. The parts generated were incorrect.
Fix incorrect output to dyna.inc when using *INCLUDE_TRANSFORM for *ELEMENT_SEATBELT_RETRACTOR, *DATABASE_HISTORY_BEAM_ID and *NODE_SCALAR.
Fix missing lines in dynain (*INTERFACE_SPRINGBACK_LSDYNA) when using *ELEMENT_BEAM_ORIENTATION.
Fix for MPP contact and *USER_INTERFACE_FRICTION history variables: there was a conflict between the segment area storage and some scratch space used to gather the friction history, causing the segment areas to be overwritten with incorrect values.
Fix a bug in getting total response in *FREQUENCY_DOMAIN_FRF when base excitation is applied.