Our website uses cookies. By using the website you agree ot its use. More information can be found in our privacy policy.

LS-DYNA R14.1.0 released (2023/12)

New version of LS-DYNA is released for all common platforms.

1. Release notes revision

This file constitutes revision 0 of the release notes for LS-DYNA version R14.1.0.


2. License

The string "REVISION 14" must appear in the LS-DYNA license file to run version R14.1.0. Please contact your LS-DYNA distributor or your Ansys sales representative if you need to have your license updated.


3. Documentation

The R14.0 User's Manuals provide documentation for R14.1.0. To download these manuals, go to https://lsdyna.ansys.com/manuals/. For features mentioned in these notes missing from the R14.0 User's Manuals, please refer to the DRAFT User's Manuals at https://lsdyna.ansys.com/manuals/. Please note that not all features in the DRAFT User's Manuals are available in version R14.1.0.


4. Notes

The remainder of this file briefly describes new features, enhancements, and bug fixes in version R14.1.0. Other recent releases may also include some of these updates.

We arranged the items by category. Understand that, in many cases, a particular item may pertain to more than one category. In the interest of brevity, we list each item only once, under a single category.


5. New

5.1. Acoustics, NVH, and Frequency Domain

  1. Added restart options RESTRT = 30 and -30 to *FREQUENCY_DOMAIN_ACOUSTIC_BEM to run BEM analysis based on user-provided velocity file bevel.lsda and bevelf.lsda, which are in lsda format. bevel.lsda saves time domain velocity data, and bevelf.lsda saves frequency domain velocity data.


5.2. ALE

  1. Added support for S-ALE mesh trimming to work with *BOUNDARY_AMBIENT.

  2. Implemented non-blocking MPP communication in the S-ALE mesh update, S-ALE FSI, and S-ALE point sources.

  3. Added support for mass scaling for S-ALE models.

  4. Added support for dynamic relaxation with S-ALE models.


5.3. Discrete Element Method

  1. Added new feature *DEFINE_DE_MESH_VOLUME to generate embedded DES particles inside solid elements for ICFD coupling


5.4. Elements

  1. Implemented fast shell type 30 (*SECTION_SHELL) based on fully integrated shell type 16 but only with two in-plane integration points, 1 and 3.


6. Improvements and Enhancements

6.1. Acoustics, NVH, and Frequency Domain

  1. Added support for CASE control for restart options RESTRT = 3 or -3 of *FREQUENCY_DOMAIN_ACOUSTIC_BEM.

6.2. Adaptivity

  1. Improved the adaptivity algorithm when using *CONTROL_ADAPTIVE with INMEMORY = 1 to ensure consistent adaptive results between in-memory and out-of-memory adaptivity in metal forming applications.


6.3. Airbags


    1. Support dynamic relaxation.

    2. Improved CPM-thermal coupling by using the CPM particle temperature as the gas temperature instead of the lumped gas temperature.  This change gives a better local heat transfer effect.

  2. For IAIR = 4 on *AIRBAG_PARTICLE, we added the following new features:

    1. Added field VNDAMP, which is a damping coefficient to suppress the motion in the fabric's normal direction.

    2. Added field DPWR to control the amount of pressure applied around unfolded region from inside to against ambient pressure.

    3. Added field IAIRSTAT to control the initial air particles passing through vents and porous media.

  3. With VANG = -2 under *DEFINE_CPM_VENT, you define the jet direction with nodes.  Originally all three nodes needed to be specified to determine the direction as it was orthogonal to the plane of the nodes.  Now, you only have to specify two nodes with the difference in the positions of the nodes giving the jet direction.

  4. Added keyword *DEFINE_CPM_SWITCH_REGION for omitting particle-to-particle collisions over specific time intervals in spherical regions of interest defined from a set of segments.

  5. Improved the behavior for determining the pressure difference for PPOP on *AIRBAG_PARICLE.  Previously, before reaching the pop pressure, the part pressure of the vent was zero.  The algorithm determining the pressure difference for PPOP then depended on how the airbag was modeled.  If an additional part was included near the vent, the part pressure of that part was used.  If not, the algorithm looked to see if a chamber was defined to determine the pressure at the vent.  If neither a chamber nor an additional part was defined, a noisy model was used to determine the pressure at the vent.  With this improvement, the pressure of the vent part is calculated in the same way as a regular part before reaching the pop pressure without requiring an additional part.  This algorithm has increased accuracy compared to not including an additional part or chamber.  It also no longer requires an additional part or a chamber.  Chamber definitions are now ignored, but additional parts are still used.



6.4. ALE

  1. Added support for *SET_SOLID_GENERAL for S-ALE mesh trimming.

  2. Check and fix numerical errors induced by advection for *MAT_GAS_MIXTURE with S-ALE that led to unreasonable internal energy.  This numerical issue led to instability in some models, usually airbag models.

  3. For S-ALE, check and limit the pressure applied by a non-reflective boundary (*BOUNDARY_NON_REFLECTING / *BOUNDARY_NON_REFLECTING_2D) to be no larger than that of the boundary element.


6.5. *BATTERY (Electrochemistry Solver)

  1. Made the new binout-type time history output mechanism for the new (in R14.0) battery solvers more robust.  This output is accessible with *BATTERY_DATABASE_HISTORY_ALLNDS_ON_ELESET, *BATTERY_DATABASE_HISTORY_GLOBALS, and *BATTERY_DATABASE_HISTORY_NODELIST_ON_ELESET.


6.6. CESE Compressible Fluid Solver

  1. Made changes to the immersed boundary method (IBM) FSI solver to improve robustness.


6.7. Constraint Cards

  1. For *CONSTRAINED_SOIL_PILE, added new input fields INSTRF and TIMSTR on Card 2 to control whether the sensitivity to soil stress acts according to the dynamically-varying soil stress or an initial stress that gets fixed at a user-specified time.

  2. Add new option to *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3): Scale factors SCARN/SCARS can now refer to curves by setting them to values less than 0.  These curves allow the scale factors to be functions of the state of the neighboring SPR3. Thus, the scale factors can reduce the strength as the SPR3 approaches failure.

  3. Added option SPRSMD to *CONTROL_CONSTRAINED.  This flag sets the "shear moment distribution" for SPR3 with:

    • SPRSMD = 0: Distributed as force pairs (new default), or

    • SPRSMD = 1: Distributed as nodal moments (old behavior).

      This flag acts as a bug fix with a fallback option.

  4. Added new interpolation method for *CONSTRAINED_SPR2 and *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3).  INTP = 3 applies quadratic weighting, meaning the scale factor increases with the squared distance from the center to achieve higher stresses at the connector periphery.

  5. Performance enhancement for *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3) and *CONSTRAINED_SPR2:  Replaced the brute force search with the bucket sort approach to reduce initial CPU time for large models.


