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

LS-DYNA V971 R5.1 (R5.64536) released

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

Version 971 R5.1 includes the following new features, enhancements, and significant corrections made since the release of R5.0.


  • Extended the BEM acoustic method, Rayleigh method to using SSD results as excitation.

  • Implemented panel contribution analysis to the Kirchhoff acoustic method.

  • Extended frequency domain FEM acoustic method to using SSD results as excitation.

  • Enabled the implicit mechanics eigensolver with acoustics.


  • Enabled 3D r-adaptive remeshing with solid elements to work with *INCLUDE_TRANSFORM.

  • Fixed a problem so the 2D r-adaptive and sensor definitions can be used simultaneously.

  • Fixed the possible creation of new nodes during adaptive remeshing with ID's that are already in use. In the original remeshing algorithm, the nodes associated with discrete beam elements and extra nodes, were not handled. In some cases, discrete beam elements and extra nodes are just hanging out there not connected to any solids or shells. For these cases, the new mesh may have nodal values that are the same as these discrete beams and extra nodes resulting in error termination when the analysis continues after remeshing.


  • Fixed an MPP problem to allow sensors to be used with more than one airbag.

  • Improved airbag venting when the airbag particle method is used.
  • Enabled the optional temperature of input gas versus time curve to work with Wang Nefske control volume airbag.
  • Added the ability to consider external air resistance in the *AIRBAG_PARTICLE method. The drag coefficient can be given in the keyword card and external air inertial will be applied to the bag to retard the motion.
  • Fixed the pressure calculation from the *AIRBAG_ADIABATIC_GAS_MODEL to prevent negative pressures.
  • The CPM particle internal energy is calculated by direct integration of Cp through temperature from 0 to the operational temperature. If the user defined a polynomial of Cp that is not a monotonically increasing function, the internal energy iteration would not converge for a temperature higher than the maximum. This caused an instability of the CPM algorithm while transferring energy during collision. This has been fixed by assuming a constant Cp= Cp_max after the maximum value of Cp is reached.  This allow users to use their quadratic Cp functions from other codes.


  • Fixed the constraints by BCTRAN and BCROT on *ALE_REFERENCE_SYSTEM_GROUP when the ALE mesh is moving.

  • Fixed the EBC option on *CONTROL_ALE for the use with pentahedral and tetrahedral elements.

  • Fixed the ALE_2D force calculation at points near the axis of symmetry for 2D solid elements of ELFORM=14.

  • Fixed a failure to remove segments from coupling by *CONSTRAINED_LAGRANGE_IN_SOLID when the associated beam elements are deleted.

  • Added a new mass scaling option for ALE, IMASCL=4 on *CONTROL_ALE.

  • Added a fragmentation option in ALE in *ALE_FRAGMENTATION. Rather than converting failed material to vacuum, the new method preserves the material volume and converts the volume expansion to vacuum. This simulates crack formation and conserves mass and momentum.

  • *ALE_FRAGMENTATION ammgfrom , ammgto, type
    ammgfrom: ALE multi-material group of the failed material
    ammgto:   ALE multi-material group of the vacuum
    type:     1. traditional convert failed to vacuum.
              2. new convert the expansion volume only.
  • Fixed ALE smoothing to assure the nodes belong to thick shell elements are treated as Lagrangian.

  • Implemented a variable friction option for ALE fluid-structure interaction, FRIC<0 on *COSTRAINED_LAGRANGE_IN_SOLID.  The absolute value of FRIC is a table ID. This option is for CTYPE=4 and 5 only.

  • Fixed a possible NaN error termination when using *MAT_016 (pseudo tensor) as an ALE part.


Boundary Conditions
  • Improved the treatment of birth and death times of prescribed motion constraints for the Lagrange Multiplier Treatment of joints for explicit calculations.

  • Fixed a problem where movement imposed by *BOUNDARY_PRESCRIBED motion was causing motion after *SENSOR_CONTROL turned it off at time 0.

  • Added body rotation sequence and rotations relative to another rigid body for *BOUNDARY_PRESCRIBED_ORIENTATION_RIGID.

  • Fixed a bug to prevent *BOUNDARY_SPH_FLOW from being applied to inactive SPH particles.

  • Fixed the velocity of flow in the first cycle for *BOUNDARY_SPH_FLOW.


Contact Options
  • Added MPP support for *CONTACT_CONSTRAINT types with 3D solid adaptive remeshing.

  • Added support for *CONTACT_2D_AUTOMATIC_NODE_TO_SURFACE with SPH particles.

  • Added a SHLEDG parameter to the optional card D of the *CONTACT card. This purpose of this optional parameter is to request no extension of shell edges during contact searching (the square edge option). This option is only valid for segment based (SOFT=2) contact.  A parameter by the same name already exists on *CONTROL_CONTACT, but now it exists on *CONTACT optional card D, which allows the value do be set for an individual contact interface.

