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

LS-DYNA R9.0.1 (R9.109912; 2016/08) released

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

Release notes for Version R9.0.1/R9.0.0.

Herein are summarized most of the new features, enhancements, and significant corrections made since the release of version R8.1.0. These notes are arranged by topic.  Understand that in many cases, a particular note may have applicability to multiple topics. Each item is listed only once, under a single category.

.

Airbag
  • Disable CPM airbag feature during DR and reactivate in the transient phase.
  • *AIRBAG_WANG_NEFSKE_POP_ID pop venting based on RBIDP is now supported correctly (MPP only).
  • *AIRBAG_INTERACTION:
    • Fixed MPP airbag data sync error to allow final pressure among interacted airbags to reach equilibrium.
  • *AIRBAG_PARTICLE:
    • When IAR=-1 and Pbag or Pchamber is lower than Patm, ambient air will inflate the bag through external vents and also fabric porosity.
    • Treat heat convection when chamber is defined.
    • Output pres+ and pres- to CPM interface forces file for internal parts.
    • Allow IAIR=4 to gradually switch to IAIR=2 to avoid instability.
    • Allow using shell to define inflator orifice. The shell center and normal will be used as orifice node and flow vector direction.
    • Bug fix for porous leakage for internal fabric parts using CPM.
    • New feature to collect all ring vents into a single vent in order to correctly treat enhanced venting option. All the vent data will only be output to the first part defined in the part set.
    • Evaluate airbag volume based on relative position to avoid truncation. The bag volume becomes independent of coordinate transformation.
    • Support explicit/implicit switch and dynamic relaxation for *AIRBAG_PARTICLE.
    • Support vent/fabric blockage for CPM and ALE coupled analysis.
    • New option in *CONTROL_CPM to allow user defined smoothing of impact forces.
  • Fixed bug affecting *AIRBAG_PARTICLE_ID with PGP encryption.

.

ALE
  • *ALE_REFERENCE_SYSTEM_GROUP:
    • For prtype=4, allow the ALE mesh to follow the center of mass of a set of nodes.
  • *CONTROL_ALE:
    • Add a variable DTMUFAC to control the time step related to the viscosity from *MAT_NULL (if zero, the viscosity does not control the time step).
    • Implement a 2D version of BFAC and CFAC smoothing algorithm.
  • *ALE_SMOOTHING:
    • Automatically generate the list of 3 nodes for the smoothing constraints and implement for MPP.
  • *SECTION_ALE2D, *SECTION_SOLID_ALE:
    • Allow a local smoothing controlled by AFAC,...,DFAC.
  • *ALE_SWITCH_MMG:
    • Allow the variables to be modified at the time of the switch.
  • *CONTROL_REFINE_ALE:
    • Add a variable to delay the refinement after removal (DELAYRGN), one to delay the removal after the refinement (DELAYRMV), and one to prevent any removal in a certain radius around latest refinements (RADIUSRMV).
  • *ALE_STRUCTURED_MESH:
    • Implemented structured ALE mesh solver to facilitate rectilinear mesh generation and to run faster.

.

Boundary
  • *BOUNDARY_AMBIENT_EOS:
    • Implement *DEFINE_CURVE_FUNCTION for the internal energy and relative volume curves.
  • *BOUNDARY_AMBIENT:
    • Apply ambient conditions to element sets.
  • Fix for adaptivity dropping SPCs in some cases (MPP only).
  • Added conflict error checking between rigid body rotational constraints and joints between rigid bodies (*CONSTRAINED_JOINT) with *BOUNDARY_PRESCRIBED_ORIENTATION. The first rigid body of the prescribed orientation cannot have any rotational constraints. Only spherical joints or translational motors can be used between the two rigid bodies of the prescribed orientation. For now explicit will be allowed to continue with these as warnings. Implicit will terminate at end of input checking.
  • Instead of error terminating with warning message, STR+1371, when *BOUNDARY_PRESCRIBED_MOTION and *BOUNDARY_SPC are applied to same node and dof, issue warning message, KEY+1106, and release the conflicting SPC.
  • Fix erroneous results if *SET_BOX option is used for *BOUNDARY_PRESCRIBED_MOTION.
  • Fix *BOUNDARY_PRESCRIBED_ACCELEROMETER_RIGID for MPP. It may error terminate or give wrong results if more than one of this keyword are used.
  • Fix segmentation fault when using *BOUNDARY_PRESCRIBED_ORIENTATION with vad=2, i.e. cubic spline interpolation.
  • Fix incorrect behavior if multiple *BOUNDARY_SPC_SYMMETRY_PLANE, i.e. >1, are used.
  • Fix incorrect motion if *BOUNDARY_PRESCRIBED_MOTION_RIGID_LOCAL is on a rigid part which is merged with a deformable part that has been switched to rigid using *DEFORMABLE_TO_RIGID.
  • Fix incorrect external work when using *BOUNDARY_PRESCRIBED_MOTION with or without _RIGID option. The dof specified in *BOUNDARY_PRESCRIBED_MOTION was not considered when computing the external work. Also, when multiple *BPM applied to the same node/rigid body with different dof may also cause incorrect computation of external work.
  • Fix incorrect velocities when using *BOUNDARY_PRESCRIBED_MOTION_RIGID_LOCAL and *INITIAL_VELOCITY_RIGID_BODY for rigid bodies.
  • Implement check for cases where *MAT_ACOUSTIC nodes are merged with structural nodes on both sides of a plate element and direct the user to the proper approach to this situation - *BOUNDARY_ACOUSTIC_COUPLING.
  • *BOUNDARY_ACOUSTIC_COUPLING with unmerged, coincident node coupling now implemented in MPP.
  • MPP logic corrected so *MAT_ACOUSTIC and *BOUNDARY_ACOUSTIC_COUPLING features may be used with 1 MPP processor.
  • Fixed bug for *BOUNDARY_PRESCRIBED_MOTION if part label option is used.

.

Blast
  • Improve *LOAD_BLAST_ENHANCED used with ALEPID option in *LOAD_BLAST_SEGMENT:
    • Rearrange the ambient element type 5 and its adjacent element into same processor to avoid communications.
    • Eliminate several n-by-n searches for segment set and ambient type 5 with its neighboring elements to speed up the initialization.
  • Change the name of keyword *DEFINE_PBLAST_GEOMETRY to *DEFINE_PBLAST_HEGEO. Both names will be recognized.

.

CESE (Compressible Flow Solver)
  • Modified the CESE moving mesh CHT interface condition calculation to deal with some occasional MPP failures that could occur with mesh corner elements.
  • Improved the CESE spatial derivatives approximation in order to bring better stability to the CESE solvers.
  • The 3D SMP and MPP CESE immersed boundary solvers now work with structural element erosion.
  • A new energy conservative conjugate heat transfer method has been added to the following 2D and 3D CESE Navier-Stokes equation solvers:
    • Fixed mesh (requires use of *CESE_BOUNDARY_CONJ_HEAT input cards)
    • Moving mesh FSI
    • Immersed boundary FSI
  • Prevent the fluid thermal calculation from using too short a distance between the fluid and structure points in the new IBM CHT solvers.
  • In the underresolved situation, prevent the CHT interface temperature from dipping below the local structural node temperature.
  • Add detection of blast wave arrival at CESE boundary condition face first sensing the leading edge of the pulse (used with *LOAD_BLAST_ENHANCED).
  • Set CESE state variable derivatives to more stable values for the blast wave boundary condition.
  • Corrected time step handling for the CESE Eulerian conjugate-heat transfer solver. This affected only the reported output time.
  • Added CESE cyclic BC capability to the moving mesh CESE solver.
  • Fixed some issues with 2D CESE solvers where the mesh is created via *MESH cards.
  • For the CESE solver coupled with the structural solver (FSI), corrected the time step handling.
  • For the CESE mesh motion solvers, and the ICFD implicit ball-vertex mesh motion solver, added a mechanism to check if all of the imposed boundary displacements are so small that it is not necessary to actually invoke the mesh motion solver. This is determined by comparing the magnitude of the imposed displacement at a node with the minimum distance to a virtual ball vertex (that would appear in the ball-vertex method). The relative scale for this check can be input by the user via field 4 of the *CESE_CONTROL_MESH_MOV card.
  • Changed the NaN check capability for the CESE solvers to be activated only upon user request. This is input via a non-zero entry in field 7 of the *CESE_CONTROL_SOLVER card.
  • Much like the ICFD solver, added a mechanism to adjust the distance used by the contact detection algorithm for the *CESE_BOUNDARY_FSI cards, as well as the new moving mesh conjugate heat transfer solvers. This is available through field 6 of the *CESE_CONTROL_SOLVER card.
  • Added a correction to the moving mesh CESE solver geometry calculation.
  • Corrected the initial time step calculation for both the 2D and 3D moving mesh CESE solvers.
  • For the moving mesh CESE solver, replaced the all-to-all communication for fsi quantities with a sparse communication mechanism.

.

Chemistry
  • The immersed boundary FSI method coupled with the chemistry solver is released.
    • Only Euler solvers, both in 2D and 3D, are completed with full chemistry.
    • Using this technique, CESE FSI Immerged Boundary Method coupled to the chemistry solver can be applied to high speed combustion problems such as explosion, detonation shock interacting with structures, and so on.
    • Some examples are available.

.