6.8. Contact

  1. Reduced the memory allocated for initializing segment-to-segment (SOFT = 2) contact.

  2. Fine-tuned OpenMP directives for *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE, *CONTACT_AUTOMATIC_SINGLE_SURFACE, and *CONTACT_ERODING_(OPTION) to speed up hybrid performance.

  3. Added option SSFTYP = 2 for *CONTACT_... with SOFT = 2 to invoke using the smaller of the SSF values from *PART_CONTACT.  Already existing SSFTYP = 1 takes the larger value.

  4. Added large default values for the normal and shear failure of SMP *CONTACT_AUTOMATIC_..._TIEBREAK type contact.  This change enables these contact types to be used as a tied contact even if both values are input as 0.0. Before this change, they were behaving as regular sliding-type contacts.

  5. Output the initial penetration of contact nodes to the intfor file under the following conditions:

    • SOFT is set to 0 or 1 on the contact data cards,


    • SAPR = 1 or SBPR = 1 on the contact data cards.

Previously, the initial penetration was only nonzero in the intfor file for Mortar contacts.  Now it applies to all contacts unless

    • SOFT = 2, or

    • The contact is a "TIED" or "TIEBREAK" contact.

For these cases, the initial penetrations are zero in the intfor file.  Additionally, the output does not appear in the reference configuration (t = 0) but in the subsequent one, indicating that penetration information is not reported for the first configuration.


6.9. Control Cards

  1. Added support for *MAT_FU_CHANG_FOAM (*MAT_083) output when HISNOUT > 0 on *CONTROL_OUTPUT.

  2. Added flag COHEQC to *CONTROL_SOLID to control the COHesive Element Quality Check.  We added this check in 2020, which caused an error termination if LS-DYNA detected a bad quality (inverted element) in cycle 0 or 1.  This flag allows you to change the behavior for the check:

    • COHEQC = 0: Error termination as before (default)

    • COHEQC = 1: Warning and continue

    • COHEQC = 2: Warning with element erosion, continue

  3. Introduced OLDINTP on *CONTROL_MAT to use the old interpolation scheme for tables in *MAT_024.  With this, you can run old input decks with no change in results.

  4. Improved the keyword processing speed for *CONTROL_SPOTWELD_BEAM when only a subset of the beam spotwelds is converted to hex elements.
  5. Added the ability to consider the effect of dynamic viscosity on the critical time step (DTDYNV on *CONTROL_TIMESTEP).


6.10. Discrete Element Method

  1. Added option ISOFT to *DEFINE_DE_TO_SURFACE_COUPLING to improve contact between DES and the surface when the stiffnesses between these two materials are very different.

  2. Support redecomposition (*CONTROL_MPP_DECOMPOSITION_REDECOMPOSITION) with DEM for better MPP scaling.


6.11. Dual CESE Compressible Fluid Solver

  1. Made improvements to the two-phase immersed boundary method (IBM) solver, especially to correct inconsistent flux calculations.

  2. For improved code robustness, corrected some character string processing and added some extra initialization of memory handles.


6.12. Elements

  1. Changed how to compute the offset between the nodal and neutral planes in shell elements for estimating the critical time step.  Prior to this enhancement, we computed the offset using the mid-surface.  Now, we use the shell element neutral plane to improve time step estimations for elements where the neutral and mid-planes do not coincide.


6.13. EM (Electromagnetic Solver)

  1. Restructured some code to speed up solving for the vector potential.

  2. To save calculation time, perform mesh resistance output to em_circuit.dat files at each matrix recomputation.

  3. Improved the robustness of the 2D axisymmetric Eddy current solver electromagnetic contact feature.


6.14. Forming Analysis

  1. Parameters TENSOR and THKSCL of keyword *INCLUDE_STAMPED are now available for the MATRIX keyword option.


6.15. ICFD (Incompressible Fluid Solver)

  1. Improved the gap detection accuracy of *ICFD_CONTROL_GAP, especially at the intersection of the boundary layer and interior nodes.  Also, for FSI cases, stopped transferring the force from the fluid to the structure at the gap location so that only structural contact forces exist at the gaps.


6.16. Implicit (Mechanical) Solver

  1. Made performance improvement for SMP/hybrid builds when using MUMPS (LSOLVR = 30 on *CONTROL_IMPLICIT_SOLVER).


    1. The preconditioner now follows the ordering option from *CONTROL_IMPLICIT_ORDERING or *CONTROL_IMPLICIT_SOLVER.

    2. We added a clean error termination when the user requests an interval computation in MPP as this feature is currently unavailable.

    3. We improved the messages displayed to the screen and output in the messag file.

    4. We made performance improvements for SMP/Hybrid builds.

  3. Added check for whether a contact involves an end-of-beam node to vastly reduce the number of end-of-beam node not connected warnings.

  4. Improved error handling during the keyword reader phase for *CONTROL_IMPLICIT_ROTATIONAL_DYNAMICS and *CONTROL_IMPLICIT_SECTORAL_SYMMETRY.

  5. Added logic to left justify the matrix names from keyword input and the dmig files (NASTRAN) for *ELEMENT_DIRECT_MATRIX_INPUT when reading them.  This improvement makes input easier for the user as they do not have to have the same number of blanks before the matrix names.

  6. Added additional error checking to the MPP Lanczos eigensolver (*CONTROL_IMPLICIT_EIGENVALUE).  The MPP eigensolver was reporting errors and then continuing.  Now it terminates at the point of error detection instead of continuing.

  7. Patched MPP eigensolvers to deal with the case of the number of requested modes being greater than the matrix order (*CONTROL_IMPLICIT_EIGENVALUE).  This patch saves memory.

  8. Added the computation and output of modal participation factors and eigenvector scaling numbers for eigensolvers MCMS and LOBPCG (*CONTROL_IMPLICIT_EIGENVALUE) and for Sectoral Symmetry (*CONTROL_IMPLICIT_SECTORAL_SYMMETRY).

  9. Implemented outputting the implicit memory requirements for the case of intermittent eigenvalue analysis (*CONTROL_IMPLICIT_EIGENVALUE).

  10. Enhanced the direct linear equation solver performance in MPP by enabling the reuse of the symbolic processing from the previous factorization if the matrix structure has not changed.  See REUSE on *CONTROL_IMPLICIT_ORDERING.

  11. Implicit buckling (*CONTROL_IMPLICIT_BUCKLING), due to the internal sign convention for geometric stiffnesses, requires a sign change for the eigenvalues.  This enhancement was to apply the same sign change for the center frequency and interval specification from *CONTROL_IMPLICIT_EIGENVALUE.


6.17. Initial Cards

  1. Avoid unnecessary warning messages for unsupported solid element types not initialized with *INITIAL_HISTORY_NODE(_SET).


6.18. Isogeometric Analysis (IGA)

  1. Enabled constraint-type tied contact (*CONTRACT_TIED_SHELL_EDGE_TO_SURFACE) for IGA shells (*IGA_SHELL).  This feature is only available in MPP as groupable contact (GRPABLE = 1).

  2. Added support for outputting to d3part for IGA elements (*IGA_SHELL/SOLID).

  3. Added additional check for IRL = 2 (patch-wise reduced integration rule) on *SECTION_IGA_SHELL.  The patch needs to be untrimmed.


6.19. Load Cards

  1. For *LOAD_SEISMIC_SSI_DECONV, allow specifying the earthquake ground motion below the topmost elevation of the soil model.

  2. Support specifying the ground motion below the top surface with *LOAD_SEISMIC_SSI_DECONV.