SHLEDG on *CONTROL_CONTACT has 2 valid values
    .eq.0:  default, round edge
    .eq.1:  use square edges

  SHLEDG on optional card D, field 8 has 3 valid values.
    .eq.0:  use the *CONTROL_CONTACT value
    .eq.1:  use square edges
    .eq.2:  use round edges
  • Fixed MPP *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIEBREAK option 5: the symmetric treatment (which is not tied) was executing some of the "tied" code, resulting in random force spikes.

  • Improved MPP interference contact by extending the bucket sort region to account for the segment thickness of solid elements.  This improves the initial search to find deeply penetrated nodes.

  • Fixed MPP *CONTACT_CONSTRAINT, which was not properly handling shared nodes.

  • Modified MPP tied contact initialization.  For contacts that move the slave node onto the surface (non-offset types), nodes that are off the edge of the slave segment are projected onto the edge rather than the extension of the segment. This improves stability.

  • Improved MPP tied offset contact by minimizing spurious initial forces.

  • Improved the MPP parallel efficiency when there are multiple uses of guided cable contact.

  • Fixed a possible crash during initialization due to a memory error in *CONTACT_AUTOMATIC_BEAMS_TO_SURFACE.

  • Improved *CONTACT_AUTO_MOVE such that it is now possible to conduct gravity loading and binder closing in one single input deck for simulation in Implicit Static. Total simulation time will not be changed; time related to rigid body move of the tooling is eliminated during the simulation.

  • Added support for birth time in MPP implicit beam to surface contact.

  • Added a warning message when tied contact types 2, 6, or 7 attempts to tie a node to a segment which has some nodes that belong to rigid structures

  • Enabled interior contact for implicit calculations.

  • Added an option to not delete contact segments if a shell element fails. If all elements fail which share a common node, only then are the segments deleted.

  • Enabled in MPP the load curve option for contact bucket sort frequency.

  • Fixed contact CNCTO option of *CONTROL_SHELL when used with SOFT=2 contact in MPP.  Prior to fix, CNCTO had no affect.

  • Fixed the segment based contact periodic penetration check. It could crash when reporting solid element segments, but now does not report them since penetration of solid faces is routine.

  • Changed the behavior of SLDTHK in SOFT=2 contact.  Prior to this change, the thickness offset was equal to SLDTHK.  After this change, the thickness offset is 1/2 of SLDTHK so it behaves like SOFT=0,1 contact, where the offset is equal to the offset from a null shell of thickness SLDTHK.

  • Fixed quad to triangle segment switching option of segment based contact when contact surface input is by segment or element set.

  • Fixed the sliding option of segment based contact with triangular segments. The adjacent segment data on one edge was unavailable so the sliding option would sometimes fail to detect unreasonable penetration assumptions.

  • Fixed the segment based contact search for properly defined segments when they are attached to thick shell elements with top and bottom faces having 3 nodes: in other words, with connectivity of 1,2,3,3,4,5,6,6. The check was failing to find the elements and warning of improper segment connectivities.

  • Speed up MPP segment based contact by reducing wait times.

  • Fixed the negative AOPT option of materials 158, 221, 223, and user-defined materials when more than one part references the same material.

  • Fixed a bug in contact with solid elements with ELFORM 16 and 17

  • Added support for constraint type tied contacts in selective mass scaling.

  • Enabled eroding contact to work with 10 node tetrahedral elements in the MPP version.

  • Enhanced the contact penetration checking for implicit solutions.

  • Improved the treatment of birth and death times of tied contact in implicit solutions.

  • Improved the reliability of implicit tied contact in SMP.

  • Fixed the contact for implicit calculations run with IGNORE=1.  Prior to the fix, some parts were sticking.

  • Prevent crashes by preventing the use of PENOPT=4 for contact that involves solid elements.

  • Fixed a memory error that caused a crash when using the pressure dependent contact friction option enabled by FS=2 and FD=TABLE_ID

  • Fixed an error with noise in pressure dependent contact friction which could lead to an instability.

  • Fixed a problem with spurious stress in cycle 1 of solid tetrahedral element form 13, that occurred in a model with tied contact.

  • Improved the contact behavior of beam elements of *MAT_071 (cable).

  • Fixed an error termination bug in MPP *CONTACT_CONSTRAINT_SURFACE_TO_SURFACE with KPF=0.

  • Added MPP support for SPOTSTP=1 and 2 on *CONTROL_CONTACT


  • Add new keyword *DATABASE_FATXML: specific XML data lines are read and written (with include offsets) to a new file called D3PLOT.xml

  • Added an option to include stresses and strains induced by eigen, constraint, and attachment modes to the d3eigv and d3mode databases.

  • Added binary plot databases:

d3psd and d3rms for random vibration analysis
d3ftg for random fatigue analysis
d3ssd for response amplitude plot for SSD
d3spcm for response spectrum analysis
  • Added binout support for CURVOUT file.

  • Added binout support for new beam muscle data in the elout file

  • Added an echo of *DEFINE_FILTER data to the d3hsp file.

  • Added a new option (IEVERF) for *DATABASE_EXTENT_INTFOR