Contact
  • Fix MPP groupable contact problem that could in some cases have oriented the contact surfaces inconsistently.
  • Fix bug in *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIED_WELD.
  • Fix seg fault when using *CONTACT_AUTOMATIC_SINGLE_SURFACE_TIED with consistency mode, .i.e. ncpu<0, for SMP.
  • Fix false warnings, SOL+1253, for untied nodes using *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIEBREAK and *CONTACT_AUTOMATIC_ONE_WAY_SURFACE_TO_SURFACE_TIEBREAK.
  • Fix *CONTACT_TIED_SHELL_EDGE_TO_SURFACE when rigid nodes are not tied even when ipback=1. This applies to SMP only.
  • Issue warning if SOFT=4 is used with an unsupported contact type, and reset it to 1.
  • Change "Interface Pressure" report in intfor file from abs(force/area) to -force/area, which gives the proper sign in case of a tied interface in tension.
  • Increase MPP contact release condition for shell nodes that contact solid elements in SINGLE_SURFACE contact.
  • Fix for MPP IPBACK option for creating a backup penalty-based tied contact.
  • Fix for MPP orthotropic friction in contact.
  • Fix for MPP *CONTACT_SLIDING_ONLY that was falsely detecting contact in some cases.
  • Skip constraint based contacts when computing the stable contact time step size.
  • Add error trap if node set is input for slave side of single surface contact.
  • MPP:
    • some fixes for constrained tied contact when used with adaptivity. The behavior of the slave nodes in adaptive constraints was not correct if they were also master nodes of a tied interface. This has been fixed, and support for the rotations required for *CONTACT_SPOTWELD have also been added.
    • update to AUTOMATIC_TIEBREAK option 5 to release the slave nodes (and report them as having failed) when the damage curve reaches 0.
    • fix for strange deadlock that could happen if a user defines a *CONTACT_FORCE_TRANSDUCER that has no elements in it and so gets deleted.
    • add frictional work calculation for beams in *CONTACT_AUTOMATIC_GENERAL.
  • Fix made to routine that determines the contact interface segments, which was not handling pentahedral thick shell elements correctly.
  • MPP contact:
    • add support for *DEFINE_REGION to define an active contact region. Contact occurring outside this region is ignored. This is only for MPP contact types:
      • *CONTACT_AUTOMATIC_SINGLE_SURFACE
      • *CONTACT_AUTOMATIC_NODES_TO_SURFACE
      • *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE
      • *CONTACT_AUTOMATIC_ONE_WAY_SURFACE_TO_SURFACE
  • MPP fix for table based friction in non-groupable contact.
  • Added new option "FTORQ" for contact. Currently implemented only for beams in *CONTACT_AUTOMATIC_GENERAL in MPP. Apply torque to the nodes to compensate for the torque introduced by friction.
  • Issue error message when users try to use SOFT=2/DEPTH=45 contact for solid elements.
  • R-adaptivity, ADPOPT=7 in *CONTROL_ADAPTIVE, is now available for SMP version of *CONTACT_SURFACE_TO_SURFACE, *CONTACT_NODES_TO_SURFACE, *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE, and *CONTACT_AUTOMATIC_NODES_TO_SURFACE (SOFT=0 or 1 only).
  • The options *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_COMPOSITE has been added to model composite processing. The same option may be used to model certain types of lubrication, and *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_LUBRICATION may be used instead of the COMPOSITE option for clarity. (The two keyword commands are equivalent.)
  • Added *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIED_WELD to model the simulation of welding. As regions of the surfaces are heated to the welding temperature and come into contact, the nodes are tied.
  • Added *CONTACT_TIED_SHELL_EDGE_TO_SOLID. This contact transmits the shell moments into the solid elements by using forces unlike the SHELL_EDGE_TO_SURFACE contact with solid elements. This capability is easier for users than *CONSTRAINED_SHELL_TO_SOLID. The input is identical to *CONTACT_TIED_SHELL_EDGE_TO_SURFACE (except for the keyword).
  • Fix incorrect motion of displayed rigidwall between 0.0 < time < birth_time when birth time>0.0 for *RIGIDWALL_GEOMETRIC_FLAT_MOTION_DISPLAY. The analysis was still correct. Only the displayed motion of the rigidwall is incorrect.
  • Fix corrupted INTFOR when using parts/part sets in *CONTACT_AUTOMATIC_.... This affects SMP only.
  • Fix incorrect stonewall energy when using *RIGIDWALL_PLANAR_ORTHO.
  • Fix unconstrained nodes when using *CONTACT_TIED_SURFACE_TO_SURFACE_CONSTRAINED_OFFSET resulting in warning message, SOL+540. This affects SMP only.
  • Fix spurious repositioning of nodes when using *CONTACT_SURFACE_TO_SURFACE for SMP.
  • Enable MAXPAR from optional card A to be used in *CONTACT_TIED_SURFACE_TO_SURFACE. It was originally hard-coded to 1.07.
  • The shells used for visualisation of *RIGIDWALL_PLANAR_MOVING_DISPLAY and *RIGIDWALL_PLANAR_MOVING_DISPLAY in D3PLOT were not moving with the rigidwall. This is now fixed.
  • Fix incorrect frictional forces if _ORTHO_FRICTION is used in *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE.
  • Fix seg fault when using *CONTACT_ENTITY and output to intfor file with MPP, i.e. s=intfor in command line.
  • Fix ineffective birth time for *CONTACT_TIED_NODES_TO_SURFACE.
  • Fix untied contacts when using *CONTACT_TIED... with *MAT_ANISOTROPIC_ELASTIC_PLASTIC/*MAT_157.
  • Fix MPP hang up when using *CONTACT_ENTITY.
  • Allow *CONTACT_AUTOMATIC_GENERAL to use MAXPAR from contact optional card A instead of using the hard coded value of 1.02. This will better detect end to end contact of beams. This applies to SMP only.
  • Fix *CONTACT_TIED_SHELL_EDGE_TO_SURFACE for SMP which ignores MAXPAR in contact optional card A.
  • Fix seg fault when using *CONTACT_GUIDED_CABLE.
  • Fix segmentation fault when using *CONTACT_AUTOMATIC_SINGLE_SURFACE_TIED in consistency mode, i.e. ncpu<0 in command line, for SMP.
  • Fix incorrect contacts when using *CONTACT_AUTOMATIC_GENERAL_INTERIOR for beams with large differences in thickness and when the thinner beams are closer to each other than to the thicker beams. Affects SMP only.
  • Fixed force transducers with MPP segment based contact when segments are involved with multiple 2 surface force transducers. The symptom was that some forces were missed for contact between segments on different partitions.
  • Fixed an MPP problem in segment based contact that cased a divide by zero during the bucket sort. During an iteration of the bucket sort, all active segments were somehow in one plane which was far from the origin such that a dimension rounded to zero. The fix for this should effect only this rare case and have no effect on most models.
  • Fixed thermal MPP segment based contact. The message passing of thermal energy due to friction was being skipped unless peak force data was written to the intfor file.
  • Fixed MPP segment based implicit contact. A flaw in data handling caused possible memory errors during a line search.
  • Fixed implicit dynamic friction for segment based contact. For sliding friction, the implicit stiffness was reduced to an infinitesimal value. Also, the viscous damping coefficient is now supported for implicit dynamic solutions.
  • Fixed segment based contact when the data has all deformable parts that are switched to rigid at the start of the calculation and then switched back to deformable prior to contact occurring. A flaw was causing contact to be too soft. This is now corrected.
  • Fixed a flaw in segment based contact with DEPTH=25 that could allow penetration to occur.
  • Improved edge-to-edge contact checking (DEPTH=5,25,35) and the sliding option (SBOPT=4,5) in areas where bricks have eroded when using segment based eroding contact.
  • Improved the initial penetration check (IGNORE=2 on *CONTROL_CONTACT) of segment based contact to eliminate false positives for shell segments. Previously, the search was done using mid-plane nodes and the gap or penetration adjusted to account for segment thicknesses after. The new way projects the nodes to the surface first and uses the projected surface to measure penetration. For brick segments with zero thickness there should be no difference. For shell segments, the improved accuracy will me more noticeable for thicker segments.
  • Improved segment based contact when SHAREC=1 to run faster when there are rigid bodies in the contact interface.
  • Fixed a possible problem during initialization of segment based contact. Options that use neighbor segment data such as the sliding option and edge-to-edge checking could access bad data if the same nodes were part of both the slave and master surfaces. This would not be a normal occurrence, but could happen.
  • Updated segment based contact to improve accuracy at points away from the origin. The final calculations are now done with nodal and segment locations that have been shifted towards the origin so that coordinate values are small.
  • The reporting of initial penetrations and periodic intersection reports by segment based contact was corrected for MPP solutions which were reporting incorrect element numbers.
  • Fixed memory errors in 2D automatic contact initialization when friction is used.
  • Fixed 2D force transducers in the MPP version which could fail to report master surface forces. Also fixed 2 surface 2D force transducers when the smp parallel consistency option is active.
  • Fixed *CONTACT_2D_AUTOMATIC_SINGLE_SURFACE and SURFACE_TO_SURFACE which could exhibit unpredictable behavior such as a force spike or penetration.
  • Fixed a serious MPP error in the sliding option of *CONTACT_2D_AUTOMATIC that could lead to error termination.
  • Fixed a problem with birth time for *CONTACT_2D_AUTOMATIC_TIED when used with sensor switching. Also, fixed a problem in the contact energy calculation that could lead to abnormal terminations. Finally, I made the process of searching for nodes to tie more robust as some problem was found with nodes being missed.
  • Fixed a 2D automatic contact bug that occurred if a segment had zero length. An infinite thickness value was calculated by A/L causing the bucket sort to fail.
  • Added support for *CONTACT_ADD_WEAR for smp and mpp segment based (SOFT=2) contact. This option enables wear and sliding distance to be measured and output to the INTFOR file.
  • Added support to segment based contact for the SRNDE parameter on optional card E of *CONTACT.
  • Added support to segment based eroding contact for SBOXID and MBOXID on card 1 of *CONTACT.
  • Added support for *ELEMENT_SOURCE_SINK used with segment based contact. With this update, inactive elements are no longer checked for contact.
  • Added a segment based contact option to allow the PSTIFF option on *CONTROL_CONTACT to be specified for individual contact definitions. The new parameter is PSTIFF on *CONTACT on optional card F, field 1. Prior to this change, setting PSTIFF on *CONTROL_CONTACT set all contact to use the alternate penalty stiffness method. With this update, PSTIFF on *CONTROL_CONTACT now sets a default value, and PSTIFF on card F can be used to override the default value for an individual contact interface.
  • Added support for REGION option on optional card E of *CONTACT when using segment based, SOFT=2 contact.
  • Added master side output in the MPP version for 2-surface force transducers when used with segment based (soft=2) contact.
  • Added contact friction energy to the SLEOUT database file for *CONTACT_2D_AUTOMATIC_SURFACE_TO_SURFACE and *CONTACT_2D_AUTOMATIC_SINGLE_SURFACE contact.
  • Enabled segment based contact (SMP and MPP) to work with type 24 (27-node) solid elements.
  • Enabled the ICOR parameter on *CONTACT, optional card E to be used with segment based (SOFT=2) contact.
  • Fixed output to d3hsp for *CONTACT_DRAWBEAD using negative curve ID for LCIDRF
  • Add slave node thickness and master segmet thickness as input arguments to the *USER_INTERFACE_FRICTION subroutine usrfrc (SMP).
  • Forming mortar contact can now run with deformable solid tools and honors ADPENE to account for curvatures and penetrations in adaptive step. This applies to h- as well as r-adaptivity.
  • Single surface and surface-to-surface mortar contact accounts for rotational degrees of freedom when contact with beam elements. This allows for beams to "roll" on surfaces and prevents spurious friction energy to be generated when in contact with rotating parts.
  • Maximum allowable penetration in forming and automatic mortar contacts is hereforth .5*(tslav+tmast)*factor where tmast=thickness of slave segment and tmast=thickness of master segment. The factor is hardwired to 0.95, but is subject to change. Prior to this it was .5*tslav, which seems inadequate (too small) in coping with initial penetrations in automotive applications using standard modeling approaches.
  • Up to now, mortar contact has only acted between flat surfaces, now account is taken for sharp edges in solid elements (the angle must initially be larger than 60 degrees), may have to increase the corresponding stiffness in the future.
  • When solid elements are involved in mortar contact the default stiffness is increased by a factor of 10. This is based on feedback from customers indicating that the contact behavior in those cases has in general been too soft. This may change the convergence characteristics in implicit but the results should be an improvement from earlier versions.
  • The OPTT parameter on *PART_CONTACT for the contact thickness of beams is now supported in mortar contact.
  • *CONTACT_ADD_WEAR:
    • A wear law, Archard's or a user defined, can be associated with a contact interface to assess wear in contact. By specifying WTYPE<0 a user defined wear subroutine must be written to customize the wear law. For the Archard's wear law, parameters can depend on contact pressure, relative sliding velocity and temperature. Contacts supported are *CONTACT_FORMING_SURFACE_TO_SURFACE, *CONTACT_FORMING_ONE_WAY_TO_SURFACE and *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE. To output wear data set NWEAR=1 or NWEAR=2 on *DATABASE_EXTENT_INTFOR. If NWEAR is set to 2 then the sliding distance is output to the intfor file, in addition to the wear depth. Otherwise only wear depth is output. Also, the parameter NWUSR specifies the number of user wear history variables to be output in case a user defined wear routine is used.
    • By specifying CID (contact interface id) to a negative number, the wear depth will couple to the contact in the simulation in the sense that the penetration is reduced with wear. The effect is that contact pressure will be redistributed accordingly but is only valid for relatively small wear depths. A formulation for larger wear depths lie in the future which will require modification of the actual geometry.
  • Fixed bug affecting *CONTACT_RIGID_NODE_SURFACE (broken at rev. 86847). The bug was in reading *NODE_RIGID_SURFACE.
  • A bug fix in *CONTACT_DRAWBEAD_INITILIZE.
    • The bug was caused by a sudden increase in effective strain after the element passed the drawbead. When the increase in strain is too big, the search algorithm was not working reasonably in the material routine.
    • At the drawbead intersection point, an element could be initialized twice by two bead curves, and cause abnormal thickness distribution.
  • Fix a bug in *CONTACT_FORMING_ONE_WAY_SURFACE_TO_SURFACE_SMOOTH which removes the limitation that the contact must be defined by segment set.
  • SMOOTH option does not apply to *CONTACT_FORMING_SURFACE_TO_SURFACE contact. When the SMOOTH option is used, we now write a warning message and disregard the SMOOTH option.

.

Constrained
  • *CONSTRAINED_LAGRANGE_IN_SOLID:
    • Implement *CONSTRAINED_LAGRANGE_IN_SOLID_EDGE in 2D.
  • Fixed bug in *DAMPING_RELATIVE. If the rigid part PIDRB is the slave part in *CONSTRAINED_RIGID_BODIES, the damping card did not work correctly. There is a work-around for previous LS-DYNA versions:
    • set PIDRB to the master part in *CONSTRAINED_RIGID_BODIES, not the slave part.
  • *CONSTRAINED_RIGID_BODY_INSERT:
    • This keyword is for modeling die inserts. One rigid body, called slave rigid body, is constrained to move with another rigid body, called the master rigid body, in all directions except for one.
  • A variety of enhancements for *CONSTRAINED_INTERPOLATION.
    • Enhanced the error message when nodes involved in the constraint have been deleted.
    • Removed printing of 0 node ID in MPP.
    • Added a warning if there are too many (now set at 1000) nonzeroes in a constraint row for *CONSTRAINED_INTERPOLATION or *CONSTRAINED_LINEAR to protect implicit's constraint processing. These constraints will be processed differently in future releases. We modified the constraint processing software to robustly handle constraint rows with thousands of nonzero entries. We added error checking for co-linear independent nodes as these constraints allow singularities in the model.
  • Improved implicit's treatment of the constraints for *CONSTRAINED_BEAM_IN_SOLID.
  • Added error checking on the values of the gear ratios in *CONSTRAINED_JOINTS.
  • *CONSTRAINED_BEAM_IN_SOLID:
    • Thick shell elements supported.
    • Wedge elements supported.
    • Debonding law by user-defined subroutine (set variable AXFOR>1000).
    • Debonding law by *DEFINE_FUNCTION (set variable AXFOR<0).
  • Error terminate with message, SOL+700, if CIDA and CIDB is not defined for *CONSTRAINED_JOINT_STIFFNESS_GENERALIZED.
  • Fix incorrect constraints on rotary dof for adaptivity.
  • Fix incorrect motion if NRBF=2 in *DEFORMABLE_TO_RIGID_AUTOMATIC and if any of the *CONSTRAINED_NODAL_RIGID_BODY nodes belongs to a solid element.
  • Fix input error when using large load curve ID for FMPH, FMT, FMPS in card 3 of *CONSTRAINED_JOINT_STIFFNESS with _GENERALIZED or _TRANSLATIONAL options.
  • Fix seg fault if using tables for FMPH of *CONSTRAINED_JOINT_STIFFNESS and if the angle of rotation is less than the the abscissa of the table or load curves.
  • Fixed an problem with *CONSTRAINED_BEAM_IN_SOLID when used in a model that also uses segment based eroding contact in the MPP version.  This combination now works.
  • Improved the precision of spot weld constraints (*CONSTRAINED_SPOTWELD) to prevent possible divide by zeroes when the inertia tensor is inverted.  This affects the single precision version only.
  • Fix for damage function in *CONSTRAINED_INTERPOLATION_SPOTWELD, MODEL=2.
  • Add some user-friendly output (rigid body id) to d3hsp for *CONSTRAINED_NODAL_RIGID_BODY_INERTIA.
  • Add new option to *CONSTRAINED_SPR2 to connect up to 6 shell element parts (metal sheets) with only one rivet location node. This is invoked by defining extra part IDs for such a multi-sheet connection.
  • Add more flexibility to *CONSTRAINED_SPR2:
    • Load curve function exponent values originally hardwired as "8" can now be defined with new input parameters EXPN and EXPT.
  • Fixed bug wherein the joint ID in *CONSTRAINED_JOINT_COOR was read incorrectly.
  • Fixed duplicate ID for *CONSTRAINED_SPOTWELD, ..._NODE_SET, _POINTS and _SPR2.
  • Fix keyword reader for SPR4 option in *CONSTRAINED_INTERPOLATION_SPOTWELD, where BETA2 was replaced by BETA3.
  • Significantly reduce the memory demand in the initialization stage of *CONSTRAINED_MULTIPLE_GLOBAL for implicit analysis.
  • The unit cell mesh and constraint generated by *INCLUDE_UNITCELL now supports job ID.

.

Control
  • Terminate and print error KEY+1117 for cases that use *INCLUDE_TRANSFORM in 3d r-adaptvity.
  • Changed SOL+41 message ("reached minimum step") from an error to a warning and terminate normally. This message is triggered when the DTMIN criterion set in *CONTROL_TERMINATION is reached.
  • Fixed bug in which h-adaptivity missed some ADPFREQ-based adaptations when IREFLG<0 (*CONTROL_ADAPTIVE).
  • Fixed bug:
    • MS1ST in *CONTROL_TIMESTEP causes non-physical large mass and inertia on Nodal Rigid Bodies if Dynamic Relaxation is active. The error occurs at the start of the transient solution. The mass can become very large, so the model may appear to be over-restrained.
  • Add new input check for curves. After rediscretizing curves, check to see how well the original values can be reproduced. If the match is poor, write out See variable CDETOL in *CONTROL_OUTPUT.
  • Added the ability to specify unique values LCINT for each curve, which override the value set in *CONTROL_SOLUTION.
    • Note: the largest value of LCINT that appears will be used when allocating memory for each load curve, so a single large value can cause significant increases in the memory required for solution.
  • The DELFR flag in *CONTROL_SHELL has new options for controlling the deletion of shell elements. This feature is aimed at eliminating single, detached elements and/or elements hanging on by one shared node.
  • Fix spurious deletion of elements when using TSMIN.ne.0.0 in *CONTROL_TERMINATION, ERODE=1 in *CONTROL_TIMESTEP and initialized implicitly in dynamic relaxation.
  • Fix spurious error, STR+755, if using *DAMPING_FREQUENCY_RANGE with *CONTROL_ADAPTIVE.
  • Add new feature to *CONTROL_SOLUTION, LCACC, to truncate load curve to 6 significant figures for single precision & 13 significant figures for double precision. The truncation is done after applying the offset and scale factors.
  • Fix "*** termination due to mass increase ***' error when using mass scaling with *ELEMENT_MASS_PART.
  • Fix input error 'node set for nodal rigid body # not found' when using *PART_INERTIA with *CONTROL_SUBCYCLE.
  • Fixed the negative DT2MS option on *CONTROL_TIMESTEP for thick shell types 5, 6, and 7.
  • Fixed bug in *CONTROL_CHECK_SHELL if PSID.lt.0 (part set ID) is used
  • Add new option NORBIC to *CONTROL_RIGID to bypass the check of rigid body inertia tensors being too small.
  • Add new option ICRQ to *CONTROL_SHELL for continuous treatment of thickness and plastic strain across element edges for shell element types 2, 4, and 16 with max. 9 integration points through the thickness.
  • Add new option ICOHED to *CONTROL_SOLID. If this value is set to 1, solid cohesive elements (ELFORM 19-22) will be eroded when neighboring (nodewise connected) shell or solid elements fail.
  • Beam release conditions are now properly supported in selective mass scaling, see IMSCL on *CONTROL_TIMESTEP.
  • Modified MSGMAX in *CONTROL_OUPUT:
    MSGMAX  Maximum number of each error/warning message
    > 0 number of message to screen output, all messages written to messag/d3hsp
    < 0 number of messages to screen output and message/d3hsp
    = 0 the defaul is 50
    • Fix bugs in 3D solid adaptivity (*CONTROL_ADAPTIVE, ADPOPT=7) so that the solid adaptivity will still work when there are any of the following in the model:
      • thick shells (*SECTION_TSHELL),
      • massless nodes,
      • *LOAD_SEGMENT_{option}.
    • Added PARA=2 to *CONTROL_PARALLEL which actives consistent force assembly in parallel for SMP. An efficient parallel algorithm is implemented for better performance when the consistency flag is turned on. It shows better scaling with more cpus. This option is overridden by parameter "para=" on the execution line.

    .

    DEM (Discrete Element Method)
    • Added output of following DES history variables to D3PLOT:
      • nodal stress and force
      • pressure
      • density
      • force chain
      • damage calculation when *DEFINE_DE_BOND is defined
    • Added output of following DES history variables to demtrh (*DATABASE_TRACER_DE):
      • coordination number
      • porosity and void ratio
      • stress
      • pressure
      • density
    • Output ASCII format for demrcf if BINARY.eq.3.
    • Implement gauss distribution of DE sphere radius for *DEFINE_DE_INJECTION. The mean radius is 0.5*(rmin+rmax) and standard deviation is 0.5*(rmax-rmin).
    • For DE sphere, implement the stress calculation for REV (Representative Elementary Volume) using *DATABASE_TRACER_DE and specific RADIUS.
    • Add *BOUNDARY_DE_NON_REFLECTING for defining non-reflecting boundary conditions for DE spheres.
    • For *CONTROL_DISCRETE_ELEMENT, add the option to create the liquid bridge if the initial distance between two DE spheres is smaller than predefined gap.
    • Added *DATABASE_DEMASSFLOW, see *DEFINE_DE_MASSFLOW_PLANE, for measuring the mass flow of DE spheres through a surface. The surface is defined by part or part set. Output file is 'demflow'.
    • Add *DEFINE_DE_INJECTION_ELLIPSE, to define a circular or elliptical injection plane.
    • Add *DEFINE_PBLAST_AIRGEO for *PARTICLE_BLAST which defines initial geometry for air particles.
    • Add DEM stress calculation when coupling with segment (*DEFINE_DE_TO_SURFACE_COUPLING).
    • Fix error in demtrh file output (Window platform only).

    .

    EFG (Element Free Galerkin)
    • Fix bug for ELFORM=41 implicit when there are 6-noded/4-noded elements.

    .

    Element
    • Fix a 2d seatbelt bug triggered by having both 1d and 2d seatbelts, and a 1d pretensioner of type 2, 3 or 9.
    • Fix MPP bug initializing multiscale spotweld in the unexpected case where the spotweld beam is merged with the shells rather than tied via contact.
    • Fix bug for *INCLUDE_UNITCELL.
    • *CONTROL_REFINE_...:
      • Implement the parent-children transition in *CONTACT_2D_SINGLE_SURFACE when a shell refinement occurs.
    • Fix error traps for *ELEMENT_SEATBELT_... , for example, error termination due to convergence failure in retractors. These error traps worked but could lead to a less graceful termination than other LS-DYNA error traps.
    • Correct calculation of wrap angle in seatbelt retractor.
    • Add MPP support for *ELEMENT_LANCING.
    • *ELEMENT_SEATBELT:
      • Fix a MPP belt bug that can happen when buckle pretensioner is modeled as a type-9 pretensioner.
      • 2D belt and 1D belt now can share the same *MAT_SEATBELT.
      • The section force for 2d belt is recoded to provide more robust and accurate results.
      • The loading curve LLCID of *MAT_SEATBELT can be a table defining strain-rate dependent stiffness curve.
      • IGRAV of *ELEMENT_SEATBELT_ACCELEROMETER can be a curve defining gravitation flag as a function of time.
    • Add *NODE_THICKNESS to override shell nodal thickness otherwise determined via *SECTION_SHELL, *PART_COMPOSITE, or *ELEMENT_SHELL_THICKNESS.
    • Fix input error when using *DEFINE_ELEMENT_DEATH with BOXID>0 for MPP.
    • Implement subcycling for thick shells.
    • Fix ineffective *DEFINE_HAZ_PROPERTIES when solid spotwelds and hex spotweld assemblies are both present.
    • Fix incorrect beta written out for *ELEMENT_SHELL_BETA in dynain file when *PART_COMPOSITE keyword is present in the original input.
    • Fix NaN output to elout_det and spurious element deletion if NODOUT=STRAIN or STRAIN_GL or ALL or ALL_GL.
    • Fix incorrect reading of TIME in card 3 of *ELEMENT_SEATBELT_SENSOR SBSTYP=3 when long=s in command line.
    • *PART_COMPOSITE:
      • Increased the explicit solution time step for thin shell composite elements. The existing method was overly conservative. The new method is based on average layer stiffness and density.
    • In conjunction with the above change in composite time step calculation, increase nodal inertia in the rare cases of *PART_COMPOSITE in which the bending stability is not satisfied by the membrane stability criterion. The inertia is only increased in the cases where it is necessary; for most models this change has no effect, but this can occur in the case of sandwich sections with stiffer skins around a less stiff core.
    • Corrected rotational inertia of thin shells when layers have mixed density and the outer layers are more dense than inner layers. The fix will mostly affect elements that are very thick relative to edge length.
    • Fixed default hourglass control when the *HOURGLASS control card is used but no HG type is specified. We were setting to type 1 instead of 2. Also, fixed the default HG types to match the User's Manual for implicit and explicit.
    • Fixed the part mass that was reported to D3HSP when *ELEMENT_SHELL_SOURCE_SINK is used. The inactive elements were being included causing too high mass.
    • Prevent inactive shell elements (from *ELEMENT_SHELL_SOURCE_SINK) from controlling the solution time step.
    • Fixed the reported strain tensor in elements created by *ELEMENT_SHELL_SOURCE_SINK when strain output is requested. The history was being retained from the previous elements with the same ID.
    • Fixed torsion in linear beam form 13. A failure to add the torsional moment at node 2 caused an inability to reach equilibrium in the torsional mode.
    • Fixed solid element 4 so that rigid body translation will not cause strain and stress due to round-off error.
    • Mixed parallel consistency when used with solid element type 20. A buffer was not being allocated leading to a memory error.
    • Changed the MPP behavior of discrete beams (ELFORM=6) when attached to elements that fail. They were behaving like null beams, in the sense that it was possible for beam nodes to become dead due to attached elements failing, and discrete beams would be no longer visualized even if the beams themselves had not failed. With this change, the MPP discrete beams now behave like other beams in that the beams have to fail before they are removed. MPP and SMP behavior is now consistent.
    • Improved the precision of the type 2 Belytschko Schwer resultant beam to prevent energy growth in single precision.
    • Fixed the NLOC option on *SECTION_SHELL for the BCIZ triangle elements (ELFORM=3) and the DKT triangle elements (ELFORM=17). The offset was scaled by the solution time step so typically the offset was much smaller than expected.
    • Fixed elout stress output for shell element forms 23 and 24. The in-plane averaging was incorrect causing wrong output.
    • Changed *ELEMENT_TSHELL so that both the COMPOSITE and BETA options can be read at the same time. Prior to the fix, only the first one would be read.
    • Fixed all thick shells to work with anisotropic thermal strains which can be defined by *MAT_ADD_THERMAL. Also, this now works by layer for layered composites.
    • Fixed implicit solutions with thick shells with *MAT_057 when there are also solid elements in the model that use *MAT_057. Thick shells support only the incremental update of the F tensor but a flag was set incorrectly in the material model.
    • Fixed *MAT_CODAM2/*MAT_219 when used with thick shell types 3, 5, and 7. A failure to initialize terms for the time step caused a possible wrong time step.
    • Fixed orthotropic user defined materials when used with thick shell elements. The storing of the transformation matrix was in the wrong location leading to wrong stress and strain.
    • For thick shell composites that use element forms 5 and 7, the user can now use laminated shell theory along with the TSHEAR=1 on *SECTION_TSHELL to get a constant shear stress through the thickness with a composite.
    • Fixed the initialization of *MAT_CODAM2/*MAT_219 when used with thick shell forms 3, 5, or 7. The 3D thick shell routine uses only 2 terms for the transformation and therefore needs unique initialization of the transformation data.
    • Fixed thick shell types 3 and 5  when used in implicit solutions with *MAT_002, *MAT_021, *MAT_261, and *MAT_263. The material constitutive matrix for *MAT_002 and *MAT_021 was not rotated correctly causing wrong element stiffness. The constitutive matrix for *MAT_261 and *MAT_263 was not orthotropic. Also, for *MAT_021, type 5 thick shell needed some material terms defined to correct the assumed strain.
    • Fixed thick shell forms 3 and 5 when used in implicit solutions with non-isotropic materials. The stiffness matrix was wrong due to incorrect transformations.
    • Also, fixed the implicit stiffness of thin and thick shells when used with laminated shell theory by assumed strain (LAMSHT=3,4,5 on *CONTROL_ACCURACY). Elements were either failing to converge or converging more slowly due to the failure to adjust the stiffness matrix to be consistent with the assumed strain.
    • Added support for *ELEMENT_SHELL_SOURCE_SINK to form 2 elements with BWC=1 on *CONTROL_SHELL.
    • Fixed the s-axis and t-axis orientation of beam spot welds in the MPP version when those beam weld elements are defined with a 3rd node. The 3rd node was being discarded prior to initializing the beam orientation so the s and t-axes were being randomly assigned as if the 3rd node had not been assigned. The effect on solutions is likely fairly minimal since beam material is isotropic and failure typically is too, but may not be.
    • Added Rayleigh damping (*DAMPING_PART_STIFFNESS) for thick shell formulations 1, 2, and 6.  Previously, it was available for only the thick shells that call 3D stress updates, (forms 3 and 5), but now it is available for all thick shell formulations.
    • Added new SCOOR options for discrete beam section 6 (*SECTION_BEAM). A flaw was found in how the discrete beam accounts for rigid body rotation when SCOOR=-3, -2, +2, and +3.  A correction for this is made and introduced as new options, SCOOR=-13, -12, +12, and +13. A decision was made to leave the existing options SCOOR=-2, +2, -3 and +3 unchanged so that legacy data could run without changes.
    • Enabled the ELFORM 18 linear DKT shell element to work with *PART_COMPOSITE and with an arbitrary number of through thickness integration points. It was limited to a single material and 10 Gauss points.
    • Added the possibility to write *ELEMENT_SOLID_ORTHO into dynain file if requested. To activate this add OPTCARD to *INTERFACE_SPRINGBACK and set SLDO=1.
    • Refine characteristic length calculation for 27-node solid (ELFORM 24). This change may increase the time step substantially for badly distorted elements.
    • Implemement selective reduced integration for 27-node solid (ELFORM 24).
    • Allow part sets to be used in *DEFORMABLE_TO_RIGID_AUTOMATIC. Either PID is defined negative or "PSET" is set in column 3 (D2R) or 2 (R2D).
    • Add new option STRESS=2 to *INCLUDE_STAMPED_PART:
      • no stresses and no history variables are mapped with that setting.
    • New keyword *PART_STACKED_ELEMENTS provides a method to define and to discretize layered shell-like structures by an arbitrary sequence of shell and/or solid elements over the thickness.
    • The geometric stiffness matrix for the Belytschko beam element type 2 has been extended to include nonsymmetric terms arising from nonzero moments. Provides "almost" quadratic convergence, still some terms missing to be added in the future. Also support a strongly objective version activated by IACC on *CONTROL_ACCURACY.
    • The geometric stiffness for the Hughes-Liu element type 1 is fixed.
    • Fix parsing error in *SECTION_BEAM_AISC.

    .

    EM (Electromagnetic Solver)
    • Add the new EM 2d axi solver in SMP and MPP for EM solver 1 (eddy current). It is coupled with the mechanics and thermal solvers.
    • The new EM 2d can be used with RLC circuits on helix/spiral geometries using *EM_CIRCUIT_CONNECT.
    • Add EM contact into new EM 2d axi, in SMP and MPP.
    • Add *EM_BOUNDARY support in new EM 2d axi solver.
    • Introduce scalar potential in new EM 2d axi. The 2d axi can also be coupled with imposed voltage.
    • Add new keyword *EM_CIRCUIT_CONNECT to impose linear constraints between circuits with imposed currents in 3d solvers. This allows for example to impose that the current in circuit 1 is equal to the current in circuit 2 even if the 2 correponding parts are not physically connected.
    • Add *EM_VOLTAGE_DROP keyword to define a voltage drop between 2 segment sets. This voltage drop constraint is coupled to the contact constraint so that the contact (voltage drop =0) has priority over the *EM_VOLTAGE_DROP constraint.
    • Add *EM_CONTROL_SWITCH_CONTACT keyword to turn the EM contact detection on and off.
    • NCYCLBEM/NCYCLFEM in *EM_SOLVER_... can now be different than 1 when *EM_CONTACT detected.
    • Add RLC circuit for type 3 solver (resistive heating).
    • Add computation of mutuals/inductances in 2d axi for output to em_circuit.dat
    • Add criteria on autotimestep calculation when R,L,C circuit used to take into account R,L,C period.
    • Fix keyword counter in D3HSP.
    • Better and clearer output to terminal screen.
    • Support jobid for EM ascii file outputs.

    .

    Forming
    • Improvements to trimming:
      • *DEFINE_CURVE_TRIM_NEW: if trim seed node is not defined, we will search a seed node based on nodes from the sheet blank and the inside/outside flag definition for the trimming curves.
      • Map strain tensors to triangular elements after trimming.
    • Add a new function to the trim of solid elements in normal (3-D) trimming case, related to *DEFINE_CURVE_TRIM_3D.
      • If the trimming curve is close to the bottom side, set TDIR=-1.
      • If the trimming curve is close to the  upper side, set TDIR= 1.
    • Add to *ELEMENT_LANCING. Allow parametric expression for variables END and NTIMES.
    • A bug fix for *CONTROL_FORMING_AUTOPOSITION_PARAMETER_SET:
      • Fix distance calculation error when the target mesh is too coarse.
    • Improvements to springback compensations:
      • Output the new trimming curve with *DEFINE_CURVE_TRIM_3D (previously *DEFINE_CURVE_TRIM), so that it can be easily converted to IGES curve by LS-PrePost. or used in another trimming calculation.
      • Output each curve to IGES format in the following name format: newcurve_scp001.igs, newcurve_scp002.igs, newcurve_scp003.igs, etc.
      • Output change in file "geocur.trm". This update will allow change from *DEFINE_CURVE_TRIM(_3D, _NEW), whatever is used for input.
    • Add a new keyword:
      • *DEFINE_FORMING_CONTACT to facilitate the forming contact definitions.
    • Add a new keyword:
      • *DEFINE_FORMING_CLAMP, to facilitate clamping simulation.
    • A new feature in mesh fusion, which allows a moving box to control the fusion, only if the center of the elements is inside the box can the elements can be coarsened. Can be used in conjuntion with *DEFINE_BOX_ADAPTIVE.
    • Add a new feature to *DEFINE_BOX_ADAPTIVE:
      • Moving box in adaptivity, useful in roller hemming and incremental forming.
    • In mesh coarsening, if the node is defined in a node set, the connected elements will be kept from being coarsened. Previously, only *SET_NODE_LIST was supported. Now option *SET_NODE_GENERAL is allowed.
    • Add a new function: mesh refinement for sandwich part. The top and bottom layers are shell elements and the middle layer is solid elements. Set IFSAND to 1 in *CONTROL_ADAPTIVE.
      • Applies to both 8-noded and 6-noded solid elements.
      • Map stress and history variables to the new elements.
    • New features related to blank size development *INTERFACE_BLANKSIZE_DEVELOPMENT:
      • Add *INTERFACE_BLANKSIZE_SYMMETRIC_PLANE to define symmetric plane in blank size development
      • Add *INTERFACE_BLANKSIZE_SCALE_FACTOR. For each trimming, different scale factors can be used to compensate the blanksize. This is especially useful when the inner holes are small. Includes an option of offset the target curve which is useful if multiple target curves (e.g., holes) and formed curves are far from each other.
      • Allow target curve to be outside of the surface of the blank.
      • Add sorting to the mesh so the initial mesh and the formed mesh do not need to have the same sequence for the nodes.
      • Add a new variable ORIENT, set to "1" to activate the new algorithm to potentially reduce the number of iterations with the use of *INTERFACE_BLANKSIZE_SCALE_FACTOR (scale=0.75 to 0.9).
      • Fix smooth problem along calculated outer boundary.
      • Automatically determine the curve running directions (IOPTION=2 and -2 now both give the same results).
      • Accept parameteric expression.
    • A bug fix for springback compensation:
      • *INCLUDE_COMPENSATION_SYMMETRIC_LINES Fix reading problem of free format in the original coding.
    • Add a new keyword *CONTROL_FORMING_BESTFIT.
      • Purpose: This keyword rigidly moves two parts so that they maximally coincide. This feature can be used in sheet metal forming to translate and rotate a spring back part (source) to a scanned part (target) to assess spring back prediction accuracy. This keyword applies to shell elements only.
    • Improvements to *CONTROL_FORMING_AUTOCHECK:
      • When IOFFSET=1, rigid body thickness is automatically offset, based on the MST value defined in *CONTACT_FORMING_ONE_WAY_SURFACE.
      • Add new variable IOUTPUT that when set to 1 will output the offset rigid tool mesh, and the new output tool file is: rigid_offset.inc. After output the simulation stops. See R9.0 Manual for further details.
      • When both normal check and offset are used, small radius might cause problem for offsetting. The new modification will check the normal again after offsetting the tool
      • When outputting the rigid body mesh, output the bead nodes also.
      • Changes to *CONTROL_FORMING_AUTOCHECK when used together with SMOOTH option: check and fix rigid body bad elements before converting the master part ID to segment set id to be used by SMOOTH option.
      • Set IOUTPUT.eq. 3 to output rigid body mesh before and after offset.
      • Fix problems offseting a small radius to a even smaller radius.
      • Remove T-intersection.
    • For *CONTROL_IMPLICIT_FORMING, fix output messages in d3hsp that incorrectly identified steps as implicit dynamic when they were actually implicit static. dynamic when they were actually implicit static.
    • Improve *CONTROL_FORMING_UNFLANGING:
      • Automatically calculate CHARLEN, so user does not need to input it anymore.
      • Allow nonsmooth flange edge.
      • Instead of using preset value of 0.4 (which works fine for thin sheet metal), blank thickness is now used to offset the slave node (flanges) from the rigid body (die).

    .

    Frequency Domain
    • *FREQUENCY_DOMAIN_RANDOM_VIBRATION:
      • Fixed a bug in dumping d3psd binary database, when both stress and strain are included.
    • *FREQUENCY_DOMAIN_SSD_ERP:
      • Implemented the Equivalent adiated Power (ERP) computation to MPP.
    • *FREQUENCY_DOMAIN_ACOUSTIC_BEM:
      • Enabled running dual collocation BEM based on Burton-Miller formulation (METHOD=4) with vibration boundary conditions provided by Steady State Dynamic analysis (*FREQUENCY_DOMAIN_SSD).
      • Added exponential window function for FFT (FFTWIN=5).
      • Implemented a new forward and backward mixed radix FFT.
      • Implemented acoustic computation restart from frequency domain boundary conditions, in addition to time domain boundary conditions (RESTRT=1).
      • Enabled out-of-core velocity data storage, to solve large scale problems.
      • Implemented option HALF_SPACE to Rayleigh method (METHOD=0) to consider acoustic wave reflection.
      • Added velocity interpolation to take care of mismatching between acoustic mesh and structural mesh (*BOUNDARY_ACOUSTIC_MAPPING), for the case that the boundary conditions are provided by Steady State Dynamic analysis.
      • Added weighted SPL output to acoustic computation (DBA=1,2,3,4).
      • Implemented radiated sound power, and radiation efficiency computation to collocation BEMs (METHOD=3,4). Added new ASCII xyplot databases Press_Power and Press_radef to save the sound power and radiation efficiency results.
      • Enabled using both impedance and vibration (velocity) boundary conditions in acoustic simulation.
    • *FREQUENCY_DOMAIN_ACOUSTIC_FEM:
      • Added weighted SPL output to FEM acoustics (DBA=1,2,3,4).
      • Implemented option EIGENVALUE to perform acoustic eigenvalue analysis; added ASCII database eigout_ac to save acoustic eigenvalue results; added binary plot database d3eigv_ac to save acoustic eigenvectors.
      • Enabled consideration of nodal constraints in acoustic eigenvalue analysis.
      • Enabled FEM acoustic analysis with frequency dependent complex sound speed.
      • Implemented pressure and impedance boundary conditions.
    • *FREQUENCY_DOMAIN_ACOUSTIC_FRINGE_PLOT:
      • Added this keyword to 1) generate acoustic field points as a sphere or plate mesh (options SPHERE and PLATE), or 2) define acoustic field points mesh based on existing structure components (options PART, PART_SET and NODE_SET) so that user can get fringe plot of acoustic pressure and SPL. The results are saved in binary plot database d3acs (activated by keyword *DATABASE_FREQUENCY_BINARY_D3ACS).
    • *FREQUENCY_DOMAIN_RANDOM_VIBRATION:
      • Changed displacement rms output in d3rms to be the displacement itself, without adding the original nodal coordinates.
      • Implemented von mises stress PSD computation in beam elements.
      • Implemented fatigue analysis with beam elements.
      • Added strain output to binary plot databases d3psd and d3rms, and binout database elout_psd.
      • Added initial damage ratio from multiple loading cases (INFTG > 1).
    • *FREQUENCY_DOMAIN_SSD:
      • Implemented option ERP to compute Equivalent Radiated Power. It is a fast and simplified way to characterize acoustic behavior of vibrating structures.The results are saved in binary plot database d3erp (activated by keyword *DATABASE_FREQUENCY_BINARY_D3ERP), and ASCII xyplot files ERP_abs and ERP_dB.
      • Implemented fatigue analysis based on maximum principal stress and maximum shear stress.

    .

    ICFD (Incompressible Flow Solver)
      • New features and Major modifications pertaining to ICFD:
        • *ICFD_BOUNDARY_FSWAVE:
          • Added a boundary condition for wave generation of 1st order stokes waves with free surfaces.
        • *ICFD_DATABASE_DRAG_VOL:
          • For computing pressure forces on volumes ID (useful for forces in porous domains), output in icfdragivol.dat and icfdragivol.#VID.dat.
        • *ICFD_CONTROL_DEM_COUPLING:
          • Coupling the ICFD solver with DEM particles is now possible.
        • *ICFD_CONTROL_MONOLITHIC:
          • Added a monolithic solver (=1) which can be selected instead of the traditionnal fractional step solver (=0).
        • *ICFD_CONTROL_POROUS:
          • This keyword allows the user to choose between the Anisotropic Generalized Navier-Stokes model (=0) or the Anisotropic Darcy-Forchheimer model (=1) (for Low Reynolds number flows). The Monolithic solver is used by default for those creeping flows.
        • *ICFD_CONTROL_TURBULENCE:
          • Modified existing standard k-epsilon.
          • Added Realizable k-epsilon turbulence model.
          • Added Standard 98 and 06 Wilcox and Menter SST 03 turbulence models.
          • Added Several laws of the wall.
          • Added Rugosity law when RANS turbulence model selected.
        • *ICFD_MODEL_POROUS:
          • Added Porous model 5 for anistropic materials defined by P-V experimental curves.
          • Added porous model 6 for moving domain capabilities for Porous Media volumes using load curves for permeabilities directions.
          • Added porous model 7 for moving domain capabilities for Porous Media volumes using *ICFD_DEFINE_POINT for permeabilities directions.
          • Added porous model 9 for a new Anisotropic Porous Media flow model (PM model ID=9): It uses a variable permeability tensor field which is the result of solid dynamic problems. The model reads the solid mesh and the field state and maps elemental permeability tensor and solid displacements to the fluid mesh.
        • *ICFD_MODEL_NONNEWT:
          • Added a few models for non newtonian materials and temperature dependant viscosity :
            • model 1 : power law non newtonian (now also temperature dependant)
            • model 2 : carreau fluid
            • model 3 : cross fluid
            • model 4 : herschel-bulkley
            • model 5 : cross fluid II
            • model 6 : temperature dependant visc (sutherland)
            • model 7 : temperature dependant visc (power law)
            • model 8 : load curve dependant visc
          • Model 8 is especially interesting since a *DEFINE_FUNCTION can be used (for solidification applications).
        • *ICFD_SOLVER_TOL_MONOLITHIC:
          • Used to define atol, rtol, dtol and maxits linear solver convergence controls of the monolithic NS time integration
        • *MESH_BL:
        • Added support for boundary layer mesh creation by specifying the thickness, number of layers, first node near the surface and the strategy to use to divide and separate the elements inside the BL adding.

      .

      • Additions or modifications to existing keywords pertaining to ICFD:
        • *ICFD_BOUNDARY_PRESCRIBED_VEL:
          • Added the support of *DEFINE_FUNCTION making the second line of the keyword obsolete.
        • *ICFD_CONTROL_TIME:
          • Min and Max timestep values can be set.
        • *ICFD_DATABASE_DRAG:
          • Added frequency output.
          • Added option to output drag repartition percentage in the d3plots as a surface variable.
        • *ICFD_CONTROL_IMPOSED_MOVE:
          • This keyword now uses *ICFD_PART and *ICFD_PART_VOL instead of *MESH_VOL for ID. It is now possible to impose a rotation on a part using Euler angles.
        • *ICFD_CONTROL_OUTPUT:
          • Field 4 now to output mesh in LSPP format and in format to be run by the icfd solver (icfd_fluidmesh.key and icfd_mesh.key).
          • icfd_mesh.key now divides the mesh in ten parts, from best quality element decile to worst.
          • A new mesh is now output at every remeshing.
          • Added support for parallel I/O for Paraview using the PVTU format.
        • *ICFD_DEFINE_POINT:
          • Points can now be made to rotate or translate.
        • *ICFD_MAT:
          • Nonnewtonian models and Porous media models are now selected in the third line by using the new *ICFD_MODEL keyword family.
          • HC and TC can now be made temperature dependent.
        • *ICFD_CONTROL_DIVCLEAN:
          • Added option 2 to use a potential flow solver to initialize the Navier Stokes solver.
        • *ICFD_CONTROL_FSI:
          • Field 5 provides a relaxation that starts after the birthtime.
        • *ICFD_CONTROL_MESH:
          • Field 3 added a new strategy to interpolate a mesh size during the node insertion. In some cases it speeds up the meshing process and produces less elements. Field 4 changes the meshing strategy in 2d.
        • *ICFD_CONTROL_SURFMESH:
          • Added support for dynamic re-meshing/adaptation of surface meshing.

      .

      • Bug fixes or minor improvements pertaining to ICFD:
        • *ICFD_BOUNDARY_PRESCRIBED_VEL:
          • VAD=3 now works with DOF=4. SF can be lower than 0.
        • PID can be over 9999 in *ICFD_DATABASE_FLUX.
        • Fixed d3hsp keyword counter.
        • Clarified terminal output.
        • Y+ and Shear now always output on walls rather than when a turbulence model was selected.
        • Added coordinate of distorted element before remeshing occurs. Output on terminal and messag file
        • Fixed bug in conjugate heat transfer cases. When an autotimestep was selected in *ICFD_CONTROL_TIME, it would always only take the thermal timestep.
        • An estimation of the CFL number is now output in the d3plot files. This is not the value used for the autotimestep calculation.
        • Turbulence intensity is now output in the d3plots.
        • Jobid now supported for ICFD ASCII File outputs.
        • Fixed communication of turbulent constants in MPP.
        • Fixed the Near Velocity field output.
        • Increasing the limit of number of parts for the model.
        • Temperature added as a surface variable in output.
        • Fixed non-linear conjugate heat solver.

        .

        Implicit
        • Fixed Implicit for the case of Multi-step Linear (*CONTROL_IMPLICIT_GENERAL with NSOLVR=1) with Intermittent Eigenvalue Computation (*CONTROL_IMPLICIT_EIGENVALUE with NEIG<0). Recent fix for resultant forces for Multi-step Linear cause segmentation fault when Intermittent Eigenvalue Computation was also active.
        • Fix possible issue related to constrained contacts in MPP implicit not initializing properly.
        • Fixed label at beginning of implicit step to be correct for the case of controlling implicit dynamics via a load curve (*CONTROL_IMPLICIT_DYNAMICS).
        • Corrected the computation of modal stresses with local coordinate terms and for some shell elements (see MSTRES on *CONTROL_IMPLICIT_EIGENVALUE).
        • Corrected *CONTROL_IMPLICIT_INERTIA_RELIEF logic in MPP. In some cases the rigid body modes were lost.
        • Enhanced implicit's treatment of failing spotwelds (*CONSTRAINED_SPOTWELD).
        • Added additional error checking of input data for *CONTROL_IMPLICIT_MODAL_DYNAMICS_DAMPING.
        • Per user request we added the coupling of prescribed motion constraints for Modal Dynamics by using constraint modes.  See *CONTROL_IMPLICIT_MODAL_DYNAMIC.
        • Added reuse of the matrix reordering for MPP implicit execution. This will reduce the symbolic processing time which is noticable when using large numbers of MPP processes. Also added prediction of non tied contact connections for standard contact and mortar contact. This allows reuse of the ordering when contact interfaces are changing very slightly but can increase the cost of the numerical factorization. Useful only for MPP using large numbers of processes for large finite element models. This reuse checking happens automatically for MPP and is not required for SMP.
        • Apply improvements to Metis memory requirements used in Implicit MPP. Enhanced Metis ordering software (ORDER=2, the default, on *CONTROL_IMPLICIT_SOLVER).
        • Added new keyword *CONTROL_IMPLICIT_ORDERING to control of features of the ordering methods for the linear algebra solver in MPP Implicit. Only should be used by expert users.
        • The following 4 enhancements are applicable when IMFLAG>1 on *CONTROL_IMPLICIT_GENERAL.
          • Implicit was modified to reset the time step used in contact when switching from implicit to explicit.
          • Adjusted implicit mechanical time step for the case of switching from explicit to implicit so as not to go past the end time.
          • Explicit with intermittent eigenvalue analysis was getting incorrect results after the eigenvalue analysis because an incorrect time step was used for the implicit computations. For this scenario implicit now uses the explicit time step.
          • The implicit time step is now reset for the dump file in addition to explicit's time.
        • Implicit's treatment of prescribed motion constraints defined by a box had to be enhanced to properly handle potential switching to explicit.
        • The following 6 enhancements are for matrix dumping (MTXDMP>0 on *CONTROL_IMPLICIT_SOLVER) or for frequency response (*FREQUENCY_DOMAIN) computations.
          • Corrected the collection of *DAMPING_PART_STIFFNESS terms for elements like triangles and 5, 6, and 7 noded solid elements.
          • Corrected Implicit's access of *DAMPING_PART_STIFFNES parameter when triangle and tet sorting is activiated.
          • Fixed Implicit's collecting of damping terms for beams that have reference nodes.
          • There is an internal switch that turns off damping for beams if the run is implicit static. This switch needed to be turned off for explicit with intermittent eigenvalue analysis.
          • Fixed collecting of stiffness damping terms for implicit. Corrected the loading of mass damping terms when collecting damping terms for post processing.
          • Extend matrix dumping to include dumping the solution vector in addition to the matrix and right-hand-side.
        • Adjusted Implicit's handling of sw1. and sw3. sense switches to properly handle dumping. If sw1. sense switch is issued when not at equilibrium, then reset time and geometry to that at the end of last implicit time step. If sw3. sense switch is issued, then wait until equilibrium is reached before dumping and continuing.
        • Enable the use of intermittent eigenvalue computation for models using inertia relief and/or rotational dynamics.  See NEIG<0 on *CONTROL_IMPLICIT_EIGENVALUE and *CONTROL_INERTIA_RELIEF and *CONTROL_IMPLICIT_ROTATIONAL_DYNAMICS.
        • Due to round-off, an implicit intermittent eigenvalue computation was occasionally skipped. A fudge factor of 1/1000 of the implicit time step was added to compensate for round-off error in the summation of the implicit time. See NEIG<0 on *CONTROL_IMPLICIT_EIGENVALUE.
        • Added support for *CONSTRAINED_LINEAR for 2D implicit problems. It was already supported for standard 3D problems.
        • Added warning for implicit when the product of ILIMIT and MAXREF (two parameters on *CONTROL_IMPLICIT_SOLUTION) is too small. For the special case when the user changes the default of ILIMIT to 1 to choose Full Newton and does not change MAXREF then MAXREF is reset to 165 and a warning is generated. Reinstate the option of MAXREF < 0.
        • Fixed the display of superelements in LS-PrePost. Enhanced reading of Nastran dmig files to allow for LS-DYNA-like  comment lines starting with '$'.  Fixed a problem with implicit initialization in MPP with 2 or more superelements. See *ELEMENT_DIRECT_MATRIX_INPUT.
        • Turned off annoying warning messages associated with zero contact elemental stiffness matrices coming from mortar contact. See *CONTACT_..._MORTAR
        • Fixed construction of d3mode file in MPP.  Involves proper computation of the reduced stiffness matrix.  See *CONTROL_IMPLICIT_MODES
        • Fixed up *PART_MODES to correctly handle constraint modes.
          • removed rigid body modes
          • correct construction of reduced stiffness matrix
        • Enhanced the error handling for input for *PART_MODES.
        • Modified open statements for binary files used by implicit to allow for use of *CASE.
        • Removed internal use files such as spooles.res when not required for debugging.
        • Fixed implicit static condensation and implicit mode computation to properly deal with the *CASE environment. See *CONTROL_IMPLICIT_STATIC_CONDENSATION and *CONTROL_IMPLICIT_MODES. Sort node/dof sets for implicit_mode to get correct results. Properly handle cases with only solid elements.
        • Add implicit implementation of the new "last location" feature for MPP error tracking.
        • Fixed problem with implicit processing of rigid body data with deformable to rigid switching (*DEFORMABLE_TO_RIGID).
        • Extended Implicit model debugging for LPRINT=3 (*CONTROL_IMPLICIT_SOLVER) to isogeometric and other large elemental stiff matrices.
        • Added beam rotary mass scaling to the modal effective mass computation. Enhanced implicit computation of modal effective mass that is output to file eigout with *CONTROL_IMPLICIT_EIGENVALUE. We had to account for boundary SPC constraints as well as beam reference nodes to get the accumulated percentage to add up to 100%.
        • Fixed a problem reporting redundant constraints for MPP Implicit.
        • Enhanced *CONTACT_AUTO_MOVE for implicit.
        • Fixed Implicit handling of *CONSTRAINED_TIE-BREAK in MPP.
        • Added support for implicit dynamics to *MAT_157 and *MAT_120.
        • Skip frequency damping during implicit static dynamic relaxation.
        • Added feature to simulate brake squeal. Transient and mode analysis can be combined to do the brake squeal study by intermittent eigenvalue analysis. Besides *CONTROL_IMPLICIT_ROTATIONAL_DYNAMICS, *CONTROL_IMPLICIT_SOLVER should also be used, setting LCPACK=3 to enable unsymmetric stiffness matrix. In the non-symmetric stiffness matrix analysis such as brake squeal analysis, the damping ratio, defined as -2.0*RE(eigenvalue)/ABS(IMG(eigenvalue)), can be output to the EIGOUT file and plotted in LS-PrePost. A negative damping ratio indicates an unstable mode.
        • Add a warning message if the defined rotational speed is not the same as NOMEG in *CONTROL_IMPLICIT_ROTATIONAL_DYNAMICS.
        • *CONTROL_IMPLICIT:
          • Fixed a bug to initialize velocity correctly when using a displacement file in dynamic relaxation for implicit MPP.
        • Nonlinear implicit solver 12 is made default implicit solver, which is aimed for enhanced robustness in particular relation to BFGS and line search.
        • Parameter IACC available on *CONTROL_ACCURACY to invoke enhanced accuracy in selected elements, materials and tied contacts. Included is strong objectivity in the most common elements, strong objecitity and physical respons in most commont tied contacts and full iteration plasticity in *MAT_024 and *MAT_123. For more detailed information refer to the manual.
        • Bathe composite time integration scheme implemented for increased stability and conservation of energy/momentum, see *CONTROL_IMPLICIT_DYNAMICS. Time integration parameter ALPHA on *CONTROL_IMPLICIT_DYNAMICS is used for activation.
        • For NLNORM.LT.0 all scalar products in implicit are with respect to all degrees of freedom, sum of translational and rotational (similar to NLNORM.EQ.4), just that the rotational dofs are scaled using ABS(NLNORM) as a characteristic length to appropriately deal with consistency of units.
        • The message 'convergence prevented due to unfulfilled bc...' has annoyed users. Here this is loosened up a little and also accompanied with a check that the bc that prevents convergence is actually nonzero. Earlier this prevention has activated even for SPCs modelled as prescribed zero motion, which does not make sense.
        • Implicit now writes out the last converged state to the D3PLOT database on error termination if not already written.
        • Fixed bug for *CONTROL_IMPLICIT_MODAL_DYNAMIC if jobid is used.

        .

        Initial
        • Fix incorrect NPLANE and NTHICK for *INITIAL_STRESS_SHELL when output to dynain file for shell type 9.
        • Fix *INITIAL_STRAIN_SHELL output to dynain for shell types 12 to 15 in 2D analysis. Write out strain at only 1 intg point if INTSTRN=0 in *INTERFACE_SPRINGBACK_LSDYNA and all strains at all 4 intg points if INTSTRN=1 and nip=4 in *SECTION_SHELL.
        • *INITIAL_EOS_ALE:
          • Allow initialization of internal energy density, relative volume, or pressure in ALE elements by part, part set, or element set.
        • *INITIAL_VOLUME_FRACTION_GEOMETRY:
          • Add option (FAMMG<0) to form pairs of groups in *SET_MULTI-MATERIAL_GROUP_LIST to replace the first group of the pair by the second one.
        • *INITIAL_STRESS_DEPTH can now work with parts that have an Equation of State (EOS types 1, 4, 6 only). Note however that *INITIAL_STRESS_DEPTH does not work with ALE.
        • Fix several instances of overwriting the initial velocities of any interface nodes read in from a linking file (SMP only).
        • *INITIAL_VOLUME_FRACTION_GEOMETRY:
          • Add local coordinate system option for box.
        • The initial strain and energy is calculated for *INITIAL_FOAM_REFERENCE_GEOMETRY.
        • Add the option of defining the direction cosine using two nodes for *INITIAL_VELOCITY_GENERATION.
        • Fix incorrect transformation of *DEFINE_BOX which results in incorrect initial velocities if the box is used in *INITIAL_VELOCITY.
        • Fix incorrect initial velocity when using *INITIAL_VELOCITY with NX=-999.
        • Fix seg fault when using *INITIAL_INTERNAL_DOF_SOLID_TYPE4 in dynain file.
        • Do not transform the translational velocities in *INITIAL_VELOCITY or *INITIAL_VELOCITY_GENERATION if the local coordinate system ICID is defined.
        • Fix uninitialized velocities when using *INITIAL_VELOCITY_GENERATION with STYP=2, i.e. part id, for *ELEMENT_SHELL_COMPOSITE/*ELEMENT_TSHELL_COMPOSITE.
        • Fix incorrect initialization of velocities if using *INITIAL_VELOCITY_GENERATION with STYP=1, i.e. part set for shells with formulation 23 & 24.
        • Fix incorrect initial velocity and also mass output to d3hsp for shell types 23 & 24.
        • Fix incorrect initial velocities when using *INITIAL_VELOCITY_GENERATION with irigid=1 and *PART_INERTIA with xc=yc=zc=0 and nodeid>0 with *DEFINE_TRANSFORMATION.
        • Fix incorrect stress initialization of *MAT_057/*MAT_LOW_DENSITY_FOAM using dynain file with *INITIAL_STRESS_SOLID when NHISV is equal to the number of history variables for this *MAT_057.
        • Fix seg fault when reading dynain.bin
        • Fixed stress initialization (*INITIAL_STRESS_SECTION) for type 13 tetrahedral elements. The pressure smoothing was causing incorrect pressure values in the elements adjacent to the prescribed elements.
        • Assign initial velocities (*INITIAL_VELOCITY) to beam nodes that are generated when release conditions are defined (RT1, RT2, RR1, RR2 on *ELEMENT_BEAM.)
        • Added an option to retain bending stiffness in spot weld beams that have prescribed axial force.  To use is, set KBEND=1 on *INITIAL_AXIAL_FORCE_BEAM.
        • Fix for *INITIAL_STRESS_BEAM when used with spotweld beam type 9. It was possible that error/warning message INI+140 popped up even if number of integration points matched exactly.
        • Fix for the combination of type 13 tet elements and *INITIAL_STRESS_SOLID. The necessary nodal values for averaging (element volume, Jacobian) were not correctly initialized. Now the initial volume (IVEFLG) is used to compute the correct initial nodal volume.

        .

        Isogeometric Elements
        • Enable spc boundary condition to be applied to extra nodes of nurbs shell, see *CONSTRAINED_NODES_TO_NURBS_SHELL
        • Fix a bug for isogeometric element contact, IGACTC=1, that happens when more than one NURBS patches are used to model a part so that a interpolated elements have nodes belonging to different NURB patches.
        • *ELEMENT_SOLID_NURBS_PATCH:
          • Enable isogeometric analysis for solid elements, it is now able to do explicit and implicit analysis, such as contact and eigenvalue analysis, etc.
          • Add mode stress analysis for isogeometric solid and shell elements so that the isogeometric element is also able to do frequency domain analysis.
        • Add reduced, patch-wise integration rule for C1-continuous quadratic NURBS. This can be used by setting INT=2 in *ELEMENT_SHELL_NURBS_PATCH.
        • Add trimmed NURBS capability. Define NL trimming loops to specify a trimmed NURBS patch. Use *DEFINE_CURVE (DATTYP=6) to specify define trimming edges in the parametric space.
        • Fix bug in added mass report for *ELEMENT_SHELL_NURBS_PATCH in MPP.

        .

        Load
        • *LOAD_GRAVITY_PART and staged construction (*DEFINE_STAGED_CONSTRUCTION_PART) were ignoring non-structural mass MAREA (shells) and NSM (beams). Now fixed.
        • Fix for *INTERFACE_LINKING in MPP  when used with adaptivity.
        • Updates for *INTERFACE_LINKING so that it can be used with adaptivity, provided the linked parts are adapting.
        • Fix for *INTERFACE_LINKING when used with LSDA based files generated by older versions of the code.
        • *DEFINE_CURVE_FUNCTION:
          • Functions "DELAY", PIDCTL" and "IF" of are revised.
          • Add sampling rate and saturation limit to PIDCTL of *DEFINE_CURVE_FUNCTION.
          • "DELAY" of *DEFINE_CURVE_FUNCTION can delay the value of a time-dependent curve by "-TDLY" time steps when TDLY<0.
        • Add edge loading option to *LOAD_SEGMENT_SET_NONUNIFORM.
        • Fix insufficient memory error,SOL+659, when using *LOAD_ERODING_PART_SET with mpp.
        • Fix incorrect loading when using *LOAD_ERODING_PART_SET with BOXID defined.
        • Fix incorrect pressure applied if the directional cosines, V1/V2/V3, for *LOAD_SEGMENT_SET_NONUNIFORM do not correspond to a unit vector.
        • Add *DEFINE_FUNCTION capability to *LOAD_SEGMENT_SET for 2D analysis.
        • Fix incorrect behavior when using arrival time, AT, or box, BOXID, in *LOAD_ERODING_PART_SET.
        • Fix error when runing analysis with  *LOAD_THERMAL_CONSTANT_ELEMENT_(OPTION) in MPP with ncpu>1.
        • Fixed *LOAD_STEADY_STATE_ROLLING when used with shell form 2 when used with Belytschko-Wong-Chang warping stiffness (BWC=1 *CONTROL_SHELL).
        • Add "TIMESTEP" as a code defined value available for *DEFINE_FUNCTION and *DEFINE_CURVE_FUNCTION. It holds the current simulation timestep.
        • Fixed issues involving *LOAD_THERMAL_D3PLOT.
        • Allow extraction of node numbers in loadsetud for all values of LTYPE in *USER_LOADING_SET. Comments included appropriately in the code. Argument list of loadsetud is changed accordingly.
        • Implemented SPF simulation (*LOAD_SUPERPLASTIC_FORMING) for 2d problems.
        • Added effective stress as target variable for SPF simulation.
        • Added box option for SPF simulation to limit target search regions.

        .

        Material
        • Fix output to d3hsp for *MAT_HYPERELASTIC_RUBBER. Broken in r93028.
        • Error terminate with message, KEY+1115, if _STOCHASTIC option is invoked for *MAT_010, *MAT_015, *MAT_024, *MAT_081, *MAT_098, *MAT_123 but no *DEFINE_STOCHASTIC_VARIATION or *DEFINE_HAZ_PROPERTIES keyword is present in the input file.
        • Fix spurious error termination when using *DEFINE_HAZ_PROPERTIES with adaptivity.
        • Fixed *MAT_161 and *MAT_162 when run with MPP. The array that is used to share delamination data across processors had errors.
        • *MAT_261/ *MAT_262:
          • Fixed problem using *DAMPING_PART_STIFFNESS together with RYLEN=2 in *CONTROL_ENERGY.
        • Added safety check for martensite phase kinetics in *MAT_244.
        • Fix for combination of *MAT_024_STOCHASTIC and shell elements type 13, 14, and 15 (with 3d stress state).
        • Fix bug in *MAT_021 and *MAT_023 when used with *MAT_ADD_THERMAL_EXPANSION.
        • *MAT_ALE_VISCOUS:
          • Implement a user defined routine in dyn21.F to compute the dynamic viscosity.
        • Add histlist.txt to usermat package. This file lists the history variables by material.
        • Bug in *MAT_089 fixed:
          • The load curve LCSS specifies the relationship between "maximum equivalent strain" and the von Mises stress. The "maximum equivalent strain" includes both elastic and plastic components. The material model was not calculating this variable as intended, so was not following LCSS accurately. The error was likely to be more noticeable when elastic strains are a significant proportion of the total strain e.g. for small strains or low initial Youngs modulus.
        • Fixed bug affecting *MAT_119:
          • unpredictable unloading behaviour in local T-direction if there are curves only for the T-direction and not for the S-direction.
        • Fixed bug in *MAT_172:
          • Occured when ELFORM=1 (Hughes-Liu shell formulation) was combined with Invariant Numbering (INN>0 on *CONTROL_ACCURACY). In this case, the strain-softening in tension did not work: after cracking, the tensile strength remained constant.
        • New option for *MAT_079:
          • Load curve LCD defining hysteresis damping versus maximum strain to date. This overrides the default Masing behaviour.
        • *MAT_172:
          • Added error termination if user inputs an illegal value for TYPEC. Previously, this condition could lead to abnormal terminations that were difficult to diagnose.
          • Fixed bug affecting ELFORM=16 shells made of *MAT_172 - spurious strains could develop transverse to the crack opening direction.
        • Fixed bug in *MAT_ARUP_ADHESIVE (*MAT_169). The displacement to failure in tension was not as implied by the inputs TENMAX and GCTEN. For typical structural adhesives with elastic stiffness of the order of 1000-10000 MPa, the error was very small. The error became large for lower stiffness materials.
        • *MAT_SPR_JLR:
          • Modify output variables from *MAT_SPR_JLR (see Manual).
          • Fix bug that caused spurious results or unexpected element deletion if TELAS=1.
        • Fixed bug in *MAT_174 - the code could crash when input parameters EUR=0 and FRACR=0..
        • Fix MPP problem when writing out aea_crack file for *MAT_WINFRITH.
        • Include *MAT_196 as one that triggers spot weld thinning.
        • *MAT_ADD_FATIGUE:
          • Implemented multi slope SN curves to be used in random vibration fatigue (*FREQUENCY_DOMAIN_RANDOM_VIBRATION_FATIGUE) and SSD fatigue (*FREQUENCY_DOMAIN_SSD_FATIGUE).
        • Guard against possible numerical round off that in some cases might result in unexpected airflow in *MAT_ADD_PORE_AIR.
        • Added new material *MAT_115_O/*MAT_UNIFIED_CREEP_ORTHO.
        • *MAT_274:
          • Added support for 2D-solids. New flag (parameter 8 on card 2) is used to switch normal with in-plane axis.
        • *MAT_255:
          • Fixed bug in plasticity algorithm and changed from total strain rate to plastic strain rate for stability. Added VP option (parameter 5 on card 2) for backwards compatibility: VP=0 invokes total strain rate used as before.
        • Added new cohesive material *MAT_279/*MAT_COHESIVE_PAPER to be used in conjunction with *MAT_274/*MAT_PAPER.
        • User materials:
          • Added support for EOS with user materials for tshell formulations 3 and 5.
        • Fixed bug in dyna.str when using EOS together with shells and orthotropic materials.
        • *MAT_122:
          • A new version of *MAT_HILL_3R_3D is available. It supports temperature dependent curves for the Young's/shear moduli, Possion ratios, and Hill's anisotropy parameters. It also supports 2D-tables of yield curves for different temperatures. Implicit dynamics is supported. The old version is run if parameter 5 on card 3 is set to 1.0.
        • Added the phase change option to *MAT_216, *MAT_217, *MAT_218 to allow material properties to change as a function of location. This capability is designed to model materials that change their properties due to material processing that is otherwise not modeled. For example, increasing the mass and thickness due to the deposition of material by spraying. It is not used for modeling phase changes caused by pressure, thermal loading, or other mechanical processes modeled within LS-DYNA.
        • Fix internal energy computation of *MAT_ELASTIC_VISCOPLASTIC_THERMAL/*MAT_106.
        • Fix incorrect results or seg fault for *MAT_FU_CHANG_FOAM/*MAT_083 if KCON > 0.0 and TBID.ne.0.
        • If SIGY=0 and S=0 in *MAT_DAMAGE_2/*MAT_105, set S=EPS1/200, where EPS1 is the first point of yield stress input or the first ordinate point of the LCSS curve.
        • Set xt=1.0E+16 as default if user inputs 0.0 for *MAT_ENHANCED_COMPOSITE_DAMAGE/*MAT_054. Otherwise, random failure of elements may occur. Implemented for thick shells and solids.
        • Allow *MAT_ENHANCED_COMPOSITE_DAMAGE/*MAT_054 failure mechanism to work together with *MAT_ADD_EROSION for shells.
        • Fix incorrect erosion behavior if *MAT_ADD_EROSION is used with failure criteria defined for *MAT_123/*MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY.
        • Fix non-failure of triangular elements type 4 using *MAT_ADD_EROSION with NUMFIP=-100.
        • Implement scaling of failure strain for *MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY_STOCHASTIC/*MAT_123_STOCHASTIC for shells.
        • Fix incorrect behavior for *MAT_LINEAR_ELASTIC_DISCRETE_BEAM/*MAT_066 when using damping  with implicit(statics) to explicit switching.
        • Fix error due to convergence when using *MAT_CONCRETE_EC2/*MAT_172 in implicit and when FRACRX=1.0 or FRACRY=1.0
        • Fix incorrect fitting results for *MAT_OGDEN_RUBBER/*MAT_077_O if the number of data points specifed in LCID is >100.
        • Fix incorrect fitting results for *MAT_MOONEY-RIVLIN-RUBBER/*MAT_027 if the number of data points specifed in LCID is >100.
        • Fix incorrect forces/moments when preloads are used for *MAT_067/*MAT_NONLINEAR_ELASTIC_DISCRETE_BEAM and the strains changes sign.
        • Implement *MAT_188/*MAT_THERMO_ELASTO_VISCOPLASTIC_CREEP for 2D implicit analysis.
        • Support implicit for *MAT_121/*MAT_GENERAL_NONLINEAR_1DOF_DISCRETE_BEAM.
        • Fix seg fault when using *DEFINE_HAZ_TAILOR_WELDED_BLANK with *DEFINE_HAZ_PROPERTIES.
        • Fix ineffective *MAT_ADD_EROSION if the MID is defined using a alphanumeric label.
        • Fix seg fault when using *MAT_PIECEWISE_LINEAR_PLASTIC_THERMAL/*MAT_255 for solids.
        • Zero the pressure for *MAT_JOHNSON_HOLMQUIST_JH1/*MAT_241 after it completely fractures, i.e. D>=1.0, under tensile load.
        • Fix incorrect element failure when using EPSTHIN and VP=0 for *MAT_123/*MODIFIED_PIECEWISE_LINEAR_PLASTICITY.
        • Fix error termination when using adaptive remeshing for 2D analysis with *MAT_015/JOHNSON_COOK and NIP=4 in *SECTION_SHELL and ELFORM=15.
        • Fix erosion due to damage, max shear & critical temperature in elastic state for *MAT_MODIFIED_JOHNSON_COOK/*MAT_107 for solids.
        • Check diagonal elements of C-matrix of *MAT_002/*MAT_{OPTION}TROPIC_ELASTIC and error terminate with message, STR+1306, if any of them are negative.
        • Fix plastic strain tensor update for *MAT_082/*MAT_PLASTICITY_WITH_DAMAGE.
        • Fix error when using *MAT_144/*MAT_PITZER_CRUSHABLE_FOAM with solid tetahedron type 10.
        • Fix out-of-range forces after dynamic relaxation when using VP=1 for *MAT_PIECEWISE_LINEAR_PLASTICITY and non-zero strain rate parameters, C & P, and the part goes into plastic deformation during dynamic relaxation.
        • Fixed unit transformation for GAMAB1 and GAMAB2 on *MAT_DRY_FABRIC.  We were incorrectly transforming them as stress.
        • Fixed implicit solutions with shell elements that use *MAT_040 and laminated shell theory.
        • Fixed the stress calculation in the thermal version of *MAT_077.
        • Corrected the AOPT=0 option of ortho/anisotropic materials when use with skewed solid elements. Previously, the material direction was initialized to be equivalent to the local coordinate system direction. This is not consistent with the manual for skewed elements which states that the material a-axis is in the 1-2 directions for AOPT=0. This is now fixed and the manual is correct.
        • Fixed the AOPT=0 option of ortho/anisotropic materials for tetrahedral element forms 10, 13, and 44.
        • Fixed *MAT_082 for solid elements. An error in the history data was causing possible energy growth or loss of partially damaged elements.
        • Modified *MAT_FABRIC/*MAT_034 FORM=24 so that Poisson's effects occur in tension only.
        • Modified *MAT_221/*MAT_ORTHOTROPIC_SIMPLIFIED_DAMAGE to correct the damage behaviour. Prior to this fix, damage was applied to new increments of stress, but not the stress history, so material softening was not possible.
        • Fixed *MAT_106 when used with curves to define the Young's modulus and Poisson's ratio and when used with thick shell form 5 or 6. The assumed strain field was unreasonable which caused implicit convergence to fail.
        • Added 2 new erosion criteria for *MAT_221/*MAT_ORTHOTROPC_SIMPLIFIED_DAMAGE.
          • The new options are:
          NERODE=10:  a or b directions failure (tensile or compressive) plus out of plane failure bc or ca.
          NERODE=11:  a or b directions failure (tensile only) plus out of plane failure bc or ca.
          • Added a new option for shell *MAT_022/*MAT_COMPOSITE_DAMAGE. When ATRACK=1, the material directions will follow not only element rotation, but also deformation. This option is useful for modeling layered composites, that have material a-directions that vary by layer, by allowing each layer to rotate independently of the others. Within each layer, the b-direction is always orthogonal to the a-direction.
          • Fixed the TRUE_T option on *MAT_100 and *MAT_100_DA.  If the weld connects shells with different thickness and therefore different bending stiffness, the scheme used by TRUE_T to reduce the calculated moment could behave somewhat unpredictably. With the fix, TRUE_T behaves much better, both for single brick welds and brick assemblies.
          • Added a warning message and automatically switch DMGOPT>0 to DMGOPT=0 on *MAT_FABRIC when RS < EFAIL or RS = EFAIL. This prevents a problem where weld assemblies did not fail at all when RS=0.
          • *MAT_009, *MAT_010, *MAT_011, *MAT_015, *MAT_088, and *MAT_224 are now available for thick shells, however only *MAT_015, *MAT_088, and *MAT_224 are available for the 2D tshell forms 1,2, and 6.
          • Added thick shell support for the STOCHASTIC option of *MAT_010, *MAT_015, *MAT_024, *MAT_081, and *MAT_098.
          • Added support for *MAT_096 for several solid element types including ELFORMs 3, 4, 15, 18, and 23.
          • Added a MIDFAIL keyword option for *MAT_024, (*MAT_PIECEWISE_LINEAR_PLASTICITY). With this option, element failure does not occur until the failure strain is reached in the mid plane layer. If an even number of layers is used, then the failure occurs when the 2 closest points reach the failure strain.
          • Enabled *MAT_026 and *MAT_126 (HONEYCOMB) to be used with thick shell forms 3, 5, and 7.  These was initialized incorrectly causing a zero stress.
          • Enabled *MAD_ADD_EROSION to be used with beams that have user defined integration. Memory allocation was fixed to prevent memory errors.
          • Enabled OPT=-1 on *MAT_SPOTWELD for solid elements.
          • Enabled thick shells to use *MAT_103 and *MAT_104 in an implicit solution. These materials were lacking some data initialization so they would not converge.
          • Enabled solid elements with user-defined orthotropic materials to work with the INTOUT and NODOUT options on *DATABASE_EXTENT_BINARY. The transformation matrix was stored in the wrong place causing strain and stress transformations to fail.
          • Enabled *MAT_017 to run with thick shell forms 3 and 5. Neither element was initialized correctly to run materials with equations of state.
          • Add degradation factors and strain rate dependent strength possibility for *MAT_054/*MAT_ENHANCED_COMPOSITE_DAMAGE solids.
          • Fixed bug in *MAT_058/*MAT_LAMINATED_COMPOSITE_FABRIC when used with strain-rate dependent tables for stiffnesses EA, EB and GAB and LAMSHT=3.
          • Add strain rate dependency of ERODS in *MAT_058.
          • Add possibility to use *DEFINE_FUNCTION for *MAT_SPOTWELD_DAMAGE_FAILURE (*MAT_100), OPT=-1/0. If FVAL=FunctionID, then a *DEFINE_FUNCTION expression is used to determine the weld failure criterion using the following arguments:
            • func (N_rr, N_rs, N_rt, M_rr, M_ss, M_tt).
          • Store tangential and normal separation (delta_II & delta_I) as history variables 1&2 of *MAT_138/*MAT_COHESIVE_MIXED_MODE.
          • Add second normalized traction-separation load curve (TSLC2) for Mode II in *MAT_186/*MAT_COHESIVE_GENERAL.
          • Fixed bug in using *MAT_157/*MAT_ANISOTROPIC_ELASTIC_PLASTIC with IHIS.gt.0 for shells. Thickness strain update d3 was not correct and plasticity algorithm failed due to typo.
          • Fixed bug in *MAT_157 for solids:
            • This affected the correct stress transformation for post-processing using CMPFLG=1 in *DATABASE_EXTENT_BINARY.
          • Fixed bug in *MAT_225 (*MAT_VISCOPLASTIC_MIXED_HARDENING) when using Table-Definition together with kinematic hardening.
          • Add load curves for rate dependent strengths (XC, XT, YC, YT, SC) in *MAT_261/*MAT_LAMINATED_FRACTURE_DAIMLER_PINHO (shells only).
          • Add table definition for LCSS for rate dependency in *MAT_261 (shells only).
          • Add load curves for rate dependent strengths (XC, XCO, XT, XTO, YC, YT, SC) in *MAT_262/*MAT_LAMINATED_FRACTURE_DAIMLER_CAMANHO (shells only).
          • Fixed bug when using *MAT_261 or *MAT_262 solids (ELFORM=2).
          • Add load curves for SIGY and ETAN for rate dependency of *MAT_262 (shells only)
          • *MAT_021_OPTION
            • Fixed a bug for defining different orientation angles through the thickness of TSHELL elements (formulations 2 and 3)
            • Added new option CURING:
              • Two additional cards are read to define parameters for curing kinetics. Formulation is based on Kamal's model and considers one ODE for the state of cure.
              • State of cure does not affect the mechanical parameters of the material.
              • CTE's for othotropic thermal expansione can be defined in a table with respect to state of cure and temperature.
              • An orthotropic chemical shrinkage is accounted for.
          • *MAT_REINFORCED_THERMOPLASTICS_OPTION (*MAT_249_OPTION)
            • Fiber shear locking can be defined wrt to the fiber angle or shear angle.
            • Output of fiber angle to history variables.
            • Simplified input:
              • Instead of always reading 8 lines, now the user only has to specify data for NFIB fibers.
            • Added fiber elongation to history variables in *MAT_249 for postprocessing.
            • New Option UDFIBER (based on a user defined material by BMW):
              • Transversely isotropic hyperelastic formulation for each fiber family (see Bonet&Burton,1998).
              • Anisotropic bending behavior based on modified transverse shear stiffnesses.
              • Best suited for dry NCF's.
          • *MAT_GENERALIZED_PHASE_CHANGE (*MAT_254) (New material that is a generalized version of *MAT_244 with application to a wider range of metals.):
            • Up to 24 different phases can be included.
            • Between each of the phases, the phase transformation can be defined based on a list of generic transformation laws. For heating JMAK and Oddy are implemented. For cooling Koistinen-Marburger, JMAK and Kirkaldy can be chosen.
            • Constant parameters for the transformations are given as 2d tables, parameters depending on temperature (rate) or phase concentration employ 3d tables.
            • Plasticity model (temperature and strain rate dependent) similar to *MAT_244.
            • Transformation induced strains.
            • TRIP algorithm included.
            • Temperature dependent mixture rules.
            • Parameter 'dTmax' that defines the maximum temperature increment within a cycle. If the temperature difference at a certain integration point is too high, local subcycling is performed.
            • Implemented for explicit/implicit analysis and for 2d/3d solid elements.
          • *MAT_ADHESIVE_CURING_VISCOELASTIC (*MAT_277) (New material implementation including a temperature dependent curing process of epoxy resin based on the Kamal-Sourour-model.)
            • Material formulation is based on *MAT_GENERAL_VISCOELASTIC.
            • Viscoelastic properties defined by the Prony series, coefficients as functions of state of cure.
            • Chemical and thermal shrinkage considered (differential or secant formulations).
            • Available for shell and solid elements.
            • Can be used in combination with *MAT_ADD_COHESIVE.
            • Implemented for explicit and implicit analysis.
            • An incremental and a total stress calculation procedure available.
          • Enable *MAT_ADD_EROSION to be safely used with material models that have more than 69 history variables, for now the new limit is 119.
          • Use correct element ID for output of failed solid elements when GISSMO (*MAT_ADD_EROSION) is used with *CONTROL_DEBUG.
          • Improve performance of GISSMO (*MAT_ADD_EROSION with IDAM=1), especially when used with *MAT_024, no other failure criteria, shell elements, and DMGEXP = 1 or 2. Allows speed-up of 10 to 20 percent.
          • Add new keyword *MAT_ADD_GENERALIZED_DAMAGE. It provides a very flexible approach to add non-isotropic (tensorial) damage to standard materials in a modular fashion. Solely works with shell elements at the moment.
          • Correct the computation of effective strain for options ERODS<0 in *MAT_058 (*MAT_LAMINATED_COMPOSITE_FABRIC) and EFS<0 in *MAT_261 and *MAT_262 (*MAT_LAMINATED_FRACTURE_DAIMLER_...). The shear strain term was twice the size as it should have been.
          • Adjust stiffness for time step calculation in *MAT_076 and subsequent models (*MAT_176, *MAT_276, ...) to prevent rarely observed instabilities.
          • Add output of original and fitted curves to messag and separate file (curveplot_<MID>) for *MAT_103.
          • In *MAT_104 (*MAT_DAMAGE_1), stress-strain curve LCSS can now be used directly with all FLAG options (-1,0,1,10,11), no fitting.
          • Correct strain calculation for anisotropic damage in *MAT_104 (*MAT_DAMAGE_1) with FLAG = -1.
          • Initialize stress triaxiality of *MAT_107 (*MAT_MODIFIED_JOHNSON_COOK) to zero instead of 1/3.
          • Avoid negative damage in *MAT_107 (*MAT_MODIFIED_JOHNSON_COOK) with FLAG2=0 for solid elements.
          • Rectify the characteristic element length in *MAT_138 (*MAT_COHESIVE_MIXED_MODE) for solids type 21 and 22 (cohesive pentas) and shell type 29 (cohesive shell) for "curve" options T<0 and S<0.
          • Correct/improve material tangent for *MAT_181 with PR>0 (foam option).
          • Add possibility to define logarithmically defined strain rate table LCID-T in material *MAT_187 (*MAT_SAMP-1).
          • Fix missing offset when using *DEFINE_TRANSFORMATION with load curve LCID-P in *MAT_187 (*MAT_SAMP-1).
          • Add reasonable limit for biaxial strength in *MAT_187 with RBCFAC > 0.5 to avoid concave yield surface.
          • Improve performance of *MAT_187 to reach speed-up of 10 to 40 percent, depending on which options are used.
          • Add new option for *MAT_224 (*MAT_TABULATED_JOHNSON_COOK). With BETA<0 not only a load curve but now also a table can be referred to. The table contains strain rate dependent curves, each for a different temperature.
          • Fix for implicit version of *MAT_224 (*MAT_TABULATED_JOHNSON_COOK). Computations with shell elements should converge faster now.
          • *MAT_224 (*MAT_TABULATED_JOHNSON_COOK) can now be used in implicit even with temperature dependent Young's modulus (parameter E<0).
          • Always store the Lode parameter as history variable #10 in *MAT_224 (*MAT_TABULATED_JOHNSON_COOK), not just for LCF being a table.
          • Variable LCI of *MAT_224 / *MAT_224_GYS can now refer to a *DEFINE_TABLE_3D. That means the plastic failure strain can now be a function of Lode parameter (TABLE_3D), triaxiality (TABLE), and element size (CURVE).
          • For thick shells type 1 and 2, the element size in *MAT_224 is now correct.
          • Add new option for definition of parameters FG1 and FG2 in *MAT_240 (*MAT_COHESIVE_MIXED_MODE_ELASTOPLASTIC_RATE).
          • Add new option to *MAT_240:
            • new load curves LCGIC and LCGIIC define fracture energies GIC and GIIC as functions of cohesive element thickness. GIC_0, GIC_INF, GIIC_0, and GIIC_INF are ignored in that case.
          • Add new feature to *MAT_248 (*MAT_PHS_BMW). Estimated Hocket-Sherby parameters are written to history variables based on input functions and phase fractions.
          • Add new option ISLC=2 to *MAT_248 (*MAT_PHS_BMW) which allows to define load curves (cooling rate dependent values) for QR2, QR3, QR4, and all parameters on Cards 10 and 11.
          • Add new option LCSS to *MAT_252 (*MAT_TOUGHENED_ADHESIVE_POLYMER):
            • A load curve, table or 3d table can now be used to define rate and temperature dependent stress-strain behavior (yield curve).
          • Fix for *MAT_255, evaluation of 2d tables LCIDC and LCDIT. Negative temperatures were interpreted as logarithmic rates.
          • Add new material model *MAT_280 (*MAT_GLASS) for shell elements. It is a smeared fixed crack model with a selection of different brittle, stress-state dependent failure criteria and crack closure effects.
          • *DEFINE_FABRIC_ASSEMBLIES:
            • Assemblies of *MAT_FABRIC part sets can be specified to properly treat bending of t-intersecting fabrics that are stitched or sewn together. See ECOAT, TCOAT and SCOAT on *MAT_FABRIC_... Bending can only occur within an assembly, aka a part set.
          • *MAT_USER_DEFINED_MATERIAL_MODELS:
            • In user defined material models, a logical parameter 'reject' can be set to .true. to indicate to the implicit solver that equilibrium iterations should be aborted. The criterion is the choise of the implementor, but it could be if plastic strain increases by more than say 5% in one step or damage increases too much, whatever that might render an inaccurate prediction and bad results. Setting this parameter for explicit won't do anything.
          • IHYPER=3 for user shell materials now supports thickness strain update, see *MAT_USER_DEFINED_MATERIAL_MODELS.
          • *MAT_SIMPLIFIED_RUBBER/FOAM:
            • AVGOPT<0 is now supported for the FOAM option, which activates a time averaged strain rate scheme to avoid noisy response.
          • *MAT_181 is now supported for 2D implicit simulations.
          • *MAT_ADD_EROSION: (A number of extensions and improvements to the DIEM damage model were made, IDAM<0.):
            • General efficiency, it was slow, now it's GOT to be faster.
            • NCS can be used as a plastic strain increment to only evaluate criteria in quantifications of plastic strain.
            • NUMFIP<0 is employing the GISSMO approach, number of layers for erosion.
            • A new ductile damage criterion based on principal stress added (DMITYP=4).
            • MSFLD and FLD can be evaluated in mid or outer layers to separate membrane and bending instability (P2).
            • MSFLD and FLD can use an incremental or direct update of instability parameter (P3).
            • Output of integration point failure information made optional (Q2).
            • Specifying DCTYP=-1 on the damage evolution card will not couple damage to stress but the damage variable is only calculated and stored.
          • *MAT_SMOOTH_VISCOELASTIC_VISCOPLASTIC, *MAT_275:
            • An elastic-plastic model with smooth transition between elastic and plastic mode is available. It incorporates viscoelasticity and viscoplasticity and is based on hyper- elastoplasticity so it is valid for arbitrarily large deformations and rotations. A sophisticated parameter estimation is required to match test data, it is available for implicit and explicit analyisis but perhaps mostly suited for implicit.
          • *MAT_FABRIC_MAP:
            • Stress map material 34 is equipped with bending properties identical to that of the form 14 and form -14 version of the fabric. Coating properties are set in terms of stiffness, thickness and yield. The material is supported in implicit, including optional accounting for the nonsymmetric tangent. Should be used with bending stiffness on, and convergence is improved dramatically if geometric stiffness is turned on.
          • *MAT_084 with predefined units (CONM<0) is now transformed correctly with *INCLUDE_TRANSFORM.
          • If LCIDTE=0 in *MAT_121, then LS-DYNA was crashing on some platforms, including Windows.  This is fixed.
          • Fix initialization issues so that PML models can be run with *CASE commands.
          • *MAT_027 is revised to avoid accuracy issues for single precision executables.
          • The nearly imcompressible condition is enhanced for *MAT_027 shell elements.
          • Add a new material model as a option for *MAT_165. *MAT_PLASTIC_NONLINEAR_KINEMATIC_B / *MAT_165B is a mixed hardening material model, and can be used for fatigue analysis.
          • Output local z-stress in *MAT_037, when *LOAD_STRESS_SURFACE is used. This was previously calculated and saved as another history variable.
          • Add a new material model *MAT_260 (2 forms).
            • Uses non-associated flow rule and Hill's yield surface; including strain rate effect and temperate effect. MIT failure criteria is also implemented.
            • Implemented for solids and shells.
            • Strain rate sensitivity for solids.
            • Option to directly input the Pij and Gij values.
            • Separate the material model *MAT_260 into *MAT_260A and *MAT_260B:
              • *MAT260A = *MAT_STOUGHTON_NON_ASSOCIATED_FLOW
              • *MAT260B = *MAT_MOHR_NON_ASSOCIATED_FLOW
            • Incorporates FLD into the fracture strain, so as to consider the mesh size effect.
            • Calculates the characteristic length of the element for *MAT_260B, so that an size-dependent failure criterial can be used.
            • When failure happens for half of the integration points through the thickness, the element is deleted.
          • Add Formablitiy Index to *MAT_036, *MAT_037, *MAT_226.
          • Add new history variables for Formability Index, affecting *MAT_036, *MAT_037, *MAT_125, *MAT_226. Those new history variables are FI, beta, effective strain. These comes after the 4 regular history variables.
          • *MAT_036, *MAT_125:
            • New option _NLP is added to evaluate formability under non-linear strain paths. User inputs a forming limit diagram (FLD), and Formablitiy Index (F.I.) will be automatically converted to effective stain vs. beta based space.

          .

          MPP
          • Fix problem of MPP pre-decomposition that can occur if the local directory specified in the pfile has very different lengths in the initial run vs the actual run.  The difference resulted in a line count difference in the size of the structured files created, throwing off the reading of the file in the actual run.
          • Straighten out some silist/sidist issues in MPP decomp:
            • silist and sidist outside of a "region" in the pfile are no longer supported, and an error message is issued which suggests the use of "region { silist" instead.
            • They have been undocumented for several years (since "region" was introduced), and had other issues.
          • Fix the keywords, *CONTROL_MPP_DECOMPOSITION_CONTACT_DISTRIBUTE and *CONTROL_MPP_DECOMPOSITION_CONTACT_ISOLATE, which were not treating each contact interface individually (as the manual states), but collectively.
          • Fix for MPP decomp of part sets.
          • Fixed *CONTROL_MPP_PFILE (when used inside an include file) so that it honors ID offsets from *INCLUDE_TRANSFORM for parts, part sets, and contact ids referenced in "decomp { region {" specifications. Furthermore, such a region can contain a "local" designation, in which case the decomposition of that region will be done in the coordinate system local to the include file, not the global system.
            • For example:
          *CONTROL_MPP_PFILE
          decomp { region {
          partset 12 local c2r 30 0 -30 0 1 0 1 0 0
          } }
              • would apply the c2r transformation in the coordinate system of the include file, which wasn't previously possible. The local option can be useful even if there are no such transformations, as the "cubes" the decomposition uses will be oriented in the coordinate system of the include file, not the global system. Furthermore, the following decomposition related keywords now have a _LOCAL option, which has the same effect:
                • *CONTROL_MPP_DECOMPOSITION_PARTS_DISTRIBUTE_LOCAL
                • *CONTROL_MPP_DECOMPOSITION_PARTSET_DISTRIBUTE_LOCAL
              • *CONTROL_MPP_DECOMPOSITION_ARRANGE_PARTS_LOCAL
              • *CONTROL_MPP_DECOMPOSITION_CONTACT_DISTRIBUTE_LOCAL
          • Revert revision 86884, which was:
            • "MPP: change to the decomposition behavior of *CONTROL_MPP_DECOMPOSITION_PARTS_DISTRIBUTE, *CONTROL_MPP_DECOMPOSITION_PARTSET_DISTRIBUTE, *CONTROL_MPP_DECOMPOSITION_ARRANGE_PARTS in the case where a decomposition transformation is also used. Previously, any such regions were distributed without the transformation being applied. This has been fixed so that any given transformation applies to these regions also."
            • So now the transformations will NOT apply to these keywords. Really, the "region" syntax should be used together with *CONTROL_MPP_PFILE as it is more specific.
          • Modify behavior of *CONTROL_MPP_DECOMPOSITION_AUTOMATIC so that if the initial velocity used is subject to *INCLUDE_TRANSFORM, the transformed velocities are used.
          • Fix MPP decomposition issue with "decomp { automatic }" which was not honored when in the pfile.
          • Save hex weld creation orientation to the pre-decomposition file so that the subsequent run generates the welds in the same way.
          • Fix for MPP not handling element deletion properly in some cases at decomposition boundaries.
          • Add new pfile option "contact { keep_acnodes }" which does NOT exclude slave nodes of adaptive constraints from contact, which is the default behavior. (MPP only.)
          • MPP Performance-Related Improvements:
            • Allow user input of *LOAD_SEGMENT_FILE through familied files.
            • Bug fix for *LOAD_SEGMENT_FILE to get correct time history data for pressure interpolation.
            • Output two csv files for user to check MPP performance:
              • load_profile.csv: general load balance
              • cont_profile.csv: contact load balance
            • Allow user to control decomp/distribution of multiple airbags using *CONTROL_MPP_DECOMPOSITION_ARRANGE_PARTS
            • memory2= option on *KEYWORD line
            • Disable unreferenced curves after decomposition using *CONTROL_MPP_DECOMPOSITION_DISABLE_UNREF_CURVES. This applies to the curves used in the following options to speed up the execution several times.
              • *BOUNDARY_PRESCRIBED_MOTION_NODE
              • *LOAD_NODE
              • *LOAD_SHELL_ELEMENT
              • *LOAD_THERMAL_VARIABLE_NODE
            • Bug fix for *CONTROL_MPP_DECOMPOSITION_SHOW with *AIRBAG_PARTICLE.
          • Fix cpu dependent results when using function RCFORC() in *DEFINE_CURVE_FUNCTION. This affects MPP only.
          • Fix hang up when using *DEFINE_CURVE_FUNCTION with element function BEAM(id,jflag,comp,rm) and running MPP with np>1.
          • *CONTROL_MPP_DECOMPOSITION:
            • The cpu cost for solid elements -1 and -2 are accounted for in the mpp domain decomposition.
          • Fix bug in *CONTROL_MPP_IO (Windows platform only) related to insufficient administrative privileges for writing tmp file on root drive.
          • Revise l2a utility on Windows platform to create identical node output format as Linux.

          .

          Output
          • Fix for MPP external work when BNDOUT is output and there are *BOUNDARY_PRESCRIBED_MOTION_RIGID commands in the input.
          • Fixed the output of forces and associated energy due to *LOAD_RIGID_BODY for both explicit and implicit (*DATABASE_BNDOUT).
          • Fixed stress and strain output of thick shells when the composite material flag is set on *DATABASE_EXTENT_BINARY. The transformation was backwards.
          • If the size of a single plot state was larger than the D3PLOT size defined by x=<factor> on the execution line, the D3PLOT database may not be readable by LS-PrePost. This issue is now fixed.
          • *DATABASE_PROFILE:
            • Output data profiles for beams (TYPE=5) and add density as DATA=20.
          • New option HYDRO=4 on *DATABASE_EXTENT_BINARY. Outputs 7 additional variables:
            • the same 5 as HYDRO=2 plus volumetric strain (defined as Relative Volume - 1.0) and hourglass energy per unit initial volume.
          • Fix for binout output of SWFORC file which can get the data vs. ids out of sync when some solid spotwelds fail.
          • Fix for D3PLOT output of very large data sets in single precision.
          • Fix for output of BNDOUT data for joints in MPP, which was writing out incorrect data in some cases.
          • Added new option *INTERFACE_SPRINGBACK_EXCLUDE to exclude selected portions from the generated dynain file.
          • Add a new option to *INTERFACE_COMPONENT_FILE to output only 3 degrees of freedom to the file, even if the current model has 6.
          • Minor change to how pressure is computed for triangles in the INTFOR output.
          • Fix MPP output issue with intfor file.
          • Fixes for writing and reading of dynain data in LSDA format.
          • Corrected the summation of rigid body moments for output to bndout for some special cases in MPP.
          • Corrected the output to D3INTER when 10 noded tets are present (D3ITCTL on *CONTROL_IMPLICIT_SOLUTION).
          • Enhanced implicit collection of moments for the RCFORC file.
          • For implicit, convert spc constraint resultant forces to local coordinate system for output. Also corrected Implicit's gathering of resultant forces due to certain SPC constraints.
          • Fixed the gathering of resultant forces in implicit for prescribed motion on nodes of a constrained rigid body for output to BNDOUT.
          • Added output of modal dynamics modal variables to a new file moddynout. Output is controlled by *CONTROL_IMPLICIT_MODAL_DYNAMICS.
          • Corrected the output of resultant forces for Implicit Linear analysis. Corrected the output of resultant forces for MPP executions. These enhancements affect a number of ASCII files including bndout.
          • The following 4 enhancements are to the eigensolvers, including that used for *CONTROL_IMPLICIT_EIGENVALUE.
            • Standardized and enhance the warning/error messages for Implicit eigensolution for the case where zero eigenmodes are computed and returned in EIGOUT and D3EIGV.
            • Added nonsymmetric terms to the stiffness matrix for the implicit rotational dynamics eigenanalysis. This allows brake squeal analysis with the contact nonsymmetric terms from mortar contact now included in the analysis.
            • Updated implicit eigensolution for problems with unsymmetric stiffness matrices. Fixed Rotational Dynamics eigensolution to work correctly when first order matrix (W) is null. (See *CONTROL_IMPLICIT_ROTATIONAL_DYNAMICS).
            • Added the eigensolution for problems with stiffess (symmetric or unsymmetric), mass, and damping.
          • Improve Implicit's treatment of constrained joints to account for rounding errors. Applicable to *CONSTRAINED_JOINT with *CONTROL_IMPLICIT_GENERAL.
          • For implicit springback, zero out the forces being reported to rcforc for those contact interfaces disabled at the time of springback. Also enhance the removal of contact interfaces for springback computations. For *INTERFACE_SPRINGBACK.
          • *DATABASE_RECOVER_NODE is available to recover nodal stress.
          • Fix a bug for detailed stress output, eloutdet, for SOLID type 18.
          • Support new format of interface force files for ALE, DEM, and CPM. LS-PrePost can display the correct label for each output component.
          • Added *DATABASE_NCFORC_FILTER option to allow the NCFORC data to be filtered using either single pass or double pass Butterworth filtering to smooth the output. Added the same filtering capability to *DATABASE_BINARY_D3PLOT. This capability is specified on the additional card for the D3PLOT option and does not require "_FILTER" in the keyword input.
          • Fix incorrect mass properties for solids in SSSTAT file when using *DATABASE_SSSTAT_MASS_PROPERTIES.
          • Fix seg fault during writing of dynain file if INSTRN=1 in *INTERFACE_SPRINGBACK and STRFLG.ne.0 in *DATABASE_EXTENT_BINARY and the *DATABASE_EXTENT_BINARY comes after *INTERFACE_SPRINGBACK. Also output warning message, KEY+1104.
          • Fix zero strain values output to CURVOUT for *DEFINE_CURVE_FUNCTION using function, ELHIST, for solid elements.
          • Fix missing parts in D3PART when MSSCL=1 or 2 in *DATABASE_EXTENT_BINARY.
          • Fix incorrect damping energy computation for glstat.
          • Fix incorrect part mass in D3PLOT for shells, beams & thick shells.
          • Fix incorrect CURVOUT values when using BEAM(id,jflag,comp,rm) for *DEFINE_CURVE_FUNCTION and if the beam formulation is type 3, i.e. truss.
          • Fix incorrect output to CURVOUT file if using ELHIST in *DEFINE_CURVE_FUNCTION for shells.
          • Output stresses for all 4 intg points to eloutdet for cohesive element types 19 & 20.
          • Fix incorrect rotational displacment to NODOUT when REF=2 in *DATABASE_HISTORY_NODE_LOCAL.  Affects MPP only.
          • Fix incorrect strains output to ELOUT for shell type 5 and when NIP>1.
          • Fix incorrect acceleration output to nodout file when IACCOP=1 in *CONTROL_OUTPUT and IGRAV=1 in *ELEMENT_SEATBELT_ACCELEROMETER.
          • Fix corrupted D3PLOT when RESPLT=1 in *DATABASE_EXTENT_BINARY and idrflg.ge.5 in *CONTROL_DYNAMIC_RELAXATION.
          • Fix missing element connectivities in nastin file when using *INTERFACE_SPRINGBACK_NASTRAN_NOTHICKNESS.
          • Fix seg fault when using *DATABASE_BINARY_D3PART with *CONTACT_TIED_SHELL_EDGE_TO_SURFACE. This affects SMP only.
          • Fix incorrect output to BNDOUT when using multiple *LOAD_NODE_POINT for the same node and running MPP with ncpu>1.
          • Fix incorrect dyna.inc file when using *MAT_FU_CHANG_FOAM/MAT_83, *DEFINE_COORDINATE_NODES, and *CONSTRAINED_JOINT_STIFFNESS_GENERALIZED with *INCLUDE_TRANSFORM.
          • Fix IEVERP in *DATABASE_EXTENT_D3PART which was not honored in writing out D3PART files.
          • Fix incorrect stresses written out to dynain for thick shells with formulations 1,2 and 4.
          • Fix incorrect output to DISBOUT data for discrete beams.
          • Fix incorrect output to binary format of DISBOUT. Affects SMP only.
          • Fix error when writing initial stresses for thick shells to dynain. Affects MPP only.
          • Fix thick shells strain output to dynain.
          • Fix incorrect writing of material data to dyna.str for *MAT_SEATBELT when using long=s.
          • Fix coordinate/disp output to D3PLOT of *CONSTRAINED_NODAL_RIGID_BODY's pnode.
          • Fixed the initial D3PLOT state in SMP runs when tied contact is used with the CNTCO parameter on *CONTROL_SHELL. The geometry was wrong in that state.
          • Add cross section forces output (*DATABASE_SECFORC) for cohesive elements ELFORM type 19, 20, 21, and 22.
          • Slight increase of precision for values in nodout file.
          • Add new option FSPLIT to *INTERFACE_SPRINGBACK_LSDYNA to split the dynain file into two files (geometry and initial values).
          • *DEFINE_MATERIAL_HISTORIES:
            • New keyword for organizing material history outputs, currently only for solids, shells and beams and the D3PLOT output but to be extended to tshells and ascii/binout. The purpose is to customize the history variables that otherwise are output via NEIPS/NEIPH/NEIPB on *DATABASE_EXTENT_BINARY, to avoid variable conflict and large d3plots and thus facilitate post-processing of these variables. Currently available in small scale but to be continuously extended.
          • Fixed bug affecting IBINARY=1 (32 bit ieee format) in *DATABASE_FORMAT. This option was not working.
          • Fixed incorrect printout of node ID for *ELEMENT_INERTIA.
          • Increased the header length to 80 for the following files in binout:
            • MATSUM, NODOUT, SPCFORC, NCFORC
          • Fixed bug in which d3msg was not written for SMP.
          • The d3plot output for rigid surface contact was incorrect for MPP.
          • Fixed bugs when when using curve LCDT to control D3PLOT output.
          • Fixed abnormal increase in D3PLOT size caused by outputting velocity and acceleration when data compression is on.
          • Added new variable GEOM in *CONTROL_OUTPUT for chosing geometry or displacement in D3PLOT, D3PART, and D3DRLF.
          • Added command line option "msg=" to output warning/error descriptions. See MSGFLG in *CONTROL_OUTPUT for alternate method of requesting such output. Accepted values for "msg=" are message# or all.
            • message#, e.g.,  KEY+101 or 10101. (This option will print the error/warning message to the screen.)
            • all (This option will print all error/warning messages to d3msg file.)
          • Fixed bug for *DATABASE_BINARY_D3PROP file if adaptivity used. The error caused blank d3prop output.
          • *DATABASE_HISTORY_SHELL_SET combined with *CONTROL_ADAPTIVITY caused error 20211. The error involves the BOX option being used for shell history output.
          • Added *INTEGRATION... data to D3PROP.

          .

          Restart
          • Fix bug when deleted uniform pressure (UP) airbag during simple restart.
          • Fix for index error that could cause problems for accelerometers during full deck restart in MPP.
          • Fix for MPP output of LSDA interface linking file when restarting from a dump file.
          • Fix incorrect strains in d3plot after restart when STRLG>1.
          • Fix incorrect velocity initialization for SMP full deck restart when using *INITIAL_VELOCITY_GENERATION and *INITIAL_VELOCITY_GENERATION_START_TIME.
          • Fix incorrect behavior of *CONTACT_ENTITY in full deck restart.
          • Fix incorrect full deck restart analysis if initial run was implicit and the full deck restart run is explicit.
          • Fix ineffective boundary condition for *MAT_RIGID when using *CHANGE_RIGID_BODY_CONSTRAINT with *RIGID_DEFORMABLE_R2D for small deck restart.
          • Fix initialization of velocities of *MAT_RIGID_DISCRETE nodes after restart using *CHANGE_VELOCITY_GENERATION.
          • Fix internal energy oscillation after full deck restart when using *CONTACT_TIED_SURFACE_TO_SURFACE_OFFSET with TIEDID=1 in optional card D. This affects SMP only.
          • Corrected bug affecting full restart that included any change to node/element IDs. This bug has existed since version R6.
          • Fixed bug affecting d3plot times following fulldeck restart with curve in SMP.
          • Fixed bug in simple restart:
            • *INTERFACE_COMPONENT_FILE forgets the filename. and writes to infmak instead.

          .

          Sensor
          • Enable full restart for *SENSOR.
          • Add optional filter ID to SENSORD of *DEFINE_CURVE_FUNCTION.
          • Enable LOCAL option of *CONSTRAINED_JOINT to be used with *SENSOR_DEFINE_FORCE.
          • Fix a MPP bug that happens when *SENSOR_DEFINE_NODE has a defined N2.
          • *SENSOR_CONTROL:
            • Fix a bug for TYPE=JOINTSTIF
            • Fix a MPP bug for TYPE=PRESC-MOT when the node subject to prescribed motion is part of a rigid body
            • Add TYPE=BELTSLIP to control the lockup of *ELEMENT_SEATBELT_SLIPRING.
            • Add TYPE=DISC-ELES to delete a set of discrete elements.
          • SENSID of *SENSOR_SWITCH will be ignored when TYPE=TIME.
          • Add FTYPE=CONTACT2D to to *SENSOR_DEFINE_FORCE to track the force from *CONTACT_2D.
          • Add the variable SETOPT for *SENSOR_DEFINE_NODE_SET and *SENSOR_DEFINE_ELEMENT_SET to sense and process data from a node set or element set, resp., resulting in a single reported value.
          • *SENSOR can be used to control *CONTACT_GUIDED_CABLE.
          • Fix a bug related to *SENSOR_DEFINE_FUNCTION triggered by more than 10 sensor definitions.

          .

          SPG (Smooth Particle Galerkin)
          • *SECTION_SOLID_SPG (KERNEL=1):
            • The dilation parameters (DX,DY,DZ) of SPG Eulerian kernel are automatically adjusted according to the local material deformation to prevent tensile instability.

          .

          SPH (Smooth Particle Hydrodynamics)
          • Retain user IDs of SPH particles in order to ensure consistent results when changing the order of include files.
          • Add feature to inject SPH particles, *DEFINE_SPH_INJECTION.
          • Added support of various material models for 2D and 3D SPH particles:
            • *MAT_098 (*MAT_SIMPLIFIED_JOHNSON_COOK)
            • *MAT_181 (*MAT_SIMPLIFIED_RUBBER)
            • *MAT_275 (*MAT_SMOOTH_VISCOELASTIC_VISCOPLASTIC)
          • Added support of *DEFINE_ADAPTIVE_SOLID_TO_SPH for 2D shell elements and 2D axisymmetric shell elements.
          • When using *DEFINE_ADAPTIVE_SOLID_TO_SPH, eliminated duplicate kinetic energy calculation for SPH hybrid elements (both SPH particles and solid elements contributed kinetic energy into global kinetic energy).
          • Added support of second order stress update (OSU=1 in *CONTROL_ACCURACY keyword) for 2D and 3D SPH particles. This is necessary for simulation of spinning parts.
          • Added ISYMP option in *CONTROL_SPH to define as a percentage of original SPH particles the amount of memory allocated for generation of SPH ghost nodes used in *BOUNDARY_SPH_SYMMETRY_PLANE.
          • Fixed unsupported part and part set option in *BOUNDARY_SPH_FLOW.
          • Fixed unsupported ICONT option from *CONTROL_SPH when combined with *BOUNDARY_SPH_FLOW.
          • *DEFINE_SPH_TO_SPH_COUPLING:
            • Output contact forces between two SPH parts (x,y,z and resultant forces) into sphout. The forces can be plotted by LS-PrePost.
          • *CONTACT_2D_NODE_TO_SOLID:
            • Added bucket sort seaching algorithm to speed up the process of finding contact pairs between SPH particles and solid segments.

          .

          Thermal
          • Corrected a long standing bug in MPP thermal associated with spotwelds (*CONSTRAINED_SPOTWELD) using thermal linear solver option 11 or greater. The spotweld loads were not being loaded correctly due to an indexing issue in MPP.
          • Fix for thermal with *CASE.
          • Fix MPP support for thermal friction in SOFT=4 contact.
          • Fixed bug where thermal solver gives a non-zero residual even though no loads are present.
          • Added SOLVER=17 (GMRES solver) to *CONTROL_THERMAL_SOLVER for the conjugate heat transfer problem. The GMRES solver has been developed as an alternative to the direct solvers in cases where the structural thermal problem is coupled with the fluid thermal problem in a monolithic approach using the ICFD solver. A significant savings of calculation time can be observed when the problem reaches 1M elements. This solver is implemented for both SMP and MPP.
          • *CONTACT_(option)_THERMAL (3D contact only):
            • Add variable FRTOHT to specifiy fraction of frictional energy applied to slave surface. It follows that  1.-FRTOHT is applied to master surface. Default is 0.5 which gives a 50% - 50% split between the slave and master surfaces which was hardwired in prior releases.
          • First release of *CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIED_WELD_THERMAL. This will only work when used with *BOUNDARY_THERMAL_WELD. This combination of keywords will activate a condition where sliding contact will become tied contact on cooldown when the temperature of the segments in contact go above an input specified temperature limit during welding.
          • *LOAD_THERMAL_D3PLOT:
            • The D3PLOT data base was changed such that the 1st family member contains control words, geometry, and other control entities. Time state data begins in the 2nd family member. This change allows the new D3PLOT data structure to be read in by LS-DYNA when using the *LOAD_THERMAL_D3PLOT keyword. This change is not backward compatible. The old d3plot data structure will no longer be read correctly by LS-DYNA.
          • Synchronize data in TPRINT for SMP and MPP:
            • Fixed output to tprint/binout for thermal contact.
            • Fixed part IDs for part energies.
            • Fixed format of TPRINT file generated by l2a.
          • Fixed handling of start time defined with *CONTROL_START for thermal solver.
          • Change the maximum number of *LOAD_HEAT_CONTROLLER definitions from 10 to 20.
          • Added a third parameter to the TIED_WELD contact option. The parameter specifies heat transfer coefficient h_contweld for the welded contact. Before welding, the parameter from the standard card of the thermal contact is used.
          • Parameter FRCENG supported for mortar contact to yield heat in coupled thermomechanical problems.

          .

          XFEM (eXtended Finite Element Method)
          • Added ductile failure to XFEM using critical effective plastic strain as failure criterion.

          .

          Miscellaneous
          • Support *SET_NODE_GENERAL PART with SPH and DES.
          • *DEFINE_POROUS_...:
            • Compute the coefficients A and B with a user defined routine in dyn21.F.
          • Fixed bugs in Staged Construction (*DEFINE_STAGED_CONSTRUCTION_PART):
            • Staged construction not working on SMP parallel. Symptoms could include the wrong elements being deleted.
            • Staged construction with beam elements of ELFORM=2:
              • when these beams are dormant, they could still control the timestep.
            • Staged construction with *PART_COMPOSITE. The bug occurred when different material types were used for different layers within the same part, and that part becomes active during the analysis. The symptom of the bug was that stresses and/or history variables were not set to zero when the part becomes active.
          • Bugs fixed in *DAMPING_FREQUENCY_RANGE_DEFORM:
            • Incorrect results when large rigid body rotations occur.
            • If RYLEN on *CONTROL_ENERGY = 2, the energy associated with this damping should be included in the Internal Energy for the relevant part(s). This energy was being calculated only if there was also *DAMPING_PART_STIFFNESS in the model. Now fixed - the damping energy will be included in the internal energy whenever RYLEN=2.
          • Fixed NID option of *DEFINE_COORDINATE_VECTOR (bug occurred in MPP only).
          • Fix lsda open mode to require only minimal permissions to avoid unnecessary errors, for example if using an interface linking file that is read only.
          • Fix for DPART processing (*SET_..._GENERAL) for solid and thick shell elements.
          • Fix for JOBID > 63 characters.
          • Fix input processing problem (hang) that could happen in some unusual cases if encrypted *INCLUDE files are used.
          • Fix interaction of *CASE with jobid= on command line, so the jobid on the command line is combined with the generated case ids instead of being ignored.
          • *INCLUDE_NASTRAN:
            • Integration defaults to Lobatto for Nastran translator.
            • The default number of integration points is set to 5 for Nastran translator.
          • Issue error message and terminate when illegal *DEFINE_TRANSFORMATION is specified.
          • Add OPTION=POS6N to *DEFINE_TRANSFORMATION to define trsnaformation with 3 reference nodes and 3 target nodes.
          • Add OPTION=MIRROR to *DEFINE_TRANSFORMATION.
          • Fix a bug that could occur when adapted elements are defined in a file included by *INCLUDE_TRANSFORM.
          • Fix a bug that could occur when *BOUNDARY_SPC_SYMMETRIC_PLANE is used together with *INCLUDE_TRANSFORM.
          • Fix a bug that occurs when *DEFINE_BOX is included by *INCLUDE_TRANSFORM.
          • Make *SET_NODE_COLLECT work together with *NODE_SET_MERGE.
          • Fix incorrect shell set generated when using *SET_SHELL_GENERAL with OPTION=PART.
          • Add error trap for *SET_PART_LIST_GENERATE_COLLECT to catch missing part IDs.
          • Fixed bug in *INCLUDE_TRANSFORM for adaptive case if JOBID is used.
          • Fixed bug in memory allocation for *DEFINE_CURVE if total number of points in curve is more than 100.
          • Fixed bug with *INCLUDE_TRANSFORM and *CONTROL_ADAPTIVITY due to an *INCLUDE inside *INCLUDE_TRANSFORM file. Added new files:
            • adapt.inc# for *INCLUDE_TRANSFORM file. The *NODE, *ELEMENT_SHELL and *ELEMENT_SOLID are removed from include file.
          • Fixed bug for DPART option in *SET_SEGMENT_GENERAL. DPART option was treated as PART option before.
          • Fixed failure of *PARAMETER definition in long format.
          • Fixed error in reading solid id for *SET_SOLID_GENERAL.
          • Ignore any nonexistant part set IDs in *SET_PART_ADD.
          • Fix bug in which sense switches sw2 and sw4 don't work when the output interval for glstat is small.
          • Fixed bug if *DEFINE_CURVE is used to define adaptivity level.
          • Three new keywords are implemented in support of user defined subroutines: (*MODULE_PATH[_RELATIVE], *MODULE_LOAD, *MODULE_USE.)
            • The *MODULE_ feature allows users to compile user subroutines into dynamic libraries without linking to the LS-DYNA main executable.
            • The dynamic libraries are independent from the main executable and do not need to be recompiled or linked if the main executable is updated.
            • This feature loads multiple dynamic libraries on demand as specified in the keywords.
            • Without the *MODULE_ feature, only one version of each umat (such as umat41) can be implemented. With the MODULE feature, most umat subroutines can be have multiple versions in multiple dynamic libararies, and used simultaneously.
            • The *MODULE_ feature supports all user subroutines.
            • The LS-DYNA main executable may also run without any dynamic libraries if no user subroutines are required.

          .