6.20. Materials and Equations-of-State

  1. Added VOLFRAC to *MAT_ADD_DAMAGE_DIEM/GISSMO.  VOLFRAC in these keywords has the same functionality as VOLFRAC in *MAT_ADD_EROSION.  It is the volume fraction to fail before deleting a higher order or IGA element.

  2. Minor efficiency improvement for *MAT_ADD_DAMAGE_GISSMO: If LCREGD is a table, we only compute regularization factors for currently plastic integration points.


    • Maximum principal stress SIGP1 can now be a function of strain rate by specifying a negative load curve ID.

    • Enabled DTEFLT to be used with SIGP1 < 0 and SIGVM < 0.  DTEFLT is the strain rate filtering implemented for MXEPS < 0.  Now it is also available for the other two rate-dependent failure criteria.

    • Enabled part-wise definition of nonlocal energy criterion (parameters ENGCRT and RADCRT).   Up until now, only one global energy value could be defined (see Remark 1i in the manual for this material).  Now LS-DYNA takes each material card definition into account separately.

  4. Changed the threshold for adding an elastic link in viscoelastic laws of *MAT_ADD_INELASTICITY to practically always add an elastic link.  In some input decks, the threshold was too high.

  5. Allow large IDs (more than eight digits) for GAB and LCDFAIL in *MAT_058.

  6. Added option MODEL = 2 to *MAT_063.  This option provides a tension-compression asymmetric version of MODEL = 1 with one additional new parameter.

  7. Added viscoplastic option to *MAT_SAMP_LIGHT (*MAT_187L) invoked by RATEOP = 1.

  8. For *MAT_193 (*MAT_DRUCKER_PRAGER), changed the output history variables.  Previously, volumetric strain occupied the plastic strain slot in the output.  Now deviatoric plastic strain with the same definition as common materials such as *MAT_003 or *MAT_024 occupies that location in the output.  We reduced the number of extra history variables to eight (omitting some useless ones).

  9. For *MAT_215, added a check for proper fiber orientation definition.  LS-DYNA issues an error message for incorrect orientation.

  10. Added six new history variables to *MAT_240 invoked by mathrm{RFILTF} <= 0.  History variables 18 to 23 give the normal stress, tangential stress, normal force, tangential force, element area, and mode mixity.

  11. Support IRATE from *CONTROL_IMPLICIT_DYNAMICS in *MAT_240.  This flag is the rate effects switch.

  12. For *MAT_261 (*MAT_LAMINATED_FRACTURE_DAIMLER_PINHO), added ability to limit the stress reduction due to  damage, using DAF, DKF and DMF.

  13. For *MAT_280, enabled part-wise definition of nonlocal energy criterion (parameters ENGCRT and RADCRT).  Up until now, only one global energy value could be defined (see Remark 1) in the remarks section of *MAT_ADD_EROSION.   Now LS-DYNA takes each material card definition into account separately.

  14. *MAT_318 / *MAT_TNM_POLYMER can now set the temperature, theta, from thermal load cards.


6.21. Output

  1. For many MPP ranks, LS-DYNA can take too long to collect data for d3full. We added a new option to *DATABASE_BINARY_RUNRSF/D3DUMP for MPP/HYBRID to allow a different output frequency for d3dump (runrsf) and d3full (runfull).  The last D3FULL is always output if neither nofull nor norunfull is specified.

  2. The d3hsp mass output for lumped masses in single precision was inaccurate.  This particular code now uses double precision data for higher accuracy.

  3. The tied shell edge to solid contact is now labeled "h7" in d3hsp to distinguish it from tied shell edge to surface.

  4. Do not include added mass by Selective Mass Scaling (IMSCL on *CONTROL_TIMESTEP) in output of scaled mass to d3plot (MSSCL on *DATABASE_EXTENT_BINARY).


6.22. SPG (Smooth Particle Galerkin)

  1. Implemented the SPG method for multi-stage analysis (*INTERFACE_SPG_1/2) in single precision.  It was initially only available for double precision.

  2. Added error messages to tell users to define specific failure criteria in *SECTION_SOLID_SPG instead of *MAT_ADD_EROSION.


6.23. Thermal Solver

  1. For SOLVER = 12-16 and 18 (Conjugate Gradients with various preconditioners) on *CONTROL_THERMAL_SOLVER, improved the error message for a detected singularity.  The message advises the user that the model is probably underconstrained.

  2. Allow the combination of eroding structures with user-defined fluxes.


6.24. User-Defined Features

  1. Added output of the sharelib module file name.  LS-DYNA prints it to d3hsp, messag, and screen.


6.25. Miscellaneous

  1. Enabled restarts to work with FMI (*COSIM_FMI).

  2. Added command line option shell=16to30/shell=30to16 for switching between shell formulations 16 and 30 without changing the input deck.  LS-DYNA adjusts the cost of different formulations during decomposition for better parallel load balance.

  3. For *DEFINE_MATERIAL_HISTORIES added a history value summing operation for the load curve attribute (A1 < 0) of the History label.  To enable this option, set the first load curve ordinate value to 4.

  4. Extended list of function arguments for *DEFINE_CONNECTION_PROPERTIES with textrm{PRUL} >= 2 or *DEFINE_MULTI_SHEET_CONNECTORS to include the Young's moduli of the connection partners (flanges).  This extended list of arguments applies to the *DEFINE_FUNCTIONs that determine the material and failure properties.

  5. Added support for *CONSTRAINED_SPR2 to *DEFINE_HAZ_PROPERTIES.  Up until now, it has only been working with *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3).

  6. Provide temperature data to *DEFINE_CURVE_FUNCTION in structure-only simulations, a *LOAD_THERMAL option defines the temperature.  Previously, LS-DYNA could only provide temperature data to *DEFINE_CURVE_FUNCTION for thermal or coupled thermal-structure simulations.

  7. If multiple instances of *DEFINE_FRICTION have the same ID in an input deck, LS-DYNA uses the values from the first occurrence.


7. Bug Fixes

7.1. Acoustics, NVH, and Frequency Domain

  1. Fixed bug to properly read the *FREQUENCY_DOMAIN_SSD cards when using the long format input option long=s.

  2. For *FREQUENCY_DOMAIN_RANDOM_VIBRATION, fixed bug when using a single part as the load location for a random pressure.  Before this fix, using a random pressure only worked well when applied to the whole surface of the structure.  If applied to a part of the surface, LS-DYNA would error terminate.  Now it will run no matter where the random pressure is applied.

  3. Fixed errors in reading d3eigv for use by *FREQUENCY_DOMAIN_RANDOM_VIBRATION.  The reading error occurred for d3eigv files generated using settings specified with *DATABASE_EXTENT_BINARY_COMP.

  4. Fixed bug in reading the d3plot database by the fatigue solver (*FREQUENCY_DOMAIN_RANDOM_VIBRATION_FATIGUE) that occurred when extracting the GISSMO damage parameter.  LS-DYNA adds this parameter to the fatigue damage ratio to obtain the total damage ratio.

  5. Fixed a bug in the Kirchhoff method of *FREQUENCY_DOMAIN_ACOUSTIC_BEM in MPP.  Due to MPP decomposition, it is possible that one boundary element can not find its matching solid element on the same core.  We temporarily set 0 pressure for such boundary elements to avoid a segmentation fault error.

  6. Fixed bug in inverting the normals of boundary elements in MPP when NORM = 1 on *FREQUENCY_DOMAIN_ACOUSTIC_BEAM.  Previously, they were inverted twice.  With this fix, the normals are inverted only once.