IEVERF 0-write multiple interface force output to one d3intf file
       1-write one interface force output for each d3intf file
  • Added support for output of the "damage" value in the "contact gap" location of intfor file, for MPP automatic_tiebreak types that have damage.

  • Enabled brick elements of material 2, 21, 23, 40, 91, 92, and 128 to output stress and strain in the local system when CMPFLG=1 on *DATABASE_EXTENT_BINARY.

  • Fixed output of eloutdet data to the MPP binout file.

  • Fixed matsum data in the binout file to prevent the program to hang when there are user-defined defined integration rules.

  • Fixed a possible memory error in MPP writing of binout files problems with adaptivity.

  • Fixed the d3part database generated by the MPP version.

  • Fixed the d3part database to correctly show 10 node tetrahedral elements.

  • Fixed the eloutdet database for MPP which was incomplete.

  • Fixed a bug that occurred when either the fsifor or blastfor database files had a different output frequency than d3plot.  The bug caused incorrect fsifor or blastfor xy-plots that looked like step functions.

  • Improved the internal energy reported to the matsum database for ALE multi-material groups.

  • Fixed the output to the abstat database for the case using load curve for the adiabatic gas model.

  • Fixed an error in the SECFORC database when more than on discrete element share a node.

  • Fixed sliding interface energy calculation for 2D tied contact. The outputted energy was wrong.

  • Fixed the strain output for 2D axisymmetric shells elements when used with *MAT_103 (anisotropic plastic).

  • Fixed the output of nodal rotations by the MPP version to the drdisp.sif file.

  • Enhanced encryption to allow the suppression of all output for a subset of parts. By invoking input encryption and output suppression together, it's possible to hide the geometry, material, etc. of specified parts from another analyst yet allow that analyst possession of the input so that he might modify or add to unencrypted portions of the model and run analysis. PSETID in
    *DATABASE_BINARY_D3PLOT identifies the part set containing the parts to be omitted from all output including D3PLOT. By including *DATABASE_BINARY_D3PLOT with a nonzero PSETID in an encrypted portion of the input, a safeguard is invoked that prevents PSETID from being reset elsewhere in the input.

  • Prevented the writing of zeros in the *SET_ cards of a dyna.inc file.

  • Fixed a problem of MPP implicit solutions terminating with MPI error messages. It now shuts down cleanly.

  • Fully support the TPRINT output in the binout database.

  • Added a new keyword, *CONTROL_CPM to control the CPM output format to d3plot.
     Eq.11(default) version 3, all data out
     Eq.21:         version 4, all data out
     Eq.22:                    coordinates only
     Eq.23:                    summary only
  • Fixed the cross section force reported for sections through type 16, 10 noded tetrahedron elements.

Define Options
  • Fixed a *DEFINE_CURVE problem which caused negative abscissa values to be ignored.

  • Fixed an error in the keyword reader of *DEFINE_CURVE_FUNCTION.

  • Added support for offsets and scale factors in *DEFINE_CURVE_FUNCTION.

  • Added rigid body displacement functions DXRB, DYRB, DZRB, and DMRB for *DEFINE_CURVE_FUNCTION.

  • Fixed an error in the digitized tables created from the curves used by 3D tables that were defined by *DEFINE_TABLE_3D.

  • Fixed a possible failure of *INITIAL_VELOCITY_GENERATION when used with rigid bodies with a small inertial tensor.

  • Added *ELEMENT_SHELL_COMPOSITE which allows an arbitrary number of thru-thickness integration points to be defined in shell elements that share the same part ID. This is available in SMP and MPP.

  • Added a new cohesive shell element, shell type 29.

  • Enabled offsets for discrete spring and damper elements during dynamic relaxation.

  • Added a TSHEAR flag to *SECTION_TSHELL. This parameter is used only thick shell formulation 5, and controls the assumption of the out-of-plane shear strain distribution. The default, TSHEAR=0, cause a parabolic assumption. If TSHEAR=1, the assumption is a constant distribution. The parabolic assumption is best when elements are used in a single layer. The constant assumption is best when elements are stacked on top of the other. The TSHEAR parameter is ignored when laminated shell theory is in use. Fixed the time step calculation for thick shell elements to ignore failed elements.

  • Fixed the MPP kinetic energy and eroded kinetic energy calculations for 2D shell section 14.

  • Enabled thick shell elements to be translated using *PART_MOVE.

  • Enabled the stacking of cohesive elements.

  • Added an option to delete free-flying shell elements that may appear as a result of element deletion due to negative Jacobians.

  • Added geometric stiffness for implicit calculations that use type 18 solid elements.

  • Fixed an error in *SET_DISCRETE_GENERATE causing a failure to generate all discrete elements.

  • Fixed implicit strain calculation for tetrahedral element forms 4, 16, and 17.

  • Fixed the strain tensor for the form 13 tetrahedral element.

  • Fixed the strain calculation for axisymmetric SPH elements.

  • Fixed an error in the viscosity force of 2D axisymmetric SPH.

  • Improved *PART_MOVE. When a part is moved, the node sets constrained to this part are also moved. This is necessary for draw bead definition.

  • Improved certain undercut problems in springback compensation. In a straight hat section, the draw wall is compensated vertically down if an undercut problem is detected.

  • Improved 3D trimming for forming calculations.  In some cases, the part was not completely trimmed when the part was complex or when the gap between trim lines and part was too big.

  • Fixed and improved *CONTROL_IMPLICIT_FORMING option 2, to help convergence in a multi-step roof crush simulation.

  • Fixed mapping with *INCLUDE_STAMPED_PART. Prior to the fix, when stress information was removed, the mapping could not continue.

  • Modified contact behavior when *CONTROL_IMPLICIT_FORMING is used. IGNORE is set to 1 to allow initial penetrations to remain, and SOFT is set to 0 for penalty contact.

  • Added a new keyword:  *CONTROL_FORMING_SCRAP_FALL. This feature enables contact-based transfer of tooling kinematics to sheet metal scrap. Scrap and parent part are initially constrained together until trim steel comes into contact with the scrap, at which point the constraints are released and scraps are free to fall.

  • Added a new keyword: *DEFINE_MULTI_DRAWBEADS_IGES. This new keyword allows multiple IGES curves to be defined with bead force and create and project them to tools for draw beads definition. Only one card is now needed for bead definition.

  • Added a new keyword: *DEFINE_COORDINATE_SYSTEM_IGES to define coordinate systems based on information specified in the supplied IGES file. After the coordinate system is generated, corresponding beam elements are also automatically generated for visualizing.

  • Added a new keyword: *CONTROL_FORMING_AUTO_NET: to automatically generate nets for springback measurements. An offset option allows nets to be generated that are offset a user specified distance from the sheet metal.

  • Added a new option (PERCT<0) for *DEFINE_CURVE_DRAWBEAD for which the absolute value of PERCT is the draw bead force.

  • Added a new keyword: *INCLUDE_COMPENSATION_SYMMETRIC_LINES. This keyword allows for springback compensation of double attached stamping tools accounting for symmetric conditions.

  • Added output of strain tensors when *INCLUDE_TRIM is used for sheet metal trimming.

  • Added a new feature to compensate springback in a localized region, defined by an inner curve and an outer curve. Related keywords include *INCLUDE_COMPENSATION_CURVE, *DEFINE_CURVE_COMPENSATION_BEGIN, and,

  • Added an option to *CONTROL_CHECK_SHELL which allows a part set to be checked. It is important for Tailor welded blanks. When PSID<0, the positive number is the part set ID and all elements with the PIDs in the defined part set will be checked and fixed.

  • Added a new keyword, *DEFINE_CURVE_FLC, which allows for defining the Forming Limit Curve (FLC) using sheet metal thickness and a strain hardening value 'n'. The FLC is calculated based on Issues on the AHSS Forming Limit Determination,
    Ming F. Shi, Shawn Gelisse, IDDRG 2006.

  • Added Method=-8 for *INTERFACE_COMPENSATION_NEW. It is used to calculate the trim die shape based on previous springback results.

  • Added new features for trim die compensation.

METHOD=-8 for *INTERFACE_COMPENSATION_NEW causes the trim die shape to be based on previous springback

To allow multi-step springback compensations in line dies, two new keywords were added,   
which are used together with *INCLUDE_COMPENSATION_DESIRED_BLANK_SHAPE, and, 
*INCLUDE_COMPENSATION_CURRENT_TOOLS, to calculate tooling shape for the next step.

Automatic iteration/accelerated compensation was added using new keywords
  • Added a new keyword *DEFINE_FRICTION_ORIENTATION to allow the friction coefficient to be changed based on orientations and contact pressure.

  • Added an keyword *CONTROL_FORMING_STONING which controls a calculation of surface lows or surface defects that are formed during metal stampint.

  • Enabled *CONTROL_IMPLICIT_FORMING to be used in a dynamic implicit calculation.

  • Added a new feature for *DEFINE_CURVE_TRIM_NEW: allow both seed node and in/out options.