7.2. Adaptivity

  1. Fixed a bug in adaptive mapping for r-adaptivity when some new surface nodes are outside of the old surface. The bug caused erroneous deformation

  2. Fixed a bug in contact segment updates in adaptivity which may lead to incorrect contact calculations when using *CONTROL_ADAPTIVE with INMEMORY = 1.

  3. Fixed a few bugs in adaptivity that may lead to segmentation fault errors in metal forming simulations when using *CONTROL_ADAPTIVE with INMEMORY = 1.

  4. Fixed a bug in 2D r-adaptivity with failure. The simulation stops progressing when failure occurs.  With the fix, the simulation can continue to normal termination.


7.3. ALE

  1. Fixed error in glstat for 2D S-ALE. A ny nodal-velocity-related values reported for 2D S-ALE models were wrong before this fix.

  2. Fixed bug in FSI for S-ALE.  If solid/tshell elements defined the Lagrange structure, LS-DYNA did not extract wedge/tetra segments correctly.

  3. Fixed bug in S-ALE mesh motion for OPTION = COVER_LAG on *ALE_STRUCTURED_MESH_MOTION.  LS-DYNA wrongfully took the default value of FRCPAD (the padding coefficient) as 1.0 instead of 0.1.

  4. Fixed bug in S-ALE mesh motion for OPTION = COVER_LAG on *ALE_STRUCTURED_MESH_MOTION.  Fault logic associated with the expansion (NODCEN) led to incorrect mesh motion in MPP runs.

  5. Fixed error in S-ALE 3D to 3D mapping.  The bug led to wrong results if the model in the first run contained Lagrange nodes.

  6. Fixed bugs in FSI with S-ALE that led to wrong results in fsifor.

  7. Fixed bug for 2D S-ALE using plane strain elements in models with rigid planes.  The bug led to wrong results.

  8. Fixed a bug in S-ALE for models that include *MAT_SPOTWELD.  The bug caused the model to crash.

  9. Fixed error in 2D S-ALE with non-reflecting boundary conditions.  An incorrect shear modulus calculation in the boundary elements led to wrong results/instabilities.

  10. Fixed bug in 2D S-ALE for FSI with erosion.  A memory bug and logic error caused wrong results.


7.4. Boundary Cards

  1. Fixed issue in *BOUNDARY_FLUX that prevented more than eight history variables from being read from the card.

  2. Fixed invalid error termination when using spc with birth/death (*BOUNDARY_SPC) in models with deformable to rigid.  The logic for checking the validity of the constraint was erroneous.


7.5. CESE Compressible Fluid Solver

  1. Fixed a memory leak in the immersed boundary method (IBM) FSI solver.


7.6. Constraint Cards

  1. Fixed RBE3 issue that could cause MPP processing failures if the model had a mix of *CONSTRAINED_INTERPOLATION and *CONSTRAINED_INTERPOLATION_LOCAL.

  2. Resolved the instability issue of *CONSTRAINED_BEAM_IN_SOLID_PENALTY with Mortar contact.

  3. *CONSTRAINED_JOINT_CONSTANT_VELOCITY behaves the same for the penalty and Lagrange multiplier formulations (LMF on *CONTROL_RIGID).

  4. Fixed issue with *CONSTRAINED_JOINT_RACK_AND_PINION that caused wrong results for implicit.

  5. Fixed an error in *CONSTRAINED_SPOTWELD_FILTERED_FORCE.  The bug caused the behavior of the weld to be wrong.

  6. Do not echo warning INI+485 when node 4 is not defined for *CONSTRAINED_JOINT_TRANSLATIONAL_MOTOR.


    • Removed an unnecessary error trap that prevented soil stress factors, such as KVSX, KVSY, and KVSZ, from differing from each other.

    • Fixed a bug that could cause jumps in the soil-pile coupling stress when using stress-sensitive properties.

  8. Format fix the structured input for *CONSTRAINED_SHELL_TO_SOLID with long=s.

  9. Corrected the behavior of *LOAD_BODY in conjunction with nodes involved in a *CONSTRAINED_INTERPOLATION.  Because of how mass was transmitted between independent and dependent nodes when using *CONSTRAINED_INTERPOLATION, the combination caused torques that should have been in the simulation to vanish.

  10. Fixed a bug in the implicit treatment of RBE3 (*CONSTRAINED_INTERPOLATION).  For many small RBE3s in a model (hundreds or thousands), the communication pattern in MPP could result in deadlock or segmentation violation.


7.7. Contact

  1. Minor fix for MPP *CONTACT_SINGLE_SURFACE_TIED, which was not tying nodes in some rare cases.

  2. Fixed MPP groupable tied contact error that could result in some cohesive elements not being detected as untied and hence not being deleted during initialization when they should be.  This error could have caused unusual model instabilities.

  3. Fixed bug for MPP groupable tied contact interacting with non-groupable tied contact.  The bug, in some cases, caused initial spot weld failure due to improper flagging of the nodes as not initially tied.

  4. Fix for possible deadlock in MPP when using *CONTACT_FORCE_TRANSDUCER.

  5. Made changes that affect contact stiffness when using selective mass scaling with the PSTIFF option of segment-to-segment contact.

  6. Fixed an MPP error that could cause a job to hang when using any of the following:

    1. DEPTH = 45 (Optional Card A on *CONTACT_OPTION),

    2. neighbor segment checking, or

    3. the sliding option.

  7. Fixed errors in 2D thermal contact (OPTION2 = THERMAL) with MPP that caused a wrong solution.

  8. Fixed the thermal option of *CONTACT_2D_AUTOMATIC_... when used with *SENSOR_SWITCH to turn it off.  Before the fix, thermal energy continued to transfer across the interface even when switched off.

  9. Fixed a segmentation fault that occurred when using Mortar contact in coupled thermal-structural simulations.

  10. Fixed segmentation fault error when coupling *CONTACT_2D_AUTOMATIC with the thermal solution and using explicit dynamics for the structural solution.

  11. Fixed errors in checking for contact for *CONTACT_2D_AUTOMATIC with node set input for MPP.  The bug caused LS-DYNA to check segments without nodes in the set for contact.

  12. Fixed segment-to-segment (SOFT = 2) contact initial penetration check and periodic intersection check.  It was likely to cause a segmentation fault.

  13. Fixed SMP contact when used with h-adaptive remeshing and outputting either frictional work calculations or peak pressure for the contact to the intfor file.

  14. Fixed bug affecting *CONTACT_TIED..._OFFSET on MPP only.  When the contact had nodes shared between SURFA and SURFB, the analysis could occasionally crash while reading the input files.

  15. Fixed orthotropic friction in Mortar single surface contact.  A memory flaw caused it not to work.

  16. Fixed dynamic friction bug in Mortar contact that was causing wrong results.

  17. Fixed memory flaw in Mortar contact with adaptivity that caused some inputs to blow up.

  18. Two fixes for drawbead contact (*CONTACT_DRAWBEAD) with in-core adaptivity:

    • Force GROUPABLE for drawbead contacts

    • Fix incorrect behavior of drawbead friction during adaptive steps

  19. Made update to MPP groupable drawbead contact (*CONTACT_DRAWBEAD), to ignore the surface orientation during the bucket sort. This change improves behavior for some models where the drawbead passes completely through the blank during the simulation.

  20. Fixed two errors in segment-based (SOFT = 2) contact. When DEPTH = 5 or 15, a failure to normalize a vector caused unpredictable edge-to-edge checking. Also, the area overlap scaling that is invoked by FNLSF > 0 and DNLSF = 0 was detecting mostly zero areas causing penetration when DEPTH = 5 or 15.