Frequency options
  • Added a new keyword *FREQUENCY_DOMAIN_RANDOM_VIBRATION to run random vibration analysis.

  • Added an option _FATIGUE in *FREQUENCY_DOMAIN_RANDOM_VIBRATION to run random fatigue computations, based on Miner's rule.

  • Added *FREQUENCY_DOMAIN_SSD to run steady state dynamic analysis due to harmonic excitations.

  • Added keyword *FREQUENCY_DOMAIN_FRF to replace the old keyword *CONTROL_FREQUENCY_RESPONSE_FUNCTION (the old keyword still works).

  • Updated FRF to allow the usage of intermittent eigenvalues in FRF computation.

  • Added a new keyword *FREQUENCY_DOMAIN_RESPONSE_SPECTRUM to run response spectrum analyses.

  • Enhanced the outputting of the linear algebra components of implicit mechanics:

    • extended the output of eigenvectors to constraint and attachment modes
    • output the damping matrix terms for use by other applications
  • Enhanced control of the implicit time step via a load curve.

  • Fixed implicit spot weld constraints when the master node is a solid node.

  • Extend implicit constraint handling to properly handle thousands of prescribed motion constraints.

  • Fixed the brick spot weld assembly failure calculation for implicit solutions. Prior to the fix, failure history was updated each iteration leading to possible early failure of welds, and multiple failure messages.

  • Fixed a memory clobber error with implicit brick spot weld elements.

  • Improved implicit convergence of spot weld failure.

  • Fixed brick spot welds and assemblies with failure type other than option 8 and 12 when swforc output is not requested.  A failure to allocate sufficient memory caused spurious stress at the start of the calculation.

  • Enhanced implicit linearized parts.

Include Options
  • Added a new keyword:   *INCLUDE_PATH_RELATIVE which acts just like *INCLUDE_PATH except it prepends the directory portion of the input file name.  For example, if these lines appear in an input:



and the problem is run using:

ls971 i=../inputdir/problem.k


then the effect would be as if this was in the input:



This allows an input and its include files to be moved around and run from anywhere, 
without having to modify any *INCLUDE or *INCLUDE_PATH statements.
  • Added long format keyword input. For long format input, there are four fields per line with each field being 20 characters wide. Use as many lines as needed to complete each keyword. To use the long format, put either add the command line option, "long=yes", or add "long=yes" on the *KEYWORD line. You can toggle between long and short format by adding appending a "+" to any keyword to switch to long format, or a "-" to switch to short format.  For example

     lines of long format node data
     lines of short format element data
  • Added *REFERENCE_GEOMETRY to dynain files.

  • Fixed an a *RESTART error that occurred when the first run used encrypted input data.

  • Fixed the *KEYWORD_JOBID when the jobid includes space characters.

  • Fixed a bug in *PARAMETER_EXPRESSION if C option is used.

Initial Conditions
  • Modification for initialization of material direction values. If there are zeros in *INITIAL_STRESS_SHELL, then the values from
    the material card are kept.

  • Added an option to deactivate initial transverse shear stresses (shells). The flag is on *CONTROL_SHELL card 3, column 4:

ITSFLG = 0: keep transverse shear stresses
ITSFLG = 1: set transverse shear stresses to zero
  • Added *INITIAL_STRAIN_TSHELL to allow initial strains to be input for thick shell elements.

  • Added _START_TIME keyword option for *INITIAL_VELOCITY_GENERATION.

  • Added unit systems 1 thru 6 for *INITIAL_IMPULSE_MINE

  • Added a local coordinate system option to *INITIAL_VELOCITY

  • Added the ability to set internal energy density on *INITIAL_STRESS_SOLID to permit the variation of energy for equations of state.

  • Added an error check for missing mapping files when using *INITIAL_ALE_MAPPING.

  • Fixed CONTTYP=4 option on *INITIAL_VOLUME_FRACTION_GEOMETRY to match the manual definition of FILLOPT.

  • Fixed an error in the volume calculation when using *INITIAL_ALE_HYDROSTATIC.

  • Fixed the reading of part sets in the *INITIAL_STRESS_SECTION keyword when it lives in an include file used with *INCLUDE_TRANSFORM.

  • Modified *INITIAL_IMPULSE_MINE to gather nodes inside the plate thickness for solid elements.

  • Fixed the *INITIAL_STRESS behavior of *MAT_179 (hysteretic soil) elements that are initially yielded.

  • Fixed stress initialization by *INITIAL_STRESS_SOLID for solid *MAT_057 (low density foam) and *MAT_083 (Fu Chang foam) which had an incorrect deformation gradient.

  • Added *LOAD_BODY_GENERALIZED which allows the body force loads to be calculated to account for a prescribed base acceleration or a prescribed angular velocity over a subset of the complete system.

  • Added keyword *CONTROL_MPP_DECOMPOSITION_DISABLE_UNREF_CURVES. This new feature will disable the unreferenced time dependent load curve on each processor to reduce the memory location and evaluation of fval each cycle.  This
    currently works with curves defined in *LOAD_SHELL_ELEMENT, *LOAD_NODE and *LOAD_THERMAL_VARIABLE_NODE.

  • Added *LOAD_ERODING_PART_SET keyword to apply a pressure load to the exposed surface of solid element that may erode.

  • Added support for *LOAD_HEAT_CONTROLER for MPP solutions.

  • Added death time for pressures in *LOAD_BLAST.

  • Added pressure scale factors for *LOAD_BLAST_ENHANCED.

  • Added unit systems 6, 7, and 8 for *LOAD_BLAST_ENHANCED

  • Fixed the distribution of gravity load from *LOAD_GRAVITY_PART to the nodes of ELFORM=2 solid elements.  It is now consistent with the stress distribution.

  • Changed the behavior of the LCDD curve in *LOAD_MOVING_PRESSURE. Instead of using the same distance for every segment, use the distance on a per pressure segment basis.

  • Reprogrammed the user load set subroutine. It now has an example and includes the *USER_LOADING_SET ID number as an argument.

  • Fixed the external work calculation when *LOAD_MASK is used to apply a load.

  • Fixed the Mach number conversion factor for BLAST=3 of *LOAD_BLAST_ENHANCED allowing Mach numbers up to 0.99.

  • Fixed a problem affecting MPP *LOAD_BLAST_ENHANCED where combinations of segments from sets belonging to both shells and solids were not accommodated properly.

  • Fixed a memory problem for *LOAD_BODY_GENERALIZED_SET_PART.

  • Fixed a memory allocation error that could occur for user-defined loading.

  • Improved implicit gravity loading to have better correlation with experiments.