7.8. Control Cards

  1. Fixed calling erroneous keyword input error when activating NOCOPY on *CONTROL_SOLUTION.

  2. Fixed bug affecting models containing all of the following: pore fluid (*CONTROL_PORE_FLUID), thick shells (*ELEMENT_TSHELL), and thin shells (*ELEMENT_SHELL).  When run on more than one processor in MPP, d3plot contained corrupted shell element results.

  3. Fixed problem with DRCPSID on *CONTROL_SHELL.  Even if the part set referenced some parts and did not reference others, LS-DYNA could still have grouped parts together improperly.  This improper grouping caused LS-DYNA to apply the drill constraint where it should not or not apply it where it should.  This incorrect grouping only happened if all other properties of the two parts were the same.

  4. Fixed a long-standing bug for mass scaling of tetrahedral elements.  The algorithm computed the added mass based on the current element mass instead of the original element mass using the initial volume.  Comparison with hexahedral elements revealed that the mass scaling was incorrect, especially for large volume changes (like when foam gets compressed).  In such cases, the added mass was too small during compression and too large during unloading.

  5. Selective mass scaling (IMSCL on *CONTROL_TIMESTEP) did not work with deformable to rigid switching.

  6. Correctly read and use GMDT specified in *CONTROL_OUTPUT for *INTERFACE_SSI_AUX.  Previously, LS-DYNA ignored user-specified GMDT.

  7. Fixed *CONTROL_PORE_FLUID combined with either *DAMPING_PART_STIFFNESS or *DAMPING_FREQUENCY_RANGE_DEFORM.  The damping was ineffective in the parts containing pore pressure, even for shear stress components.


7.9. Discrete Element Method

  1. Made minor change to avoid deadlock while using DEM with *MAT_ADD_EROSION.


7.10. Dual CESE Compressible Fluid Solver

  1. Made several 2-phase multiphase code corrections related to pressure boundary conditions that fixed errors in the calculation.

  2. For binout time history outputs, removed outputs at potentially incorrect times and improved the robustness..

  3. Fixed the input defaults for *DUALCESE_CONTROL_LIMITER and *DUALCESE_SOLVER_SELECTION keyword cards.

  4. Fixed processing of the new time history output for the dual CESE cavitation solver.

  5. Corrected the material erosion update to the IBM FSI dual CESE solvers, and otherwise improved the robustness of these solvers.

  6. Corrected the 2D/3D dual CESE prescribed boundary conditions that use the "_VN" option.  The issue caused incorrect computation of the boundary conditions.

  7. Add some missing code affecting Mach number output that led to an incorrect value in some situations.

  8. For the dual CESE solver's IBM FSI material erosion support, fixed several bugs that made these capabilities more robust. In addition, we added a missing capability to correctly deal with material erosion when some eroding structural parts are excluded from the FSI calculation.

  9. Added many missing variable initializations that have not seemed to matter in the past.  These initializations appear to be correctly done for the Linux double-precision version of LS-DYNA when built with the Intel compilers. However, these initialization fixes seem to correct Dual CESE solver bugs in the Windows version of LS-DYNA.

  10. Reinstated the calculation of the shared node information, and fixed several other bugs that were causing the moving mesh method FSI solvers to fail in several cases.

  11. Fixed d3plot output for mass fraction and for these variables for the IBM FSI solvers:

    • Schlieren number

    • temperature

    • volume-fraction

    • Mach number

  12. Fixed the binout output of the following variables for the *DUALCESE_DATABASE_HISTORY_ELEMENT_SET card:

    • liquid mass fraction

    • vapor mass fraction

    • other-gases mass fraction


7.11. EFG (Element Free Galerkin)

  1. Fixed a bug in implicit EFG created in April 2022.  The implicit analysis error terminated when assembling the EFG stiffness matrix.


7.12. Elements

  1. Fixed issue to properly read in solid elements with 64 nodes using *ELEMENT_SOLID_H64 and solid elements with 40 nodes using *ELEMENT_SOLID_P40.

  2. Fixed issue in cohesive shell ELFORM = 29 where the element did not erode when neighbors eroded.

  3. Fixed output thickness of cohesive shell ELFORM = 29 in d3plot.

  4. Fixed erroneous deformation gradient in 2D axisymmetric elements.

  5. Fixed an error that could cause severe solid element distortion if HYDRO > 0 on *DATABASE_EXTENT_BINARY and EXACC > 0 on *CONTROL_ACCURACY.

  6. Fixed bug for the combination of *ELEMENT_T/SHELL_COMPOSITE and part sets.  Some part sets may have been incorrect.

  7. For shell and tshell composites (*PART_COMPOSITE(_TSHELL) and *ELEMENT_TSHELL/SHELL_COMPOSITE), relaxed check for material orientation definition to avoid writing of wrong and unnecessary warning messages (STR+1438).

  8. Fixed the mass property report for solid tetrahedral form 60 and also corrected the contact stiffness with form 60 for segment-based (SOFT = 2) contact.

  9. Fixed bug that caused oscillating forces in attached cable elements.  This bug applied to *ELEMENT_BEAM_PULLEY and *ELEMENT_BEAM_SOURCE.

  10. The presence of *ELEMENT_BEAM_PULLEY in the model was causing beam elements made of certain material types to disappear from the model on the first time step, irrespective of whether they were attached to pulley elements.  Affected material types include 191, 209, and potentially others that refer to the initial length of the element.

  11. Fixed bug for cases where initial forces in attached beam elements are not zero, such as due to *INITIAL_STRESS_BEAM or in multi-stage problems.  The bug caused the beam element forces to be (wrongly) reset to zero.


7.13. EM (Electromagnetic Solver)

  1. Fixed a bug in the Block Low-Rank LLT factorization (PRECOND = 4 on *EM_SOLVER_BEM) that could lead to wrong solutions for SMP/Hybrid builds.

  2. Specifying a nonzero value in field seven (DEATHT) of *EM_MAT caused extra verifications and checks that added calculation time even when the deatht feature was never triggered.  We have addressed this issue.

  3. In cases with imposed potential, the algorithm sometimes did not attribute the inductance calculation in an em circuit to the correct circuit.  This is now fixed.

  4. Fixed erroneously outputting the joule power instead of joule heating energy in the EM energy output file.

  5. Correctly take into account scale factors of B-H curves in *DEFINE_CURVE.

  6. Fixed broadcasting of AREATYPE in *EM_RANDLES_EXOTHERMIC_REACTION to all CPUs, which could cause wrong results in MPP.  Only CPU 0 had the value input for AREATYPE in the keyword deck.  All other CPUs had the default value.

  7. Fixed incorrect joule heating term calculation when conductive 3D shells were present in inductive heating problems.

  8. Fixed incorrect *EM_MAT_003 orientation issue that could cause a small problem in the electric field calculation.


7.14. Forming Analysis

  1. Fixed a memory clobber that caused metal forming problems that used trimming or lancing to error terminate.


7.15. ICFD (Incompressible Fluid Solver)

  1. The now fixed isotropic porous media solver was broken in R14.0.  The anisotropic porous media solver worked fine in R14.0.

  2. The introduction of *DEFINE_FUNCTION support in *ICFD_CONTROL_IMPOSED_MOVE introduced some issues when VADT or VADR is set to 1.  We have made some fixes here, but we recommend using VADT = 0 and VADR = 0 whenever possible.

  3. Solved the issue of an unstable pressure field in the case of 2-way FSI with the Windkessel outlet boundary condition (*ICFD_BOUNDARY_WINDKESSEL).


7.16. Implicit (Mechanical) Solver

  1. Fixed an MPP bug for EIGMTH = 102 on *CONTROL_IMPLICIT_EIGENVALUE that occurred for very large problems (textrm{ndof} \times {neig} > 256e6).  The issue led the run to crash.

  2. Fixed issue in *CONTOL_IMPLICIT_EIGENVALUE for MSTRES = 1 that caused LS-DYNA not to output the stresses to d3eigv for anisotropic materials correctly.

  3. Fix for the d3eigv database.  The elements referenced the wrong part ID.

  4. Corrections to *CONTROL_IMPLICIT_MODES and *CONTROL_IMPLICIT_MODAL_DYNAMICS for processing of solid element only models.  The issue led to a corrupted d3mode.  Also, some conflicts with stress specifications occurred.

  5. Corrected indexing error while loading masses for eigenvalue computations.  The issue could have led to skipping some nodal rotational inertias.

  6. Corrected error message for NaN detected in implicit.  The old message pointed to Rotational Dynamics instead of NaNs.

  7. Fixed error with mf2 sparse matrix multiplication when using only one processor in MPI.  The error caused the code to crash.  This error fix is important for the Parallel Lanczos eigensolver (*CONTROL_IMPLICIT_EIGENVALUE).

  8. Corrected the output of inertia relief forces to avoid replication across processes during MPP execution.

  9. Fixed triangle element type 4 so that it behaves linearly when using linear implicit.

  10. Fixed broken geometry stiffness of triangle element type 4.

  11. Corrected an error when including specific mass terms (*CONTROL_IMPLICIT_CONSISTENT_MASS) in the mass matrix for IGA.


7.17. Initial Cards

  1. Fixed a bug for *INITIAL_FOAM_REFERENCE_GEOMETRY that resulted in wrong results for solid element formulation 10.  We introduced the bug in January of 2021.

  2. Fixed issue in *INITIAL_STRESS_SECTION that caused the implicit solver to give the wrong internal energy for IZSHEAR = 0.

  3. Fixed issue in *INITIAL_STRESS_SECTION that caused the force to drop at the start of the implicit simulation after explicit dynamic relaxation.

  4. Fixed the writing of *INITIAL_STRESS_SHELL data for fully integrated 2D shell forms 13 and 15.


7.18. Isogeometric Analysis (IGA)

  1. Fixed bug in initialization for laminated shell theory (LAMSHT neq 0) with IGA shells (*IGA_SHELL) that could manifest in a segmentation fault in some models.  The bug had to do with incorrect mapping of user part IDs to internal part IDs and occurred with larger part IDs.

  2. Fixed bug in implicit for IGA shells without rotational degrees of freedom (ELFORM = 1 and 2 in *SECTION_IGA_SHELLS) for patches tied with *IGA_TIED_EDGE_TO_EDGE.  The bug caused the angle between patches tied with *IGA_TIED_EDGE_TO_EDGE not to be preserved.

  3. Avoid stack overflow that may happen in large models with *IGA_SHELL/SOLID and rigid walls (*RIGIDWALL).

  4. Properly synchronize shared interpolation nodes across processors for IGA solid elements (*IGA_SOLID) in MPP.

  5. Fixed bug in Mortar contact stiffness mapping from interpolation nodes back to control points for IGA shells and solids (*IGA_SHELL/SOLID) in MPP for implicit.  The bug could cause a segmentation fault.


7.19. Load Cards

  1. Fixed a bug in *LOAD_EXPANSION_PRESSURE that caused the application of the load to the wrong section.

  2. Fixed spurious Error 20246 (STR+246) due to round-off error when using *LOAD_MOVING_PRESSURE in single precision.