Material Models
  • New option for *MAT_036 and *MAT_243. R values can now be defined as functions of temperature and plastic strain. Therefore, the absolute values of negative R00, R45, and R90 must point to tables.

  • Added new option HR=9 to *MAT_036 and *MAT_243. With that, LCID represents a 3d table with temperature and strain rate dependence.

  • Modification for initialization of material direction values. If there are zeros in *INITIAL_STRESS_SHELL, then the values from
    the material card are kept.

  • Updates for *MAT_054.

1. If XC<0, Poisson's ratio becomes zero after failure in compressive fiber mode.
2. Corrected the behavior for the SLIMx values.
  • Added new material model *MAT_HILL_90 = *MAT_243. It is based on *MAT_036, but Barlat's yield function and flow directions are replaced by its counterpart from Hill (1990).


  • Fix for combination of Hughes-Liu beams with bulk viscosity (BTYPE>0) and *MAT_006 or *MAT_098.

  • Update for *MAT_133: Added optional flag ISCALE on Card 1, Column 8. Scaling of yield locus can be switched on (ISCALE=0, default) or off (ISCALE=1). If scaling is on, then the 00 direction (rolling direction) is the reference direction. If scaling is off, the reference direction can be arbitrary.

  • New option for *MAT_ADD_EROSION damage model GISSMO: Input parameter LCSDG (Card 3, Column 3) can now be a table. That table ID defines for each Lode angle value (between -1 and 1) a load curve ID giving the plastic failure strain versus triaxiality for that Lode angle.

  • Enable *MAT_ADD_EROSION damage model IDAM<0 to work with most shell and solid elements.

  • Update for *MAT_ADD_EROSION damage model GISSMO. New load curve for strain rate dependent scaling factor acting on failure strain: Card 4, Column 4 (after NAHSV).

  • *MAT_ADD_EROSION damage model GISSMO is now working for most solid elements and most thick shell elements.

  • Update for *MAT_058. When ERODS<0 is chosen, then another effective strain is calculated, which is closer to the real effective strain.

  • Added *MAT_241 (Johnson Holmquist JH1) for solid elements.

  • Added *MAT_245 (pml ortho/anisotropic elastic). Perfectly matched absorbing layer material for unbounded orthotropic and anisotropic media, similar to *MAT_230 (pml elastic) for isotropic elastic media. Input format is the same as *MAT_002 (ortho/anisotropic elastic).

  • Added *MAT_267 (eight chain rubber) for 2D axisymmetric element forms 14 and 15.

  • Added *MAT_272 (RHT) to model concrete structures that are subjected to impulse loading.

  • Added temperature dependence for solid *MAT_005 (soil and foam) and *MAT_057 (low density foam).

  • Added EPSF parameter, failure strain for *MAT_018, (power law plasticity). The element will be deleted when all integration points have failed.

  • Added a new keyword option _NLP_FAILURE to *MAT_037 (transversely anisotropic elastic plastic) which allows for a strain averaging for the calculation of the formability index.

  • Added extra terms to the Prony series for *MAT_076 (general viscoelastic).

  • Added a Prony series fit to *MAT_073 (low density viscous foam).

  • Added Cowper-Symonds rate sensitivity to *MAT_153 (damage 3).

  • Added a viscoplastic option to *MAT_081 (plasticity with damage) for solid elements.

  • Added support of *MAT_024 (piecewise linear plasticity) for Beltyschko-Schwer beam

  • Added *MAT_ADD_EROSION damage model GISSMO, by setting IDAM=1 or IDAM=-1.

  • Added a fracture energy based failure criterion to *MAT_ADD_EROSION.

  • Added protection against improper behavior when *MAT_ADD_EROSION is used with IDAM<0 and failure strain is extrapolated.

  • Improved the convergence of *MAT_024 (piecewise linear plasticity).

  • Added the Hansel hardening model to *MAT_133 (Barlat YLD 2000) as HARD=2.

  • Added an option for the Young's modulus to be a function of plastic strain in *MAT_133 (Barlat YLD 2000).

  • Enabled type 0 solid elements to be used for implicit solutions with *MAT_126 (modified honeycomb) and *MAT_201 (Arup honeycomb), and improved the implicit stiffness when *MAT_126 is used with other element types.

  • Enabled shell elements with *MAT_082 (plasticity with damage ortho) to be used in implicit solutions.

  • Enabled implicit solutions with beam element *MAT_156 (truss muscle).

  • Enabled implicit solutions with *MAT_007 (Blatz-Ko rubber) and shell elements.

  • Added equation of state *EOS_MIE_GRUNEISEN which is a Mie_Gruneisein equation of equation of state with the p-alpha model.

  • Added a new *MAT_USER_DEFINED parameter (LCMA) in the 6th field of card 2. LCMA is the length of the additional material constant array. This allows more material constants to be defined using additional input lines with 8 constants per line. The array is called CMA in the umat subroutines.

  • Fixed the non-reflecting boundary when used with *MAT_079 (hysteretic soil).

  • Fixed a bug in *MAT_192 (soil brick) affecting the unusual case when the stress in the soil exceeds the stress experienced in the pre-consolidation stage (as determined by input PCGL).

  • Fixed the density of *MAT_169 (Arup adhesive) when used with a unit change in *INCLUDE_TRANSFORMATION.

  • Fixed the post bucking damage calculation of *MAT_171 (concentric brace).

  • Improved the behavior of *MAT_191 (seismic beam) so that the response is less noisy.

  • Fixed *MAT_ADD_EROSION for the case of simultaneous use of the maximum principal strain criteria and the shear strain at failure. For this case, failure by the shear strain criteria was too soon. Also, fixed an overflow problem that occurred with ductile failure.

  • Improved the element deletion message for *MAT_126 (modified honeycomb) to include whether failure was by TSEF or SSEF.

  • Improved the implicit element stiffness matrix for solids and shells that use *MAT_089 (plasticity polymer).

  • Fixed the elout database when fully integrated shell elements are used with *MAT_058 (laminated composite fabric) or *MAT_158 (rate sensitive composite)

  • Fixed an error in *MAT_163 (crushable foam) that occurred when more than one table was in the data.

  • Fixed ductile damage in *MAT_159 (CSSM) concrete material for fully integrated brick elements. Prior to the fix, ductile damage occurred at only the first of the 8 integration points.

  • Fixed a bug that prevented shell elements from having *MAT_114 (layered linear plasticity) in some layers and other material types in other layers.

  • Modified thick shell forms 1 and 2 so that the time step deletion option of *MAT_058 (laminated composite fabric) will work correctly.

  • Fixed time step calculation of *MAT_223 (orthotropic advanced damage).

  • Fixed *INCLUDE_TRANSFORM for *MAT_034 (fabric) that is defined with negative load-curve IDs.

  • Fixed *MAT_083 (Fu Chang foam) for which had a problem with initialization when the negative TBID option was used.

  • Added an option for a more conservative stiffness calculation for *MAT_083 (Fu Chang foam).  If ED=-1 or KCON=-1, the new method is used.

  • Fixed an error that occurred when multiple *MAT_NON_LOCAL cards were defined with different damage parameter locations.

  • Improved the MIT failure model that may be called by user-defined materials.

  • Fixed 2D axisymmetric and plane strain elements when used with user-defined materials that have IORTHO=1.

  • Added a new cohesive law for EDF solid fracture simulation. It is the Tvergaard and Hutchinson type cohesive law.

  • Fixed an error in the calculated yield surface for solid elements with *MAT_142 (transversely isotropic crushable foam) when used with ANG=45 degrees.

  • Fixed implicit stiffness of *MAT_077 (hyperelastic).

  • Fixed the reading of card 4 of *MAT_135 (WTM STM).

  • Enabled more than 10 part ID's for parts using material types *MAT_103, *MAT_104, and *MAT_108.

  • Added a fix for an MPP problem related to nodal rigid bodies with two nodes where nodes were shared by processors.  Prior to the fix, if any such rigid bodies were deleted, an instability could result.

  • Improved the precision of inertia tensors of rigid bodies in the single precision version.

  • Fixed a problem with deformable to rigid switching that occurred with large set numbers.

  • Fixed the energy due to friction that is outputted flat rigid walls.

  • Corrected an error in *RIGIDWALL_GEOMETRIC_FLAT when nodes approached from behind the wall.

  • Fixed a file error that occurred during *RIGID_TO_DEFORMABLE switching with Win64 executables.

  • Added MPP support for the SPH in flow boundary condition.

  • A new SPH feature is implemented for *DEFINE_ADAPTIVE_SOLID_TO_SPH. This keyword has three modes.
mode 1: eroded solid elements will be replaced by SPH to keep mass and momentum conserved. 
mode 2: SPH elements are embedded in solid elements to provide a transition layer of 
        coupling to replace SPH-solid tied contacts 
mode 3: solid elements could be switched to SPH elements to carry large deformation 
  • Added *DEFINE_ADAPTIVE_SOLID_TO_SPH which allows solid element to be switched to SPH during a calculation. This works with eroding solids or non eroding solids.

  • Fixed a possible SPH segmentation fault by error terminating a job with fewer than 4 SPH particles.

  • Added an option to deactivate contact for SPH particles that have been deactivated.

  • Added support for V0 in equations of state (*EOS) when used with SPH. This enables initial pressure to be prescribed.

  • Added a new SPH/solid coupling type, ICPL=2 on *DEFINE_ADAPTIVE_SOLID_TO_SPH. For each hybrid element, the internal forces are calculated by SPH, and solid nodes are used for external forces, to enforce boundary conditions, and for contact.

  • Enabled 2D axisymmetric SPH to work in MPP.

Spot Welds
  • Added new spot weld damage parameter, DMGOPT on *MAT_100 (spotweld) which controls 6 damage options.
 0 - default - damage initiated by plastic strain, and damage is a
     function of plastic strain; this behavior is identical to past
     versions so back compatibility is maintained.
 1 - like option 0, but a force limiting function is used after damage
     initiation to prevent force growth.
 2 - damage initiated by plastic strain, but damage is a function of
     time; the force limiter is also used.