7.20. Materials and Equations-of-State

  1. Corrected outputting erroneous error for *MAT_ADD_COHESIVE when using the TITLE keyword option.
  2. Fix for large table ID (> 2^{24}) for Q1 < 0 on *MAT_ADD_DAMAGE_DIEM when using a single precision executable.

  3. Fix for the combination of *MAT_ADD_EROSION and *MAT_ADD_DAMAGE_DIEM.  In some instances, a criterion from *MAT_ADD_EROSION did not trigger failure because *MAT_ADD_DAMAGE_DIEM overwrote parameter NCS (number of failure conditions to satisfy) with the strain increment DEPS.

  4. Fix for *MAT_ADD_DAMAGE_GISSMO when used in a full deck restart.  Some variables (element size, reg. factor, and fading exponent) were not correctly initialized for newly added parts.
  5. Fix for *MAT_ADD_DAMAGE_GISSMO with textrm{LP2BI} <= 0.  The Lode parameter was not being correctly replaced by the bending indicator for LCREDG and FADEXP if needed.

  6. Added fix for the combined usage of *MAT_ADD_THERMAL_EXPANSION with *MAT_002 for shell and thick shell elements.  Before, the expansion in the shell plane was missing.

  7. Fixed the computation of the shear modulus for *MAT_016 needed for contact stiffness.

  8. Fixed issue with *MAT_024_LOG_INTERPOLATION with VP = 1 (table) for shell elements when using the implicit solver.  The algorithm used the same interpolation as in the negative first strain rate approach, but here we have "regular" strain rates with a logarithmic interpolation.

  9. Fixed bug for *MAT_034 with reference geometry.  Only the first element of each block of elements was checked in the element loop for having reference geometry.  It now checks all the elements in the group.

  10. Fixed the output of stress and strain to database files with *MAT_FABRIC (*MAT_034) with FORM = 12, 13, 14, -14, and 24 when CMPFLG = 0 on *DATABASE_EXTENT_BINARY.  Transformations were done incorrectly when the elements rotated.

  11. Fix for *MAT_036 with table LCID > 0 and HR = 3 (strain rates) or HR = 8 (temperature).  LS-DYNA did not consider FCTTIM and FCTTEM from *INCLUDE_TRANSFORM for the unit conversion.

  12. For *MAT_040, fixed potential divide by zero in dynamic relaxation with TRAMP = 0.

  13. Fixed incorrect moments/inertia/area output to secforc when using cables with *MAT_071.

  14. Fix for *MAT_074 with *INCLUDE_TRANSFORM.  The bug caused an incorrect transformation of the curve values (FLCID, HLCID, GLCID).

  15. Fixed bug in *MAT_079 (*MAT_HYSTERETIC_SOIL) relating to non-Masing damping (input field LCD).  This feature worked correctly up through R13 but not in R14.0.  The bug occurred only for nonzero LCD.  Symptoms of the bug include large nonphysical stresses appearing at the start of the simulation and different results on a different number of CPUs.

  16. For *MAT_079 (*MAT_HYSTERETIC_SOIL), fixed a bug affecting non-Masing damping (input field LCD) when more than 10 points are defined in the shear stress-strain curve.  This bug caused the requested damping in LCD not to have been applied correctly.  It was also causing the omission of warning message STR+1397 on some operating systems.
  17. Revised combination of *MAT_083_LOG_LOG_INTERPOLATION and implicit accuracy flag IACC = 1 (*CONTROL_ACCURACY).  The logarithmic interpolation was automatically deactivated.  It is now enabled again.

  18. Fixed bug affecting thick shell ELFORM = 5 or 7 (*SECTION_TSHELL) with material *MAT_084, *MAT_173, or *MAT_198.  When an element contains a crack, nonphysical stresses could develop in directions parallel to the crack plane.

  19. For *MAT_GENERAL_JOINT_DISCRETE_BEAM, fixed the positioning of the history variables for neighboring parts and failure. These could become offset, such as when using *DEFINE_MATERIAL_HISTORIES.
  20. Put yield stress on history variable #4 for *MAT_106.  The manual claimed it would be there, but that was only true for rare cases (shells with LCSIGY and ideal plasticity).

  21. Fix for unit conversion of table values (strain rates) in *MAT_133.  Table HARD < 0 should take FCTTIM from *INCLUDE_TRANSFORM into account.

  22. Allow the use of *MAT_133 and *MAT_135 with thick shells 3, 5, and 7.  Previously, this use resulted in a spurious error.

  23. Fixed a bug in strain rate dependent strength evaluation in *MAT_157 for the case where the natural logarithm of the strain rate is specified.  An incorrect evaluation occurred when the strain rate was 0.

  24. For *MAT_157, fixed a bug that occurred when initializing the stiffness through IHIS.  Our fixes include the following:

    1. adding proper initialization of parameters for laminated shell theory (shells),

    2. correcting contact stiffness (shells and solids), and

    3. correcting values for hourglass stabilization (solids).

  25. Fixed improper Poisson's ratio checks of materials *MAT_161, *MAT_162, and *MAT_219.  For orthotropic or anisotropic materials, there is no need to check that individual terms are between 0 and 0.5.
  26. Allow large function IDs (> 2^24) for some *MAT_169 entries using a single precision executable.  This bug affects negative input of TENMAX, GCTEN, SHRMAX, GCSHR, SHRP, SDFAC, and SGFAC.

  27. Fixed triggering an incorrect error, KEY+315, for *MAT_169, when SHRP equals 0.9.

  28. Fixed bug in *MAT_172 affecting thick shells (*ELEMENT_TSHELL) only. Certain functions requiring knowledge of element size did not work correctly:

    • If CHARL > 0, the post-crack tensile stress did not decay correctly with crack opening.  The response could even be perfectly plastic with no softening.

    • If AGGSZ > 0 and CHARL = 0, the maximum shear stress transferred across open cracks did not follow the expected relationship with crack opening.

  29. For material *MAT_173 and *MAT_198 with thick shells (*ELEMENT_TSHELL), the action of input parameter LOCAL was not as described in the manual: LOCAL = 0 gave the behavior expected for LOCAL = 1, while inputting LOCAL = 1 gave wrong results.  In practice, "global axis" behavior described in the manual for LOCAL = 0 is unlikely to be useful for thick shells.  Now, for *ELEMENT_TSHELL only, the input value of LOCAL is ignored, and the behavior expected for LOCAL = 1 is always obtained.

  30. For *MAT_193 (*MAT_DRUCKER_PRAGER), the time step calculation was not conservative, potentially leading to an unstable response.

  31. *MAT_197 (*MAT_SEISMIC_ISOLATOR) was generating spurious moments on node 2 of the discrete beam.  This bug existed in R12, R13, and R14.0.  A workaround was to apply rotational SPCs to node 2 of the isolator, but this method is only recommended if the new SPCs would not modify the behavior of the structure.
  32. *MAT_213:

    1. Fixed an issue with the damage variables.  In some rare cases, LS-DYNA could not have correctly retrieved the damage variables from the element integration point history.  An indication for these cases is a non-monotonic curve of damage variables over the simulation time obtained from the element integration point history.

    2. Fixed an issue with the Generalized Tabulated Failure Criterion (GTFC) enabled with FTYPE = 3.  Using the GTFC with strain-rate-dependent data could produce incorrect results if the corresponding tables have more than two curves.

    3. Fixed an issue with post-processing plastic strain.  LS-PrePost expects the plastic strain to be in a specific position in the history data to plot it as such.  Before, the plastic strain was only available as a history variable written out when parameter NEIPH/NEIPS in *DATABASE_EXTEND_BINARY was set.  Using *MAT_213 with *CONTROL_MPP_DECOMPOSITION_REDECOMPOSITION also requires this fix.

    4. Fixed an issue when using *MAT_213 with solid element type 2.  After a discussion with all contributors to *MAT_213, we decided to remove *MAT_213 from the B-bar treatment in solid element type 2.  For some test cases, users observed instabilities when using the B-bar feature with *MAT_213.

  33. Fixed issue in *MAT_215 (*MAT_4A_MICROMEC) when used with shell elements after dynamic relaxation.  The problem occurred when the part reached plastic deformation during dynamic relaxation and only happened when damping the part stiffness.  It resulted in the simulation crashing.

  34. For *MAT_215, using a 3D table for LCI could lead to incorrect results if the triaxiality table started with a negative value.

  35. Fixed bug for *MAT_224 and *MAT_224_GYS.  If LCI refers to *DEFINE_TABLE_3D, results could have been wrong if the triaxiality table started with a negative value.

  36. Fix for *MAT_224 when used in a full deck restart. Some variables (temperature and element size) were not correctly initialized for newly added parts.
  37. For *MAT_248, allow real-type input values on Cards 10 and 11.  Real-type led to an error while integer-type did not, and these fields are for real-type values.

  38. Fixed issue in *MAT_PAPER causing AOPT < 0 not to activate.

  39. Fixed issue in *MAT_HOT_PLATE_ROLLING/*MAT_305 where the residual convergence check led to premature termination.

  40. Fixed convergence issues where *MAT_HOT_PLATE_ROLLING / *MAT_305 failed to converge for single precision.
  41. Fix undesired transformations of *MAT_SPRING/DAMPER data.  Factors from *INCLUDE_TRANSFORM could have been applied to these keywords when they were not in the include file to be transformed.


7.21. MPP

  1. Fixed communication error in MPP *CONTACT_AUTOMATIC_SINGLE_SURFACE that occurred when enabling an FTORQ option.  This problem resulted in seg faults due to message size mismatch.

  2. Fixed MPP decomposition issue that prevented any model from running that contained both SPH and IGA elements.

  3. Corrected MPP issue for *PART_MODES where the part is on some processes but not others.  The bug led to fatal errors.

  4. Fixed MPP support for part numbers greater than 5 digits for *DEFORMABLE_TO_RIGID_AUTOMATIC.


7.22. Output

  1. Fixed MPP output of the d3part file, which was wrong if DCOMP (*DATABASE_EXTENT_BINARY, card 2, field 4) was input as < 2, and the model has rigid parts.

  2. Fixed behavior of *DATABASE_BNDOUT which was not properly honoring the OPTION2-OPTION4 fields on Card 1.

  3. Fixed a bug for tetrahedral elements that resulted in erroneous stress distribution output for *DATABASE_RECOVER_NODE.

  4. Fixed issue in *INTERFACE_SPRINGBACK for RFLAG = 1 that caused LS-DYNA to write *REFERENCE_GEOMETRY incorrectly to dynain_geo for MPP.

  5. Not printing nodal coordinates (IXYZ = 0 on *DATABASE_EXTENT_BINARY_COMP) did not work for eigenvalue analysis.

  6. Fixed a bug that causes negative kinetic energy in GLSTAT for models with only solid elements and *CONSTRAINED_INTERPOLATION.

  7. Fixed bug when using a dynain file from a previous analysis where the dynain file contained *INITIAL_TIED_CONTACT_DATA and some tracked nodes were too far from the segment to be tied.  In some cases, the analysis could crash.

  8. Fix for averaged nodal stress/strain output with *DATABASE_EXTENT_BINARY.  These are the options NODOUT = STRESS_GL, STRAIN_GL, and ALL_GL.  It was not correctly working with tetrahedral or pentahedral solids.

  9. Fixed broken output of higher order tets when using NINTSLD = 8 on *DATABASE_EXTENT_BINARY.

  10. Fixed OSU = 1 on *CONTROL_ACCURACY for higher order tets.  It was not applied correctly.

  11. Fixed memory reporting in d3hsp.  Previously, LS-DYNA reported the total memory as the same as the "Additional dynamically allocated memory."

  12. Fixed issue with *DATABASE_HISTORY_NODE for nodes that belong to accelerometers.  If the node belongs to an accelerometer, data from the largest MPP that contains the node but not the accelerometer is output to the database.  Otherwise, filtered data may end up in the database.

  13. If a dynain file is written (e.g., due to *INTERFACE_SPRINGBACK or *CONTROL_STAGED_CONSTRUCTION), the topology of beam elements attached to the pulley was written incorrectly to the dynain file.

  14. If the analysis starts from a nonzero time (e.g., in a staged construction analysis), the contact force file output by including *DATABASE_BINARY_INTFOR contained a very large number of states instead of what the user requested.


7.23. Restarts

  1. Fixed inconsistent internal energy in a remap restart run with q=remap on the command line.


7.24. Sensors


    1. Fixed a bug for TYPE = BPSM that, in implicit simulation, resulted in erroneous results.

    2. Fixed a bug for type 2 and 3 pretensioners that happened when TYPE = BELTPRET.  The bug was introduced in November 2019 and could lead to an unexpected status change of the pretensioner.

    3. Fixed a bug for TYPE = CONTACT for thermal-only simulation.  The bug causes LS-DYNA to fail to turn off the contact as designed.

    4. Fixed a bug for TYPE = JOINT that happened when the joint is a motor joint.  It prevented the joint from failing as designed.


7.25. SPG (Smooth Particle Galerkin)

  1. Fixed unmatched parameters in read-in and memory access violation for MPP ISPG so that the MPP job can terminate normally.


7.26. SPH

  1. Fixed issue where LS-DYNA renormalized SPH axisymmetric formulations when FORM in *CONTROL_SPH was nonzero in SMP.  Now, LS-DYNA only renormalizes for FORM set to 1, 3, 6, 8, or 16.

  2. Fixed issue where temperatures of SPH particles specified through *LOAD_THERMAL_VARIABLE_NODE were not properly updated.

  3. Corrected a miscalculation affecting particle shifting activated by setting ISHIFT to 1 in *CONTROL_SPH.


7.27. Thermal Solver

  1. For SOLVER = 12-16 and 18 (Conjugate Gradients with various preconditioners) on *CONTROL_THERMAL_SOLVER, fixed an MPP bug where the solver would hang if a subset of processors detected a singularity.

  2. Fixed error causing the iterative solver to use obsolete CGTOL if defined instead of the default value of RELTOL when reltol is left blank in *CONTRL_THERMAL_SOLVER.

  3. Corrected handling of thermal boundary conditions (convection and radiation) in the case of adaptivity.

  4. Set the default value for the time scale factor, TSF, in *LOAD_THERMAL_BINOUT to 1.0.

  5. Fixed an inconsistency in the birth/death times for temperature boundary conditions when using the thermal solver (*BOUNDARY_TEMPERATURE).   LS-DYNA evaluates the birth/death condition at the end time of the time step, but before the fix, the time integration parameter (TIP on *CONTROL_THERMAL_SOLVER) erroneously affected the condition.

  6. Fixed bug for a full deck restart with thermal solver. When the time stepping is controlled by load curves (for dt, dtmax, dtmin, or tmax) in the restart input, the load curve data was probably incorrectly read.

  7. Fixed bug in tprint output (to ASCII and binout).  The bug led to an inconsistency in the output with respect to the number of thermal boundary conditions. Multiple boundary conditions of the same type assigned to the same segment set resulted in a segmentation fault of the l2a tool.  Now for multiple boundary conditions defined on one segment set, the data for the heat transfer from the boundary condition is given individually for each condition.

  8. Fixed a bug when filtering the dangling nodes out of the temperature boundary conditions.  It resulted sometimes in very strange temperature distributions in MPP.

  9. Fixed an issue for redundant constraints in the thermal solver.  Now we make sure that *BOUNDARY_TEMPERATURE_RSW does not constrain 'top' and 'bottom' temperatures of nodes that are not attached to a thermal thick shell.


7.28. User-Defined Features

  1. Fixed issue where *MODULE_PATH was not read if LD_LIBRARY_PATH was empty.

  2. Fix for two potential problems with LD_LIBRARY_PATH (MPP sharelib versions) that led to the user subroutine not being loaded:

    1. There was a problem if '::' (double colons) was used to separate paths.

    2. Another problem was repeated paths, which has been broken since 2020.


7.29. Miscellaneous

  1. Fixed a bug that might lead to abnormal termination with error message 20018 when using *SET_NODE_ADD.

  2. Fixed a flaw that led to hex element spot weld assemblies not failing correctly unless SWFORC output was requested with *DATABASE_SWFORC.

  3. Fix for combination of *DEFINE_MULTI_SHEET_CONNECTOR with *DAMPING_PART_STIFFNESS and RYLEN = 2 (*CONTROL_ENERGY).  This combination did not work.

  4. Fix for *PART_STACKED_ELEMENTS when used with *SET_PART.  Part sets are modified if they contain PIDREF to add the newly generated parts instead.  But the removal of PIDREF itself was missing.

  5. Fixed reinitialization issue with the flag that controls output of the "relax" file during dynamic relaxation. It was not properly set up for *CASE support, so only the first *CASE having dynamic relaxation was writing this file.

  6. Downgraded Error to Warning when using reserved parameter names in a parameter defined with *PARAMETER.

  7. Deactivate options Principal and Max Stress Range on *DEFINE_MATERIAL_HISTORIES during dynamic relaxation.  Also, make sure these are reset at time zero.