10 - like option 0, but damage is also initiated by the failure function
11 - like option 1, but damage is also initiated by the failure function
12 - like option 2, but damage is also initiated by the failure function

With damage options 0, 1, 10, and 11, RS is the rupture strain, and
RS-EFAIL must be a positive number.

With damage options 2 and 12, RS is the time from damage initiation to
failure, so RS must be a positive number.


  • Added DMGOPT parameter to argument list of user-defined spot weld failure routine.

  • Added MPP support for *CONTACT_SPOTWELD_TORSION.

  • Added a parameter, LUMPBC on *CONTROL_THERMAL_NONLINEAR which can be used to prevent an anomalous temperature that can occur when a segment with very high head flux is adjacent to a segment with zero heat flux. This situation is rare, and the option should be used only when needed, as it replaces the calculation of segment heat load using a simple average instead of shape function partitioning.

  • Enabled *BOUNDARY_THERMAL_BULKNODE to work in MPP.

  • Enabled *DEFINE_FUNCTION to be used with *LOAD_THERMAL_SHELL to generate heat for 2D elements, and 3D thin and thick shell elements.

  • Enabled 2D thermal contact to work when the contact interface has a birth time.

  • Enabled small deck restart of a thermal solution using keywords *DELETE_CONTACT, DELETE_PART, and DELETE_ELEMENT_option.

  • Added support of *DEFINE_FUNCTION when used with 2D heat transfer boundary conditions.

  • Fixed MPP segment based contact after a full deck restart. Failing to properly initialize arrays lead to memory errors and segmentation faults.

  • Fixed an MPP segment based contact full deck restart. It sometime failed during initialization.

  • Fixed the restart of solution that use *LOAD_BLAST_ENHANCED with ALE elements.

  • Reactivate *LOAD_SPCFORC.  In a full-deck restart, if the SPC's in the initial run have been removed, *LOAD_SPCFORC reads back and applies the SPC forces recorded in the initial run. This is helpful in soil-structure interaction problems where BOUNDARY_NON_REFLECTING is used.

  • Added the position and velocity of eroded nodes and elements to the restart files so they can be reset during a restart run.

  • Fixed an MPP error with _GENERATE option of element and node sets during small deck restart.

  • Fixed an MPP full deck restart error that occurred when *INTERFACE_LINKING_SEGMENT was in use.

  • Fixed an MPP restart bug for solutions that used EFG shells.

  • Fixed an inability of parts with *MAT_224 (tabulated viscoplasticty, tabulated Johnson Cook) to restart from a dynain file.

  • Fixed the intfor database which had problem with restart analysis.

  • Replaced keyword *CONSTRAINED_SPR3 by *CONSTRAINED_INTERPOLATION_SPOTWELD. The old one still works, too.

  • Duplicate nodes are deleted, when their distance falls below given tolerance of *NODE_MERGE_TOLERANCE.

  • Added new staged construction capability to do units changes and ID increments as with *INCLUDE_TRANSFORM.

  • Fixed a bug in staged construction that could have lead to spurious volumetric stresses when the model contains both active and dormant parts of the same material type.

  • Enabled user specified plate thickness and density to override the nodal mass based method of computing velocity in Westine's impulse model.

  • Fixed the way the MPP handles merged nodes created by *NODE_MERGE. Prior to the fix, a error termination was possible.

  • Enabled the use of curve functions for controlling DTMAX.

  • Fixed an error related to seat belt retractors referenced by belt sensor type 2. Also, corrected the belt mass.

  • Improved the behavior of SPH smoothing when a part has zero thickness.

  • Fixed a failure to include form 0 or 1 fabric elements in the time step calculation.


  • Fixed an error in the EFG eigenvalue solver.

  • Fixed *INCLUDE_TRANSFORMATION to use IDSOFF rather than IDNOFF for the negative SBRNID option of *ELEMENT_SEATBELT_SLIPRING.