LS-DYNA R7.1.1 (R7.88575) released
New version of LS-DYNA is released for all common platforms.
Release notes for Version R7.1.1.
Herein are summarized most of the new features, enhancements, and significant corrections made since the release of version R7.0.0. These notes are arranged by topic. Understand that in many cases, a particular note may have applicability to multiple topics, but in the interest of brevity, each note is listed only once and under only one topic heading.
.
New Features - General
- Add MUTABLE option for *PARAMETER so that parameter values can be redefined later in the input deck.
- Change MPP treatment of two-sided *CONTACT_FORCE_TRANSDUCER so that proper mass and moment values can be output to the rcforc file.
- MPP support for non-zero birthtime for *CONTACT_SINGLE_EDGE.
- MPP: Fix d3hsp echo of bucketsort frequency.
- Fix some *CONTROL_MPP_DECOMPOSITION keywords that were broken at r73077.
- Add new command line option "ldir=" for setting a "local" working directory. In MPP, this has the same effect as setting the "directory { local }" pfile option (and it overrides that option). For SMP, it indicates a directory where local, working files should be placed.
- Add support for SMOOTH option in MPP groupable contact.
- Add new keyword card *CONTROL_REQUIRE_REVISION to prevent the model from being run in old versions of LS-DYNA.
- Add part set specification for dynamic relaxation with implicit using *CONTROL_DYNAMIC_RELAXATION. This is a new feature specified with idrflg=6 on *CONTROL_DYNAMIC_RELAXATION. This allows implicit to be used for the dynamic relaxation phase for models involving parts being modeled with SPH and/or ALE while excluding those parts from the dynamic relaxation phase.
- Add new feature for implicit automatic time step control to cooperate with thermal time step control. On *CONTROL_IMPLICIT_AUTO, IAUTO = 2 is the same as IAUTO = 1 with the extension that the implicit mechanical time step is limited by the active thermal time step.
- On *CONTROL_IMPLICIT_SOLUTION, add negative value of MAXREF for implicit mechanics. Nonlinear iteration will terminate after |MAXREF| iterations. With MAXREF < 0 convergence is declared with warning. Simulation will continue. Positive values of MAXREF still cause failure of convergence to be declared leading to either a time step reduction or an error termination.
- Add *CONTROL_IMPLICIT_MODAL_DYNAMIC keywords and features. This elevates the modal dynamic features of IMASS=2 on *CONTROL_IMPLICIT_DYNAMICS. It also adds additional features of damping and mode selection and stress computations.
- New material model *MAT_DRY_FABRIC / *MAT_214, which can be used in modeling high strength woven fabrics with transverse orthotropic behavior.
- Add *ALE_COUPLING_NODAL_PENALTY, penalty-based nodal coupling with ALE.
- Add type 8 *ELEMENT_SEATBELT_PRETENSIONER which takes energy-time curve, instead of pull-in or force curve.
- Add type 9 *ELEMENT_SEATBELT_PRETENSIONER for energy-based buckle/anchor pretensioner.
- Add *DATABASE_BINARY_FSILNK. This feature stores coupling pressure from *CONSTRAINED_LAGRANGE_IN_SOLID in a binary time history file for use in a separate model that does not include ALE.
- Add *LOAD_SEGMENT_FSILNK. Use pressure loads stored in aforementioned binary time history file to load model that does not have ALE elements.
- Add new keyword *DEFINE_SPH_DE_COUPLING to allow SPH particles to contact discrete element spheres (DES).
- Add MOISTURE option to *MAT_076 solids. Allows moisture content to be input as a function of time. Material parameters are then scaled according to the moisture and a moisture strain is also introduced.
- Add *CONSTRAINED_BEARING to define a bearing between 2 nodes. This feature incorporates equations to simulate the effect of a ball bearing.
- Add *RIGIDWALL_FORCE_TRANSDUCER to output forces from rigidwalls acting on node sets.
- Add LOG_INTERPOLATION option to *MAT_024. This offers an alternate means of invoking logarithmic interpolation for strain rate effects. The other way is to input the natural log of strain rate in the table LCSS.
- Add capability in *MAT_ADD_EROSION (NUMFIP<-100) to set stress to zero in each shell integration point as it reaches the failure criterion. When |NUMFIP|-100 integration points have failed, the shell is eroded. In contrast, when NUMFIP>0, failed integration points continue to carry full load as though they were unfailed until element erosion occurs.
- Add new keyword, *PARAMETER_TYPE, for use by LS-PrePost when combining keyword input files. The appropriate offset is applied to each ID value defined using *PARAMETER_TYPE, according to how that ID is used.
- Allow use of load curve to specify damping as a function of time in *DAMPING_RELATIVE.
- Add a segment based (SOFT=2) contact option to include the overlap area in the contact stiffness calculation. This is good for improving the friction calculation and possibly for implicit convergenece. The option is turned on by setting FNLSCL>0 and DNLSCL=0. As DNLSCL=0, the contact stiffness is not 'nonlinear'. This new option is also useful when used with another improvement that was made to the FS=2 friction coefficient by table lookup option in segment based contact. When the above mentioned FNLSCL>0, option is used, the FS=2 option is now very accurate.
- Add a new RCDC damage option, *MAT_PLASTICITY_WITH_DAMAGE_ORTHO_RCDC1980 which is consistent with the WILKINS paper. It uses the principal values of stress deviators and a different expression for the A_d term.
- Add a TIETYP option to *CONTACT_2D_AUTOMATIC. By default the tied contact automatically uses constraint equations when possible for 2D tied contact. If a conflict is detected with other constraints, or to avoid 2-way constraints, penalty type ties are used when constraints are not possible. The TIETYP option, when set to 1, causes all ties to use the penalty method. This is useful if in spite of the code's best efforts to avoid problems, there is still a conflict in the model.
- Add a scale factor for scaling the frictional stiffness for contact. The parameter is FRICSF on optional card E and it's only supported for segment based (SOFT=2) contact. This was motivated by a rubber vs. road skidding problem where the friction coefficent had static, dynamic and decay parameters defined. The growth of the frictional force was too slow so the static coulomb value could not be achieved. By scaling the frictional stiffness higher, the coulomb value could approach the static value.
- Add keyword *CONTACT_2D_AUTOMATIC_FORCE_TRANSDUCER. Like the 3D force transducers, it does no contact calculation but only measures the contact forces from other contact definitions. When only a slave side is defined, the contact force on those segments is measured. Currently, two surface force transducers are not available.
- Add options to *MAT_058:
- Load curves for rate dependent strain values (E11C, E11T, ...) can be defined on new optional card 9.
- Load curves for rate dependent strengths (XC, XT, etc) and a rate averaging flag can be defined on new optional card 8.
- Abscissa values in above curves are taken to be natural log of strain rate when the first value is negative.
- Add optional transverse shear damage to *MAT_058.
- Officially add *MAT_261 and *MAT_262 for general use. *MAT_261 is *MAT_LAMINATED_FRACTURE_DAIMLER_PINHO. *MAT_262 is *MAT_LAMINATED_FRACTURE_DAIMLER_CAMANHO. Activate printout to d3hsp for *MAT_261 / *MAT_262.
- Add pentahedra cohesive solid element types (TYPE=21 & 22). Type=21 is the pentahedra version of Type=19 and Type=22 is the pentahedra version of Type=20. Using ESORT.gt.0 in *CONTROL_SOLID will automatically sort out the pentahedra elements (19 to 21 and 20 to 22).
- Add *DEFINE_DE_BY_PART to define control parameters for DES by part ID, including damping coefficient, friction coefficient, spring constant, etc. If defined, it will overwrite the parameters in *CONTROL_DISCRETE_ELEMENT.
- Add new feature for *MAT_030 (*MAT_SHAPE_MEMORY) as optional 3rd card. Curves or tables (strain rate dependency) can be defined to describe plastic loading and unloading behavior.
- New feature for *ELEMENT_BEAM_PULLEY: Beam elements BID1 and BID2 can now both be defined as "0" (zero). In that case, adjacent beam elements are automatically detected. Therefore, the first two beam elements with nodal distance < 1.0e-6 to the pulley node (PNID) will be chosen.
- Add new feature to *MAT_ADD_EROSION's damage model GISSMO. By default, damage is driven by equivalent plastic strain. Now, users can optionally define another history variable as driving quantity by setting DMGTYP according to the manual.
- Add volumetric plastic strain to *MAT_187 as history variable 6.
- Add internal energy calculation for *ELEMENT_BEAM_PULLEY.
- Add viscoplastic option to *MAT_157: new parameter VP on Card 5, Column 6.
- Add new keyword *MAT_ADD_COHESIVE which is intended to make 3D material models available for cohesive elements.
- Add new parameters to *MAT_CABLE_DISCRETE / *MAT_071.
- MXEPS (Card 2, Column 4) = maximum strain at failure
- MXFRC (Card 2, Column 5) = maximum force at failure
- Add *MAT_124 as potential weld partner material for PROPRUL=2/3 of *DEFINE_CONNECTION_PROPERTIES.
- Add new material *MAT_TOUGHENED_ADHESIVE_POLYMER (TAPO) or *MAT_252 for epoxy-based, toughened, ductile adhesives.
- Add new option to *MAT_002_ANIS: parameter IHIS on Card 4, Column 8.
- IHIS=0: terms C11, C12, ... from Cards 1, 2, and 3 are used.
- IHIS=1: terms C11, C12, ... initialized by *INITIAL_STRESS_SOLID's extra history variables.
- Add new option to *MAT_102. Instead of constant activation energy Q, one can define a load curve LCQ on Card 2, Column 7.
- LCQ.gt.0: Q as function of plastic strain
- LCQ.lt.0: Q as function of temperature
- Add new option to *MAT_071 (*MAT_CABLE_DISCRETE_BEAM). New parameter FRACL0 (Card 2, Column 3) is fraction of initial length that should be reached over time period of TRAMP. That means the cable element length gets modified from L0 to FRACL0*L0 between t=0 and t=TRAMP.
- Add internal energy calculation for SPR models *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3) and *CONSTRAINED_SPR2. Their contribution was missing in energy reports like glstat.
- Add new failure model OPT=11 to *MAT_SPOTWELD / *MAT_100 for beam elements.
- Add three new failure criteria for shell elements to *MAT_ADD_EROSION on optional card 4, columns 6-8:
- LCEPS12: load curve in-plane shear strain limit vs. element size.
- LCEPS13: load curve cross-thickness shear strain limit vs. element size.
- LCEPSMX: load curve in-plane major strain limit vs. element size.
- Add new capability to *MAT_ADD_EROSION damage model GISSMO. Strain rate scaling curve LCSRS can now contain natural logarithm values of strain rates as abscissa values. This is automatically assumed when the first value is negative.
- Add new parameter NHMOD to *MAT_266. The constitutive model for the isotropic part can now be chosen:
- NHMOD=0: original implementation (modified Neo-Hooke)
- NHMOD=1: standard Neo-Hookeon (as in umat45)
- New keyword *DEFINE_TABLE_MATRIX is an alternative way of defining a table and the curves that the table references from a single unformatted text file, e.g., as saved from an Excel spreadsheet.
- Change long format so that all data fields are 20 columns and each line of input can hold up to 200 columns. In this way, the number of input lines is the same for long format as for standard format.
- 8 variables per line in long format = 160 columns
- 10 variables per line in long format = 200 columns
- Add a new option (SOFT=6) in *CONTACT_FORMING_NODES_TO_SURFACE for blank edge and guide pin contact.
- Add user-defined criteria for mesh refinement (or coarsening) in *CONTROL_REFINE_....
- Add new contact option that currently only works for MPP SINGLE_SURFACE contact with SOFT=0 or 1:
if SRNDE (field 4 of optional card E) is a 1, then free edges of the contact definition will be rounded WITHOUT extending the segments. Rather than having cylindrical caps on the ends of the segments, the "corners" of the squared off thickness are rounded over. - Add geometric contact entity type -3 "finite cylinder".
- Add irate=2 to *CONTROL_IMPLICIT_DYNAMICS to turn off rate effects for both implicit and explicit.
- Add quadratic 8-node and 6-node shells (shell formulations 23 and 24).
- Add LOG_LOG_INTERPOLATION option for table defining strain rate effects in *MAT_083, *MAT_181, and *MAT_183.
- Add automatic generation of null shells for quadratic shell contact (*PART_DUPLICATE_NULL_OVERLAY).
- Add beam contact forces to rcforc output (*DATABASE_RCFORC).
- Add SHL4_TO_SHL8 option to *ELEMENT_SHELL to automatically convert 4-node shells to 8-node quadratic shells.
- Add 3-node beam element with quadratic interpolation that is tailored for the piping industry. It includes 12 degrees of freedom, including 6 ovalization degrees of freedom, per node for a total of 36 DOF. An internal pressure can be given that can stiffen and elongate the pipe.
- ELFORM=14 in *SECTION_BEAM.
- *ELEMENT_BEAM_ELBOW.
- NEIPB in *DATABASE_EXTENT_BINARY to direct output of elbow loop-stresses to d3plot. Otherwise, output goes to ASCII file elbwls.k.
- Supported by a subset of material models including *MAT_003, *MAT_004, *MAT_006, *MAT_153, *MAT_195.
- Add discrete element option DE to *DATABASE_TRACER.
- Includes variable RADIUS. average result of all
- RADIUS>0: Reports the average result of all DE particles in a spherical volume having radius=RADIUS and centered at the tracer.
- RADIUS<0: Reports result of the closest particle to the tracer.
- If a tracer node NID is given, then the tracer moves with this node. The node must belong to a DES.
- Includes variable RADIUS. average result of all
- Add new options *PART_COMPOSITE_LONG and *ELEMENT_SHELL_COMPOSITE_LONG. In contrast to "COMPOSITE", one integration point is defined per card. This is done to allow for more informations, e.g. new variable "ply id".
- Add support of *MAT_ADD_EROSION option NUMFIP<0 for standard (non-GISSMO) failure criteria. Only for shells.
- Add viscoplastic behavior to *MAT_157, i.e., parameter LCSS can now refer to a table with strain rate dependent yield curves.
- Add singular finite element with midside nodes for 2D plane strain fracture analysis (ELFORM=55 in *SECTION_SHELL).
.
Airbag
- Enhance *AIRBAG_PARTICLE:
- Fix blockage calculation to be less sensitive to number of processors.
- 4th field of *CONTROL_CPM set to 1 will check bag/chamber connectivities and error terminate if problem is detected.
- If HCONV<0, |HCONV| is a curve of heat convection coefficient vs. time.
- Error terminate if chamber ID CHM in *AIRBAG_PARTICLE is referenced but not defined.
- Add new option DECOMPOSITION for *AIRBAG_PARTICLE -- MPP only. This will automatically invoke the recommended decomposition commands, *CONTROL_MPP_DECOMPOSITION_BAGREF (if applicable) and *CONTROL_MPP_DECOMPOSITION_ARRANGE_PARTS, for the bag.
Add new blockage option for vents in *AIRBAG_PARTICLE:
blockage considered.......................
.eq.0: no
.eq.1: yes
.eq.2: yes, exclude external vents
.eq.3: yes, exclude internal vents
.eq.4: yes, exclude all vents
.
Boundary
- Make *BOUNDARY_PRESCRIBED_MOTION_SET compatible with *CONTROL_REFINE
- Fix SET option for *BOUNDARY_PWP_TABLE.
- Fix a bug for *BOUNDARY_PAP that could happen in MPP when CVMAS>0.
- Fix a bug for *BOUNDARY_PRESCRIBED_ORIENTATION_RIGID_ANGLES that could be triggered when a high sampling rate is used for LCIDQ.
- Fix incorrect ID number in d3hsp for *BOUNDARY_CYCLIC.
- Fix output to bndout for *BOUNDARY_PRESCRIBED_ORIENTATION_RIGID.
- Fix incorrect velocity boundary conditions if *BOUNDARY_PRESCRIBED_MOTION with dof= |4| or |8| is used with *DAMPING_GLOBAL.
- Fix input error when using more than one *BOUNDARY_ACOUSTIC_COUPLING keyword card.
- Fix input error when using *BOUNDARY_CYCLIC with the _ID option when there's only one *BOUNDARY_CYCLIC card.
- Fix input error when using *BOUNDARY_THERMAL_BULKNODE with number of segments, NBNSEG > 1.
- Fix long computation time when there's a large number of velocity boundary conditions, *BOUNDARY_PRESCRIBED_MOTION.
- Trap input error if part id is 0 for *BOUNDARY_PRESCRIBED_MOTIION_RIGID with error message, KEY+927, as this could cause a crash later in the run.
- Change *BOUNDARY_ACOUSTIC_COUPLING_MISMATCH to rank order opposing acoustic faces and structural segments by proximity, thereby accelerating the preprocessing stage, enhancing reliability and allowing some liberalization of the search parameters.
- Fix a bug where *BOUNDARY_PRESCRIBED_ACCELEROMETER_RIGID failed when three or more rigid bodies were driven.
- Re-active the error stop when defined curve function (*DEFINE_CURVE_FUNCTION) with simulation response is used for displacement boundary condition.
- Fix for boundary conditions for mid-side nodal points generated by *ELEMENT_SHELL_SHL4_TO_SHL8.
- Fix incorrect motion of slave rigid body when using *BOUNDARY_PRESCRIBED_MOTION_RIGID with vad=4 and the node1/node2 vector is orthogonal to the master rigid body motion.
- Fix bug wherein *BOUNDARY_PRESCRIBED_ORIENTATION_VECTOR viewed small angle excursions as states of rest and produced unexpected motions.
.
Contact
- Fix tied node checking in MPP for the IPBACK flag that affected non-groupable tied contacts.
- Increase MPP search distance for tied contacts to include slave and master thicknesses.
- Fix problem of MPP *CONTACT_*_TO_SURFACE missing some nodes during bucketsort which led to unexpected penetration.
- Fix summation of master node forces for output to ncforc file. This affects only MPP constraint-based contacts.
- Fix *CONTACT_2D_AUTOMATIC_TIED and _TIED_ONE_WAY to tie only to exterior surfaces of solid elements with materials that may erode. This is mainly an issue for adaptive remeshing when after remeshing, nodes may lie behind the surface to be tied and nodes to be tied lie on or near the line between surface nodes and those behind the surface.
- Fix a memory error in SMP segment based contact that could happen occasionally when reading the history data back from the adaptivity file when h-adaptivity is active.
- Fix an error in MPP *CONTACT_2D_AUTOMATIC_SURFACE_TO_SURFACE and _SINGLE_SURFACE that could cause forces that were not normal to the surface. This would mostly be a problem with sliding parts meshed with 2D solid elements.
- Set CT2CN of *CONTACT_AUTOMATIC_SURFACE_TIEBREAK to default of 1.0 as given in the User's Manual.
- *CONTACT now works for parts refined using *CONTROL_REFINE_SOLID or *CONTROL_REFINE_SHELL.
- MPP fixes for contact option SRNDE (*CONTACT optional card E field 4).
- Improve calculation of shell element contact segment thicknesses, particularly at material boundaries.
- Fix *CONTACT_ORTHO_FRICTION in SMP which was behaving incorrectly in some cases.
- Fix ordering inconsistencies between the writing of contact data in the keyword and reading of that data in the structured reader. In particular, ORTHO_FRICITON could not be used in the same input deck as either MORTAR contact or INTERFERENCE contact.
- MPP: Add output to rcforc file for *CONTACT_AUTOMATIC_TIEBREAK to record the # of nodes tied, and the total tied area.
- MPP: Add calculation of "contact gap" for master side of FORMING contact.
- MPP groupable contact: Remove deleted slave nodes from contact
- MPP: Add support for table-based friction (FS=2.0) to groupable contact.
- Minor fixes to MPP single surface contact initial penetration checking:
- Skip nodes with parametric coordinates more than 50% outside the segment. These are ignored during contact anyway, so no point in reporting initial penetrations for them. Also, fix "remaining distance to midsurface" report if IGNORE=0: it now reports the distance based on the initial configuration, which is the only meaningful value. It was reporting either 0 or the distance before the last iteration, neither of which is meaningful.
- Decrease memory used by keyword reader while processing drawbeads.
- Change spatial extension to the segment used in MPP tied contact:
- The "MAXPAR" parameter used by SMP has long been ignored, with MPP using PARMAX from the optional _MPP card, with a default value of 1.0005. For non-tied contacts, this PARMAX value is used as given, but for tied contacts (for reasons lost in antiquity) a value of max(PARMAX,1.035) was used instead. After discussions with distributors about not wanting to change behavior for old user decks, the following input is now accepted:
if 0.0 < PARMAX < 0.5, use 1+PARMAX
if 1.0 <= PARMAX <= 1.0004, use PARMAX
else use max(PARMAX,1.035)
- This allows any specific value > 1 to be specified, without risking breaking user inputs that had values of 1.0005 to 1.035 (which were being ignored whether they knew it or not). Also, change groupable tied contact to honor this new scheme also (they were ignoring PARMAX entirely and always using 1.035)
- When the stiffness scaling was determined by part stiffness and dimensions (ISTIFF=1, default for implicit), the tied contact created NaN's which destroyed the solution.
- Also fix the IGAPCL option to close constraint gaps when R-adaptive remeshing is active. Gaps were allowed to grow during remeshing.
.
Constrained
- Fix for MPP selective mass scaling when used together with *CONSTRAINED_TIE-BREAK.
- Fix incorrect mass & inertia for rigid body part when IFLAG=1 in *CONSTRAINED_EXTRA_NODES.
- Allow *CONSTRAINED_INTERPOLATION to use node set to define the independent nodes.
- Fix incorrect inertia output to d3hsp for discrete parts defined by *CONSTRAINED_INTERPOLATION.
- Add a length unit to the tolerance used for the checking of noncoincident nodes in *CONSTRAINED_JOINTs excluding spherical joints. The old tolerance was 1.e-3. The new tolerance is 1.e-4 times the distance between nodes 1 and 3. The error messages were changed to warnings since this change might otherwise cause existing models to stop running.
- Update single precision rigid bodies to improve the initialization of rigid body velocity so that imposed initial translational velocity does not create spurious rotational velocity.
- Add d3hsp output for *CONSTRAINED_INTERPOLATION_SPOTWELD (SPR3) and *CONSTRAINED_SPR2. Can be deactivated by setting NPOPT=1 on *CONTROL_OUTPUT.
- Add warning message, INI+359, if dependent node of *CONSTRAINED_INTERPOLATION is on a rigid body.
- Fix SMP butt weld tied constraints, *CONSTRAINED_BUTT_WELD. The constraints were imposed on the accelerations before the accelerations had been updated from forces to accelerations. As a result, the welds could open up. The welds are now properly constrained.
- *CONSTRAINED_TIEBREAK and *CONSTRAINED_BUTT_WELD supported for selective mass scaling. See *CONTROL_TIMESTEP.
.
Control
- MPP spotweld deletion: better handling of bad user input. A spotweld node should not be defined as slave to more than one tied interface. If it is, it gets deleted from all but one of them. Previous code would delete the spotweld if the slave node of any interface reported the slave node not tied and SPOTDEL was active. Now only delete the spotweld if ALL interfaces in which it appears report it as not tied.
- Fix error in handling of *CONTROL_REQUIRE_REVISION.
- Fix a bug that could happen when a part set for thickness update is used (PSSTUPD in *CONTROL_SHELL).
- For initialization by prescribed geometry in dynamic relaxation (IDRFLG=2, *CONTROL_DYNAMIC_RELAXATION), addd an option where displacements are not imposed linearly but rather according to a polar coordinate system. This option was added to accommodate large rotations.
- Disable improper restart of dynamic relaxation after adaptive remeshing.
- Fix input error when using *CONTROL_CHECK_SHELL and there are solid elements in the input.
- Fix a typo that causes seg fault when using *CONTROL_ADAPTIVE_CURVE.
- When using *DAMPING_PART_STIFFNESS with *CONTROL_BULK_VISCOSITY type -2 for shells, the deformation & stresses are incorrect.
- Fix *CONTROL_REMESHING settings: VF_LOSS, MFRAC, DT_MIN which were not triggering the remesh at all.
- Display warning message, MSG_KEY+931, if more than one *CONTROL_DYNAMIC_RELAXATION or *CONTROL_DAMPING keywords are used.
- Suppress two more items during d3hsp printing if NPOPT=1 (*CONTROL_OUTPUT): Initial strains and adaptive constraints.
- Support NFAIL1 and NFAIL4 of *CONTROL_SHELL in coupled thermal-mechanical analysis, i.e. erode distorted elements instead of error termination.
- PTSCL on *CONTROL_CONTACT can be used to scale contact force exerted on shell formulations 25,26,27 as well as shell formulations 2,16 (IDOF=3).
- Use SEGANG in *CONTROL_REMESHING to define positive critical angle (unit is radian) to preserve feature lines in 3D tetrahedral remeshing (ADPOPT=2 in *PART).
- Fix remesher failure problem in 3D axisymmetric (orbital) remeshing (ADPOPT=3 in *PART) when jobid is specified by user.
- For 3D solid adaptive remeshing including ADPOPT=2 and ADPOPT=3 (*PART), the old mesh will be used automatically if the remesher fails generating a new mesh.
- Fix bug for pore pressure analysis (*CONTROL_PORE_FLUID). The bug affected time-dependent or steady-state analysis types when elements had reached the suction limit. A symptom was occasional sudden non-physical water flows at a particular node or nodes.
- Add option INTPERR on *CONTROL_SHELL (Optional Card 3, Column 8). By default, warning messages INI+143/144/145 are written in case of non-matching number of integration points between *INITIAL_STRESS_SHELL and *SECTION_SHELL. Now with INTPERR=1, LS-DYNA can terminate with an error.
- Add variable D3TRACE on *CONTROL_ADAPTIVE: The user can now force a plot state to d3plot just before and just after an adaptive step. This option is necessary for tracing particles across adaptive steps using LS-PrePost.
- The flag RBSMS on *CONTROL_RIGID is now active for regular and selective mass scaling to consistently treat interfaces between rigid and deformable bodies
- By putting MINFO=1 on *CONTROL_OUTPUT, penetration info is written to message files for mortar contact, see also *CONTACT_.... Good for debugging implicit models, not available for explicit.
- Fix spurious error termination when there is encrypted input and shell adaptivity is invoked.
- Fix skinny, long triangle in *CONTROL_CHECK_SHELL.
.
Database
- Fix MPP memory overwrite during *DATABASE_BINARY_INTFOR initialization that could have caused a segmentation fault.
- *DATABASE_JNTFORC output broken by r86847 checkin.
- Remove static linking for l2a as many systems do not have the required static libraries.
- Fix incorrect strains output to d3plot for thick shells if STRFLG=1, EPSFLG=2, and ENGFLG=2 in *DATABASE_EXTENT_BINARY.
- Fix jntforc forces (*DATABASE_JNTFORC) which were output in wrong coordinate system for rigid bodies when LMF=1 in *CONTROL_RIGID.
- Add IELOUT in *CONTROL_REFINE to handle how child element data is handled in elout (*DATABASE_HISTORY_SOLID and *DATABASE_HISTORY_SHELL). Child element data are stored if IELOUT=1 or if refinement is set to occur only during initialization.
- Prevent d3drlf file from being overwritten when dynamic relaxation is enabled and adaptivity is turned on.
- Fix incorrect stresses to eloutdet when MAXINT<0 in *DATABASE_EXTENT_BINARY.
- Fix incorrect strains for thick shells in eloutdet and also fix INTOUT & NODOUT options in *DATABASE_EXTENT_BINARY for thick shells.
- MPP: Fix NaN in secforc file when using *DATABASE_CROSS_SECTION with NID specified in *DEFINE_COORDINATE_VECTOR.
- Include eroded hourglass energy in hourglass energy in glstat file to be consistent with KE & IE calculations so that the total energy=kinetic energy + internal energy + hourglass energy + rigidwall energy.
- Fix zero output to upper strains to d3plot and elout when nip=1 for shell elements.
- Fix d3drlf output with duplicate states at t=0.0
- Fix corrupted d3plot when using DCOMP=2/4 in *DATABASE_EXTENT_BINARY in combination with *DEFORMABLE_TO_RIGID. For SMP only.
- Fix corrupted d3thdt when DCOMP=3/4 in *DATABASE_EXTENT_BINARY.
- Fix incorrect mass properties for solids in SSSTAT file when using *DATABASE_SSSTAT_MASS_PROPERTY.
- Fix incorrect zero values output to curvout file for *DEFINE_CURVE_FUNCTION using functions VM and WM.
- Fix output of zeros/NaNs to curvout for *DEFINE_CURVE_FUNCTIONs AX/AY/AZ/WX/WY/WZ.
- Fix incorrect output to curvout file when using RCFORC function for *DEFINE_CURVE_FUNCTION for MPP with ncpu>1.
- Fix zero strain values output to curvout for *DEFINE_CURVE_FUNCTION using function, ELHIST, for shell strains.
- Fix input error "undefined beam #" when reading discrete element connectivity cards if BEAM=1 in *DATABASE_BINARY_D3PLOT.
- Fix seg fault error when using *DATABASE_DISBOUT for large number of discrete beam elements. MPP only.
- Fix zero external work in glstat when using only one *BOUNDARY_PRESCRIBED_MOTION_RIGID keyword card.
- Fix incorrect forces in bndout when using *BOUNDARY_PRESCRIBED_MOTION_RIGID.
- Fix missing 'eroded hourglass energy' from glstat in binout file.
- Fix incorrect beam resulants in d3part. MPP only.
- Fix incorrect output for local resultant normal-t to disbout (*DATABASE_DISBOUT for discrete beams). MPP only.
- Fix incorrect forces in bndout file for rigid bodies when using *LOAD_RIGID_BODY.
- Enable *CONTROL_OUTPUT flag, EOCS, which wasn't having any effect on the shells output to elout file.
- Fix incorrect label in elout file when doing implicit linear analysis for MPP. The label was 'global' instead of 'local'.
- Fix incorrect stonewall energy in gldata due to nodes belonging to deleted elements impacting on the *RIGIDWALL.
- Fix incorrect acceleration output to d3plot & nodout file when using *CONSTRAINED_NODAL_RIGID_BODY with DRFLG set to nonzero.
- Fix difference between nodout and nodouthf results when using iaccop=1 or 2 in *CONTROL_OUTPUT and intopt=0 in *ELEMENT_SEATBELT_ACCELEROMETER.
- Fix d3drlf for MPP double precision. Data could not be postprocessed.
- Fix bug in option for part removal from d3plot (PSETID in *DATABASE_BINARY_D3PLOT) when model contained an SPH part and/or a DEM part.
- Fix bug in reading 64-bit d3eigv/d3mode data using a single precision executable. Single precision LS-DYNA can now read single precision and double precision d3eigv/d3mode data.
- Fix corruption of d3part database by a small restart.
- *DATABASE_FSI_SENSOR: Create sensors at solid faces in 3D and at shell sides in 2D.
- *DATABASE_TRACER: If the input deck has *EOS_IDEAL_GAS and *SECTION_ALE1D or *SECTION_ALE2D, write the temperature instead of z-coordinate to trhist.
- *DATABASE_PROFILE: Implement the option DIR=4 to plot data with curvilinear distributions and the flag UPDLOC to update the profile positions.
- Fix incorrect stress output to d3plot for the in-plane integration points 2,3,4. The stresses were not in the local coordinate system when CMPFLG=1 and MAXINT<0 in *DATABASE_EXTENT_BINARY for fully integrated shell type 16. Further to this fix, duplicate the stresses & history variables from in-plane intg point 1 to in-plane intg points 2,3,4 for shell element formulations with only 1 in-plane intg point. This is to handle models that use both 1 and 4 in-plane integration point shell formulations, and which have MAXINT<0.
- Fix cross section forces output for solid elements when *DATABASE_CROSS_SECTION is used with the PLANE option. The normal direction calculation was broken since R70315. This caused wrong forces as well.
- Remove *DATABASE_BINARY_XTFILE since it is obsolete.
.
Element
- Fix problem with parameter SCLMRR of *DEFINE_CONNECTION_PROPERTIES.
- Fix a bug that caused an immediate crash when shell seatbelt elements (*ELEMENT_SEATBELT) were used in the same model with the BIRTH option of *AIRBAG_REFERENCE_GEOMETRY.
- Fix and enhance *ELEMENT_BEAM_PULLEY:
- Correct swapping when node topology of beam1 and beam2 does not form a sequential chain.
- Increase accuracy of some internal variables.
- Account for damping stress correctly when used with *MAT_ELASTIC truss elements.
- Fix a bug for *ELEMENT_SEATBELT_SLIPRING that occurred when node topology of sb1 and sb2 does not form a sequential chain. For example, sb1 has node 100,200 as 1st and 2nd connectivity nodes, and sb2 has nodes 101,200.
- Fix a bug for one-way slipring that prevents slipping along the deisgned direction.
- Issue error message when seatbelt is initially inside an undefined retractor.
- Allow SBRNID of 2D slipring and retractor to have up to 8 digits; it was previously limited to 7 digits.
- Correct deforc output for discrete elements whose initial offset is negative, that could sometimes be caused by unintentional nonzero discrete element length.
- Fix bug in linear beam formulation 13 for frequency analysis.
- When using *PART_AVERAGED for truss elements (beam formulation 3), calculate the time step based on the total length of the combined macro-element instead of the individual lengths of each element.
- Shell formulation 14 (area-weighted axisymmetric) gave bad stress distributions for *LOAD_BODY_Y for implicit.
- Enable writing of midside nodes to d3plot or 6- and 8-node quadratic shell elements.
- Automatically renumber shells in a consistent manner for *ELEMENT_SHELL_SOURCE_SINK
- In *CONTROL_SHELL, add options for deletion of shells based on:
- diagonal stretch ratio (STRETCH),
- w-mode amplitude in degrees (W-MODE).
- Fix bugs with null shells for quadratic element formulations.
- Fix bug for spotweld beam type 9 when attached to rigid body.
- Fix incorrect rotational displacements for accelerometers in nodout when intopt=1 in *ELEMENT_SEATBELT_ACCELEROMETER.
- Fix incorrect stresses output to eloutdet for thick shell formulation 5.
- Fix incorrect moments in secforc when using beam forumulation 5.
- Fix "part not found" error during keyword input phase when using *ELEMENT_SHELL_COMPOSITE.
- Fix input error when using standard cross sections for Nastran beams input via *INCLUDE_NASTRAN.
- Fix dynain output for solid element type 3 and 4.
- Fix incorrect y-stress to dynain file when using iop=3 for thick shells.
- Fix no *ELEMENT_SHELL output to dynain file if the NOTHICKNESS option is present in *INTERFACE_SPRINGBACK_LSDYNA_NOTHICKNESS.
- Write complete history variables to dynain file for 2D solids using *MAT_NULL and equation-of-state.
- Fix incorrect transformation when using *DEFINE_TRANSFORMATION with option=ROTATE and *ELEMENT_BEAM_ORIENTATION.
- Fix thick shell full deck restart for thick shell formulation 5 or for any thick shell form that uses laminated shell theory.
- Fix contact and mass and inertia reporting to d3hsp of composite parts that are created by *ELEMENT_SHELL_COMPOSITE or *ELEMENT_TSHELL_COMPOSITE. The contact was failing when composite parts, or composite parts in a part set were used to define the master or slave surface. The composite parts were not included in the surface leading to pass through. This affects all contact types.
- Fix a problem with using *ELEMENT_SHELL_COMPOSITE with *ELEMENT_BEAM_PID. The PID option allows the user to specify the parts to which welds should be tied. When using *ELEMENT_SHELL_COMPOSITE, we create new part numbers for the elements so we fail to find a match with the PID and the ties failed to form.
- Fix strain output of shell formulations 13-15 when 1-point integration is used with objective stress update (*CONTROL_ACCURACY). The output to d3plot and elout was not correct for elements that rotate.
- Fix strain output of shell formulation 13 (2D solid) with 2x2 in-plane integration when objective strain update is active. Rotating elements were outputting the wrong strain to d3plot and elout files. This fix otherwise has no effect on results.
- Fix parallel consistancy for triangular shell formulation 24. Both implicit and explict jobs were failing due to incorrect forces calculated for mid-side nodes.
- Fix the secforc data (*DATABASE_SECFORC) for tet formulation 4. The sign was wrong on the forces and moments.
- Fix the mass calculation in the initialization phase to determine the mass of thick shell rigid bodies so that the total mass reported is correct. This likely had no effect on results.
- Fix parallel consistency for warped beam formulation 11. It was giving incorrect results for all but small problems and could cause convergence failure of implicit problems.
- Fix the option to use a negative connection ID on *DEFINE_CONNECTION_PROPERTIES with solid weld assemblies. The failure function was evaluated but the weld did not fail as it should.
- Fix possibility of a segmentation fault in thick shell formulation 3 when used with isotropic materials in an implicit run.
- Improve cohesive solid element formulation 20.
- Correct orientation check for cohesive elements (Solids, elform=19,20) in MPP which was broken since r63986.
- Improve implicit capability of pulley elements (*ELEMENT_BEAM_PULLEY).
- Improve characteristic length (Le) calculation for 10-noded tet elements (ELFORM=16), which is used in time step calculation. For flat element shapes (midnodes exactly on straight lines between corner nodes), Le is the same as before. But for curved shapes, Le gets reduced.
- Reduce noise in *ELEMENT_BEAM_PULLEY when used together with stiff truss/cable elements by making relevant quantities double precision.
- Add *MAT_103 and *MAT_187 for tet type 13.
- Fix for combination of *DEFINE_ELEMENT_DEATH_... and *INCLUDE_TRANSFORM. Offset for EID/SID (ideoff/idsoff) was not correct.
- Improvements and fixes for *ELEMENT_BEAM_PULLEY:
- tighten tolerances for force equilibrium at the pulley (slip)
- correct history update after element passes through pulley (swap)
- correct velocity of "swapped" node
- correct swap calculations for cable elements with *MAT_071 and E<0
- Fix for tetrahedral solid element type 4 (*SECTION_SOLID: ELFORM=4). The combination with *DAMPING_PART_STIFFNESS was not working correctly, leading to wrong stresses or even error termination.
- Shell formulations 25,26, and 27 are now fully supported in writing to dynain file (*INTERFACE_SPRINGBACK_LSDYNA).
- Shell formulations 23 (quad) and 24 (triangle) can now be mixed in a single part. When ESORT=1 in *CONTROL_SHELL, triangular shells assigned by *SECTION_SHELL to be type 23 will automatically be changed to type 24.
- New element formulation ELFORM=45 in *SECTION_SOLID: Tied Meshfree-enriched FEM (MEFEM). This element is based on the 4-noded MEFEM element (ELFORM=43, *SECTION_SOLID). Combined with *CONSTRAINED_TIED_NODES_FAILURE, *SET_NODE_LIST and cohesive model, this element can be used to model dynamic multiple-crack propagation along the element boundaries.
- Fix the volume calculation for thick shell form 3. Prior to the fix, the calculated volume was 2x the correct value. This caused a wrong pressure calculation for equation of states 2, 3, and 14, which use the element volume in the denominator of the pressure calulation. It also caused the mass scaling calculation to use 2x the added mass that was needed for effective mass scaling.
- Fix mass scaling of thick shell 5 which added 8x the mass that was needed.
- Enable hyperelastic materials (those that use Green's strain) to be used with thick shell form 5. Previously, use of these materials (*MAT_002, *MAT_007, *MAT_021, *MAT_023, *MAT_027, *MAT_030, *MAT_031, *MAT_038, *MAT_040, *MAT_112, *MAT_128, *MAT_168, and *MAT_189) with thick shell 5 has been an input error.
- New high order tetrahedron CPE3D10 based on Cosserat Point theory can be invoked by specifying element formulation ELFORM=16 and combining this with hourglass formulation IHQ=10. See *SECTION_SOLID and *HOURGLASS.
- Improve *ELEMENT_LANCING:
- Fix mismatch between local and user curve IDs in lancing when interval is defined with a curve.
- Allow multiple curves during lancing.
- Fix mismatch of global and local element IDs in lancing.
.
Frequency Domain
- Remove redundant scaling of the modal stress and nodal force in *FREQUENCY_DOMAIN_FRF.
- Fix bug in *FREQUENCY_DOMAIN_ACOUSTIC_BEM involving boundary elements defined with shell elements.
- Fix IUNITS for impedance boundary condition in *FREQUENCY_DOMAIN_ACOUSTIC_BEM.
- Enable running double precision executables for frequency domain features when 32IEEE version databases are used.
- Add output of modal contribution ratio in d3hsp for FRF (*FREQUENCY_DOMAIN_FRF).
- Add database D3ACS for collocation acoustic BEM (*FREQUENCY_DOMAIN_ACOUSTIC_BEM) to show the surface pressure and normal velocities.
- Fix MPP support of dumping D3FTG database (*FREQUENCY_DOMAIN_RANDOM_VIBRATION_FATIGUE and *DATABASE_FREQUENCY_BINARY_D3FTG).
- Fix running random vibration with time history load (*FREQUENCY_DOMAIN_RANDOM_VIBRATION).
- Fix running random fatigue with sets of elements instead of parts (*FREQUENCY_DOMAIN_RANDOM_VIBRATION_FATIGUE).
- Modify the definition of snlimit (*FREQUENCY_DOMAIN_RANDOM_VIBRATION_FATIGUE). Now it is defined on each SN curve.
- Fix running boundary acoustic mapping with multiple field points in MPP (*BOUNDARY_ACOUSTIC_MAPPING).
- Implement biased spacing for output frequencies for random vibration (*FREQUENCY_DOMAIN_RANDOM_VIBRATION).
- Fix running ATV (Acoustic Transfer Vector) (*FREQUENCY_DOMAIN_ACOUSTIC_BEM_ATV).
- Fix running FFT for acoustic BEM in MPP (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Add frequency domain nodal or element velocity output for acoustic BEM (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Implement boundary acoustic mapping to acoustic BEM in MPP (*BOUNDARY_ACOUSTIC_MAPPING). This is enabled only for segment sets at present.
- Fix locating multi-connection edges for triangular elements for acoustic BEM (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Update acoustic BEM to allow using *DEFINE_CURVE to define the output frequencies (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Fix in running FRF in MPP, when response direction is given in VID (*FREQUENCY_DOMAIN_FRF).
- Implement panel contribution analysis capability to Rayleigh method (*FREQUENCY_DOMAIN_ACOUSTIC_BEM_PANEL_CONTRIBUTION).
- Fix dumping NODOUT_PSD and ELOUT_PSD to binout in MPP (*FREQUENCY_DOMAIN_RANDOM_VIBRATION).
- Implement a scheme to map velocity boundary condition from dense BEM mesh to coarse mesh to speed up the computation (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Add user node ID for acoustic field points in D3ATV (*FREQUENCY_DOMAIN_ACOUSTIC_BEM). Now D3ATV is given for multiple field points, and multiple frequencies.
- Add database D3ATV for acoustic transfer vector binary plot (*FREQUENCY_DOMAIN_ACOUSTIC_BEM_ATV, *DATABASE_FREQUENCY_BINARY_D3ATV).
- Fix running random vibration with base acceleration (*FREQUENCY_DOMAIN_RANDOM_VIBRATION). Fix bug in response spectrum analysis when damping is defined by *DEFINE_CURVE (*FREQUENCY_DOMAIN_RESPONSE_SPECTRUM).
- Fix bug in random vibration with cross PSD in MPP (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Fix bug in response spectrum analysis when different type input spectra are present (*FREQUENCY_DOMAIN_RESPONSE_SPECTRUM).
- Implement acoustic panel contribution analysis to collocation BEM and dual collocation BEM (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Enable *FREQUENCY_DOMAIN_MODE in response spectrum analysis (*FREQUENCY_DOMAIN_RESPONSE_SPECTRUM).
- Implement an option to read in user-specified nodal velocity history data for running BEM acoustics (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Extend Kirchhoff acoustic method to MPP (*FREQUENCY_DOMAIN_ACOUSTIC_BEM).
- Extend response spectrum analysis to multiple load spectra cases (*FREQUENCY_DOMAIN_RESPONSE_SPECTRUM).
.
Initial
- Fix output of *INITIAL_STRESS_SHELL to dynain for MPP when using staged construction.
- Fix a bug that could be triggered in an adaptive simulation involving *INITIAL_STRAIN_SHELL.
- Fix incorrect initial velocities if *PART_INERTIA is used with IRIGID=1 and ICID is defined *INITIAL_VELOCITY_GENERATION. The local coordinate system, ICID, was not used to transform the velocity vectors and this has been fixed.
- Fix incorrect initial kinetic energy in d3hsp and screen output when *INITIAL_VELOCITY_RIGID_BODY is used.
- Initial velocities were not initialized during transient phase when idrflg=5 for *CONTROL_DYNAMIC_RELAXATION despite presence of *INITIAL_VELOCITY_GENERATION keyword. This problem only existed in MPP.
- Fix *INITIAL_VELOCITY_GENERATION not generating correct initial velocities when ID=0.
- Fix incorrect error, SOL+752, when using scale factor, SCALE, in *INITIAL_AXIAL_FORCE_BEAM.
- When using *CONTROL_SPOTWELD_BEAM, convert *DATABASE_HISTORY_BEAM to *DATABASE_CROSS_SECTION and *INITIAL_AXIAL_FORCE_BEAM to *INITIAL_STRESS_CROSS_SECTION for the spotweld beams that are converted to hex spotwelds.
- Improve output of *INITIAL_STRESS_BEAM data to dynain via *INTERFACE_SPRINGBACK_LSDYNA. Now, large format can be chosen, history variables are written, and local axes vectors are included.
- Correct dynain output of *INITIAL_STRAIN_TSHELL for MPP with np>1.
- Fix spurious error message pertaining to *INITIAL_VELOCITY_GENERATION when NSID=0 and STYP=1.
- Improve excessive input & initialization time when using multiple *INITIAL_STRESS_SHELL with *INITIAL_STRESS_SHELL_SET. The same improvement applies to *INITIAL_STRAIN_SHELL and *INITIAL_STRAIN_SHELL_SET.
.
Load
- Fix zero pressure load problem when using *LOAD_SEGMENT with nodes 3 and 4 of the segment set to 0, for shell elements and running 2D analysis in MPP.
- Add warning message when more than one *LOAD_DENSITY_DEPTH is used.
- Fix the use of *LOAD_BODY with *ELEMENT_MASS_MATRIX. The applied load was scaled using the nodal mass without the contribution of the added mass matrix, so the load was too small.
- Fix error in *LOAD_THERMAL_VARIABLE_BEAM_SET.
- Fix bug in staged construction keywords *LOAD_STIFFEN_PART and *LOAD_REMOVE_PART. These did not work with *PART_COMPOSITE.
.
Sensor
- Add BAGVENTPOP for *SENSOR_CONTROL. This allows user more flexibilty controlling the pop-up of the venting hole of *AIRBAG_HYBRID and *AIRBAG_WANG_NEFSKE
- Add command *SENSOR_DEFINE_FUNCTION. Up to 15 *DEFINE_SENSORs can be referenced in defining a mathematical operation.
- LAYER of *SENSOR_DEFINE_ELEMENT can now be an integer 'I' representing the Ith integration point at which the stress/strain of the shell or tshell element will be monitored.
- Fix a bug when *SENSOR_DEFINE_FORCE and *SENSOR_CONTROL involves a *CONSTRAINED_JOINT.
- Add control of *LOAD_MOVING_PRESSURE by using *SENSOR_CONTROL.
- Add thick shells to the ETYPE option list of *SENSOR_DEFINE_ELEMENT.
- Fix a bug that could happen when VID of *SENSOR_DEFINE_FORCE is larger than 100000.
- Fix problem where sensor switch did not turn off when using *SENSOR_DEFINE_FORCE with ftype=PRESC-MOT when running implicit.
- Fix input error when using *SENSOR_DEFINE_FORCE with *INCLUDE_TRANSFORM due to the idtype not being updated as specified with IDDOFF in *INCLUDE_TRANSFORM.
- Fix bug for *SENSOR_DEFINE when used with long format (long=s) in MPP.
.
Material
- Fix softening of *MAT_BRITTLE_DAMAGE / *MAT_096 behavior caused by typo in r86847.
- Fix bug in *MAT_015 where EROD flag was inactive for VP=1.
- Fix spurious deletion of beam elements that could happen when using *MAT_ADD_EROSION with exclusion number EXCL.
- Fix initialization error for *MAT_108 / *MAT_ORTHO_ELASTIC_PLASTIC with thick shell formulation 2.
- Update *MAT_214 (*MAT_DRY_FABRIC) to allow fibers to rotate independently.
- Enable regularization curve LCREGD of *MAT_ADD_EROSION to be used with FLD criterion, i.e. load curve LCFLD. Ordinate values (major strain) will be scaled with the regularization factor.
- Correct initialization of *MAT_CABLE in Staged Construction when starting from a nonzero time.
- Fix a bug for *MAT_255 that could happen when Poisson's ratio is input as a function of temperature.
- Add *CONTROL_MPP_MATERIAL_MODEL_DRIVER in order to enable the Material Model Driver for MPP (1 core).
- Fix incorrect nodal pressure scaling w.r.t. the damage parameter in *MAT_081 for type 13 tet elements. This caused error termination at start of damage.
- Add table input of thermal expansion coefficient for *MAT_270. Supports temperature-dependent curves arranged according to maximum temperature.
- Add table input of heat capacity for *MAT_T07. Supports temperature dependent curves arranged according to maximum temperature.
- Fix various bugs in *MAT_076 related to:
- Laminated shell theory.
- Extra prony series used in implicit shells.
- Temperature scaling.
- Fix bad tangent matrix in *MAT_027 for 2D elements.
- Fix incorrect stresses/strains when using *MAT_PIECEWISE_LINEAR_PLASTIC_THERMAL / *MAT_255 with *LOAD_THERMAL_OPTION.
- Fix output to elout for shell elements with *MAT_FABRIC when EOCS=2 for *CONTROL_OUTPUT. Stresses/strains were still output in local or lamina coordinate system instead of global coordinate system.
- Fix convergence error when using *MAT_ORTHOTROPIC_SIMPLIFIED_DAMAGE / *MAT_221 for implicit.
- Fix divide by zero for *MAT_HILL_FOAM / *MAT_177 during the stress tensor eigenvector iterations which resulted in elements disappearing in d3plot.
- Fix *MAT_SIMPLIFIED_JOHNSON_COOK_ORTHOTROPIC_DAMAGE / *MAT_099 shell elements which were not deleted despite reaching the rupture strain and number of intg points failed.
- Fix *MAT_PLASTIC_NONLINEAR_KINEMATIC / *MAT_165 for implicit analysis.
- Fix incorrect large time step when using *MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY without any failure criteria, FAIL/TDEL/EPSMAJ, for solid elements.
- Fix incorrect viscous force to elout in binout for *MAT_MUSCLE / *MAT_156.
- Fix nonzero z-strain when using *MAT_USER_DEFINED_MATERIAL_MODELS and shell element type 13 with nip=4.
- Fix zero stress/strains when using IORTHO=1 for *MAT_USER_DEFINED_MATERIAL_MODELS and shell element type 13.
- Fix incorrect strains output for shell type 13 and using *MAT_USER_DEFINED_MATERIAL_MODELS.
- Fix keyword input error if using *MAT_CONCRETE_DAMAGE_PLASTIC_MODEL instead of equivalent commands *MAT_CDPM or *MAT_273.
- Output warning message, KEY+954, if all data are zero for *MAT_WINFRITH_CONCRETE_REINFORCEMENT.
- Add two more kinematic hardening terms for *MAT_DAMAGE_3 / *MAT_153, c2 & gamma2.
- Include *MAT_091 / *MAT_092 (*MAT_SOFT_TISSUE) in tet solid formulation type 10.
- Fix input error for *MAT_CONCRETE_DAMAGE_REL3 / *MAT_72R3 when using large integer value for load curve, LCRATE, which was read in as real number. Change input format for LCRATE from real to integer.
- Fix incorrect results when using *MAT_GENERAL_VISCOELASTIC with the WLF shift functions for solid elements.
- Fix incorrect stresses for *MAT_COMPOSITE_DAMAGE / *MAT_022 when INTOUT='ALL' in *DATABASE_EXTENT_BINARY for solid elements.
- Fix time step for *MAT_72R3 for 2D analysis.
- Increase the number of significant digits of the cofficients mu and alpha to 20 in d3hsp for *MAT_OGDEN_RUBBER. Higher precision is needed if the coefficients are used directly for the material input to achieve the same results as the experimental data.
- Fix incorrect added mass for mass scaling when using *MAT_COHESIVE_MIXED_MODE.
- Output contour plots for *MAT_CAZACU_BARLAT / *MAT_233 when FIT=2.0.
- Add materials *MAT_CONCRETE_DAMAGE_REL3 / *MAT_072R3 and *MAT_CSCM_CONCRETE / *MAT_159 to Interactive Material Model Driver.
- Enable *MAT_JOHNSON_COOK / *MAT_015 for shell elements to work with coupled structural/thermal analysis.
- Allow shells used in 2D analysis (plane strain & axisymmetric) to be deleted when meeting failure criteria in the constitutive routine for materials *MAT_009, *MAT_026, *MAT_072, *MAT_110, *MAT_111, *MAT_145, *MAT_210, *MAT_221, *MAT_241 and *MAT_272.
- Fix input error when using parameter for card 3, fields 4 to 8 of *MAT_FLD_3-PARAMETER_BARLAT.
- Allow *MAT_SOIL_AND_FOAM / *MAT_005 to use positive or negative abscissa values for load curve input of volumetric strains.
- Fix spurious element deletions when using LAMSHT=3 (laminated shell theory) on *CONTROL_SHELL with shell elements using *MAT_NULL / *MAT_009.
- Fix spurious element failures when using *MAT_072R3 and *DAMPING_PART_STIFFNESS in explicit analysis.
- Fix incorrect *DATABASE_SSSTAT_MASS_PROPERTIES and *DATABASE_GLSTAT_MASS_PROPERTIES output to binout.
- Add warning message, MSG_KEY+944, to warn user that if more than one user material of the same type, i.e. more than one *MAT_041, only parameters from the cards 1 & 2 first one will be used.
- Allow load curves for *MAT_GURSON / *MAT_GURSON_JC / *MAT_GURSON_RCDC in card 6 to be read as integers or real numbers.
- Fix incorrect behavior when using *MAT_FINITE_ELASTIC_STRAIN_PLASTICITY with LSCR defined for the strain rate effects.
- Fix incorrect strains when using *MAT_USER_DEFINED_MATERIAL_MODELS in Material Model Driver.
- Fix spurious element deletion when using *MAT_081 / *MAT_PLASTICITY_WITH_DAMAGE with *MAT_ADD_EROSION.
- Fix incorrect failure strains and yield stress when using *DEFINE_HAZ_PROPERTIES for *MAT_PIECEWISE_LINEAR_PLASTICITY_STOCHASTIC shells.
- Fix incorrect results when using *MAT_SOFT_TISSUE / MAT_091 with AOPT < 0.
- Fix incorrect behavior for *MAT_MODIFIED_HONEYCOMB when LCSR=-1.
- Incorrect error message was displayed for *MAT_HYDRAULIC_GAS_DAMPER_DISCRETE_BEAM when the length of the beam is less than then the length of the gas column, C0.
- Fix incorrect behavior for materials *MAT_22, *MAT_54, *MAT_55 and *MAT_213 when LAMSHT is set to 1, 2 or 3 in *CONTROL_SHELL and thick shell type 1 or 2 are being used,
- Check that *MAT_ELASTIC_PLASTIC_THERMAL / *MAT_004 input temperature is either increasing or decreasing continuously.
- Add warning message, MSG_SOL+1231, if load curve curve has negative slope for *MAT_024 or *MAT_251.
- Fix internal energy calculation by correcting uninitialized data with *MAT_ACOUSTIC elform=14
- Fix *MAT_ACOUSTIC elform=8 time step calculation for wedge elements to reliably handle distorted configurations and changed the wedge element case to use 2-pt integration.
- Add *MAT_ACOUSTIC elform=8 support for pyramid element case using 5-pt integration.
- Add support to *MAT_219 (*MAT_CODAM2) for negative AOPT values which point to coordinate system ID's.
- Add and reorder extra history variables in *MAT_155 per user request. Also corrected an apparent problem with history data for optional viscous stress, and reduced the memory allocated at the same time.
- Add support of *MAT_PLASTICITY_WITH_DAMAGE_ORTHO_RCDC for tet element formulation 13. This element formulation was apparently overlooked when RCDC work was done.
- Fix the orientation of aniso/orthotropic materials that have AOPT=0 when used with 2D plane strain, plane stress, or axisymmetric elements and the element normals are defined in the -z direction. We automatically correct the orientation by changing the order of the element connectivity, but now we preserve the 1-2 edge so that AOPT=0 works properly.
- Fix damage calculation of *MAT_221, *MAT_ORTHOTROPIC_SIMPLIFIED_DAMAGE. The strain calulation used in determing the damage and failure was incorrect causing failure to occur at too small a strain value.
- Fix SMP and hybrid parallel consistency when using *MAT_239 for shells.
- Fix the use of *MAT_ADD_EROSION with thick shell forms 1 and 2. The messages reported include element ID's. Either the element ID's were wrong, or a segmentatin fault occurred when writing the messages.
- Make major update of spot weld failure option 9 in *MAT_SPOTWELD. The nugget fracture calculation at the middle of a 3 sheet weld was incorrectly calculated using the difference of forces and moments.
- Fix type 6,7,9,and 10 hourglass controls for *MAT_076, *MAT_GENERAL_VISCOELASTIC. These hourglass types all use material constants and for brick elements of *MAT_076, a failure to define the shear modulus caused a divide by zero and NaN's.
- Fix bugs related to material direction definitions for aniso/orthotropic materials. When BETA is set to zero when using *ELEMENT_SHELL_BETA or *ELEMENT_SOLID_ORTHO, we now correctly override the BETA value on the *MAT card. Also, when the MCID option was used on *ELEMENT_SHELL_MCID, we failed to convert degrees to radians resulting in the wrong material direction.
- Fix *MAT_ADD_THERMAL_EXPANSION for thick shell formulation 5. The strain was totally wrong. Also, for thick shell formulations 3 and 5, add support for themal expansion of total Lagrangian materials that use the deformation gradient.
- Fix stress and strain output of solid elements when CMPFLG=1 and the material type is *MAT_002, *MAT_021, *MAT_023, *MAT_040, *MAT_091, *MAT_092, *MAT_128, *MAT_132, *MAT_189, *MAT_266, or *MAT_267, and the elements rotate. The outputted values were not being rotated so output was in the initial material direction, not the current direction.
- Make changes to *MAT_244 (*MAT_UHS_STEEL):
- The phase change kinetics in *MAT_244 for solids and shells has been rewritten. This is a major change and there will be a difference when comparing new phase fractions with old results. The differences will be small at fast cooling rates. The code changes affect results at slow cooling rates the most.
- Fix bug in calculating cooling phase change latent heat for solids and shells.
- Add latent heat calculation to heating phase change kinetics.
- Fix bug in HEAT=2 option for shells to allow both heating and cooling.
- Fix bug when using a dynain file for re-start.
- Fix stability problems in *MAT_058 using higher poissons ratios together with *CONTROL_BULK_VISCOSITY for shells.
- Fix for damage evolution in fiber compression for *MAT_261 (*MAT_LAMINATED_FRACTURE_DAIMLER_PINHO)
- Improve handling of nonphysical material data input for *MAT_262 by setting reasonable default fracture toughnesses. A warning is printed if default parameters are used.
- Put classical equivalent plastic strain (von Mises type) to "plastic strain" field of *MAT_187.
- Simplify usage of solid element tet type 13 (*SECTION_SOLID, ELFORM=13) with user materials (*MAT_USER_DEFINED_MATERIAL_MODELS). Subroutines umat41_t13 and umat41v_t13 of version R7.0 are obsolete.
- Triaxiality on hisvar # 12 of *MAT_224 shell elements is now also correct in elastic regions.
- Fix for failure criterion LCFLD of *MAT_ADD_EROSION: Reincarnation of an already failed integration point was possible.
- Modify *MAT_224 so it uses the temperatures from the thermal solution for a coupled thermal-mechanical problem.
- Switch off rate effects in *MAT_123 (shells) for static implicit analyses or dynamic analyses with IRATE = 1 or 2.
- Switch off rate effects in *MAT_181 and *MAT_183 for static implicit analyses or dynamic analyses with IRATE= 1 or 2. This was not yet working for the table option.
- Correct contact stiffness calculation for *MAT_106 with LCE>0 and LCPR>0.
- Enable *MAT_133 to be used with user-defined failure (matusr_24). Input parameter USRFAIL (0:off, 1:on) is on Card 6/7, Column 7.
- Modify *MAT_ADD_EROSION parameter EPSTHIN.
- EPSTHIN>0: individual thinning for each IP from z-strain (as before).
- EPSTHIN<0: averaged thinning strain from element thickness (new).
- Add alternative solution method (Brent) for *MAT_015 and *MAT_157 in case standard iteration fails to converge.
- Fix principal strain calculation for *MAT_ADD_EROSION option LCFLD. Tensorial shear strain was used but engineering shear strain is correct.
- Fix for *MAT_ADD_EROSION, parameter MXEPS<0. The strain rates in the corresponding load curve were not correctly transformed when *INCLUDE_TRANSFORM with FCTTIM.ne.1.0 was used.
- Enable *MAT_071 to use initial axial force F11 from *INITIAL_STRESS_BEAM.
- Correct contact stiffness calculation for *MAT_224 with E<0 (curve), and *MAT_244 with E<0 (table).
- Fixed *MAT_VISCOELASTIC (*MAT_006) for type 13 tet elements. Before, it was not really working at all.
- Switch off rate effects in *MAT_083 for static implicit analyses or dynamic analyses with IRATE= 1 or 2. This was already working for the viscous damping part (DAMP), but now is also working for the table (TBID), i.e. only the first load curve is used.
- Add shell element IDs as additional output to messag file for *MAT_036's warning "plasticity algorithm did not converge".
- Enable varying temperatures over shell thickness for *MAT_106 and *MAT_188.
- Fix *MAT_224 when used with an equation of state (*EOS). Internal energy and relative volume were not correctly initialized.
- Modification for *MAT_244: TRIP effect should only be active for martensite (phase 5). In addition, TRIP effect can totally be disabled by setting input parameter CRSH=2.
- Add "plastic strain rate" as history variable #9 to *MAT_106.
- Fix failure behavior of *MAT_PLASTICITY_POLYMER for multi-integration point solid elements. They are now eroded as soon as the first integration point fails.
- For *MAT_ADD_EROSION damage model GISSMO parameter FADEXP, allow values > 0. Before, only values >= 1 were possible.
- *MAT_ADD_THERMAL_EXPANSION is now supported for solid element formulation 13.
- For *MAT_USER_DEFINED_MATERIAL_MODELS, the subroutines crvval and tabval can be called with negative curve/table id which will extract values from the user input version of the curve or table instead of the internally converted "100-point" curve/table.
- In the damage initiation and evolution criteria of *MAT_ADD_EROSION (invoked by IDAM<0), add the option Q1<0 for DETYP=0. Here, |Q1| is the table ID defining the ufp (plastic displacement at failure) as a function of triaxiality and damage value, i.e., ufp=ufp(eta,D), as opposed to being constant which is the default.
- In *MAT_RHT, ONEMPA=-6 generates parameters in g,cm and microS and ONEMPA=-7 generates parameters in mm, ms and mg
- In *MAT_SIMPLIFIED_RUBBER/FOAM, STOL>0 invokes a stability analysis and warning messages are issued if an unstable stretch point is found within a logarithmic strain level of 100%.
- Fix bug for *MAT_190 when FLD level is low - element won't fail.
- Fix a bug in *MAT_037 when normal stress is applied.
- Fix spontaneous failure of elements for *MAT_123 / *MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY if EPSTHIN is specified.
- Fix incorrect von Mises stress for *MAT_123 / *MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY after restart when using stress-strain input via the 8 data points specified in cards 3 & 4 of the material cards.
- Change *MAT_ACOUSTIC elform=8 time step calculation to more conservatively handle highly distorted tets.
- Fix internal energy calculation for *MAT_ACOUSTIC elform=8 tetrahedrons and pentahedrons (wedges).
- Add an error termination if *MAT_SPOTWELD is used with OPT=6 or OPT=9 and the necessary *DEFINE_SPOTWELD_RUPTURE_STRESS or *DEFINE_SPOTWELD_RUPTURE_PARAMETER do not exist. This prevents the use of uninitialized memory.
- Add a warning if a user tries to use *INTEGRATION_SHELL or *PART_COMPOSITE with *MAT_FABRIC. It becomes an error if there is not thickness data provided by a *SECTION card.
- Add error message for *MAT_USER_DEFINE_MATERIAL_MODELS if IBULK and IG > LMC.
- Extend recently developed features for *MAT_054 shells to *MAT_054 thick shells (TYPE=3 and 5). This includes:
- SLIM input variables
- orthogonal crashfront
- strain rate dependent strength via *DEFINE_CURVE
- separate subroutine for *MAT_055
- Enable *MAT_036 and *MAT_243 to be used with user-defined failure. Input parameter USRFAIL (0:off, 1:on) is on new Optional Card 6, Column 1.
- Add *MAT_007 for type 13 tetrahedral element (*SECTION_SOLID, ELFORM=13).
- Enable regularization curve LCREGD of *MAT_ADD_EROSION to be used with standard (non-GISSMO) failure criteria. Users can now define a failure criterion plus IDAM=0 plus LCREGD=scaling factor vs. element size to get a regularized failure criterion.
- *MAT_ADD_EROSION: equivalent von Mises stress SIGVM can now be a function of strain rate by specifying a negative load curve ID.
- Rotational treatment in *MAT_034 / *MAT_FABRIC supported with airbag initial reference geometry
.
ALE
- Implement *DATABASE_ALE to write time history data (volume fractions, stresses,...) for a set of ALE elements. Not to be confused with *DATABASE_ALE_MAT.
- For *INITIAL_ALE_MAPPING, write the mapping file if the sense switches sw1, sw2, stop, or quit are invokes or if the criteria set by *TERMINATE stop the run.
- *SECTION_ALE1D and *SECTION_ALE2D now work on multiple processors (SMP and MPP).
- For *CONSTRAINED_LAGRANGE_IN_SOLID ctype 5, support tshell elements.
- *CONSTRAINED_LAGRANGE_IN_SOLD ctype 4/5 now converts friction energy to heat. Note it only works for ALE elform 12.
- Clean up MPP memory allocation for *CONSTRAINED_LAGRANGE_IN_SOLID CTYPES 4 and 5.
- Implement *DELETE_PART in small restarts for ALE2D parts.
.
SPH
- Fix memory problem while using *BOUNDARY_SPH_SYMMETRY_PLANE option -- MPP only.
- Fix bug and clean up D3THDT output (*DATABASE_BINARY_D3THDT) for SPH.
- Fix output suppression (PSETID in *DATABASE_BINARY_D3PLOT and *DATABASE_BINARY_D3PART) for SPH parts. r87051
- Correct nodal contact stiffness for SPH nodes in MPP (NODES_TO_SURFACE type contacts, both SOFT=0 and 1). Results are now consistent with SMP.
- Enable SPH tracer particle (*DATABASE_TRHIST) output for SMP in lsda database.
- Add conversion of frictional contact energy into heat when doing a coupled thermal-mechanical problem for SPH (variable FRCENG in *CONTROL_CONTACT). This option applys to all 3D contact types supported by SPH particles.
- Add support of *MAT_027 (*MAT_MOONEY_RIVLIN_RUBBER) for SPH.
- For keyword *DEFINE_ADAPTIVE_SOLID_TO_SPH, add support of explicit SPH thermal solver for the newly generated SPH particles which were converted from solid elements. The temperatures of those newly generated SPH particles are mapped from corresponding solid elements.
- Instead of writing all extra history variables for SPH particles to d3plot, write only NEIPH extra history variables. NEIPH is given in *DATABASE_EXTENT_BINARY.
- Add support of *MAT_THERMAL_ISOTROPIC_TD_LC for SPH with thermal option.
- Add support of *MAT_188 (*MAT_THERMO_ELASTO_VISCOPLASTIC_CREEP) for SPH.
- Add support of *BOUNDARY_SPH_SYMMETRY for SPH formulation with Lagrangian kernel (IFORM=7 or 8 in *CONTROL_SPH).
- Fix SPH solution that was broken by rev. 80108.
- Add support of *LOAD_REMOVE_PART for SPH particles which allows users to deactivate the SPH particles of a part.
.
Discrete Element Method
- Disable particle-to-particle contact between particles that are bonded via *DEFINE_DE_BOND or *DEFINE_DE_HBOND.
- Add time step calculation for DES bond.
- When *DEFINE_DE_BOND is defined, skip the contact between two DES nodes if they are bonded.
- Implement DE to surface tied contact *DEFINE_DE_TO_SURFACE_TIED. The implementation includes bending and torsion.
- Implement keyword *DEFINE_DE_HBOND to define heterogeneous bond for discrete element spheres (DES). DES (*ELEMENT_DISCRETE_SPHERE) with different material models can be bonded.
- Implement keyword *INTERFACE_DE_BOND to define multiple failure models for various bonds within one part or between different parts through the keyword *DEFINE_DE_HBOND.
- Implement *DEFINE_DE_TO_BEAM_COUPLING for coupling of discrete element spheres to beam elements.
- Add support of triangular segments for *DEFINE_DE_TO_SURFACE_COUPLING.
- Add variable MAXGAP in *DEFINE_DE_BOND to give user control of distance used in judging whether to bond two DES together or not, based on their initial separation.
.
Blast
- Fix time-of-arrival of the Mach wave for BLAST=4 in *LOAD_BLAST_ENHANCED.
- Correct the way forces are handled for triangular segments subjected to *LOAD_BLAST_ENHANCED.
- Implement hemispherical geometry for particle blast (*DEFINE_PBLAST_GEOMETRY).
- Add explosive type for *PARTICLE_BLAST.
- For particle-based blast *PARTICLE_BLAST:
- Include random distribution of initial air molecules
- Modify algorithm to account for the non-thermally-equilibrated state of high velocity gas.
- Improve particle contact method for particle-based blast loading *PARTICLE_BLAST.
- Fix an undocumented bug which affected the way forces were handled for triangular segments subjected to *LOAD_BLAST_ENHANCED.
.
EFG
- Add IAT=-3 in *CONTROL_REMESHING_EFG, which uses FEM remapping scheme in EFG adaptivity. Compared to IAT=-2,-1,1,2, IAT=-3 is faster and more robust but less accurate.
- In *SECTION_SHELL_EFG, set the default values of DX, DY to 1.1.
- Add control flag MM in *CONTROL_REMESHING_EFG to turn on/off monotonic mesh resizing for EFG 3D general remeshing (ADPOPT=2 in *PART).
.
Implicit
- Fix a bug in *CONTACT_TIED_SHELL_EDGE_TO_SURFACE_CONSTRAINED_OFFSET in implicit. The bug caused unreasonable contact forces when dealing with slave nodes offset from warped master segments.
- Upgrade the implicit implementation of rack and pinion and screw joints (*CONSTRAINED_JOINT) so the joint is driven by relative motion of the assembly i instead of absolute motion.
- *CONTROL_IMPLICIT_BUCKLING - Extend Implicit Buckling Feature to allow for Implicit problems using Inertia Relief. This involves adding the Power Method as a solution technology for buckling eigenvalue problems. Using the power method as an option for buckling problems that are not using inertia relief has been added as well.
- Extend Implicit Buckling to allow for Intermittent extraction by using negative values of NMODE on *CONTROL_IMPLICIT_BUCKLING similar to using negative values of NEIG on *CONTROL_IMPLICIT_EIGENVALUE.
- Extend implicit-explicit switching specified on *CONTROL_DYNAMIC_RELAXATION to allow explicit simulation for the dynamic relaxation phase and implicit for the transient phase.
- New implementation for extracting resultant forces due to joints for implicit mechanics.
- New implementation of extracting resultant forces due to prescribed motion for implicit mechanics.
- Add support for *DEFINE_FUNCTION_TABULATED to implicit mechanics for prescribed motion constraints.
- Add the treatment of *CONTACT_1D to implicit mechanics constraint processing.
- Correct handling of tied groupable contact with implicit in MPP.
- Correct the generation of the header for the d3eigv, d3iter, and d3mode files for the case of MPP with predecomposition.
- Convert the computation of modal stresses to use the orthonormal form of the eigenvectors instead of the one scaled for LS-PrePost visualization.
- Fix gathering of forces for MPP Superelement implementation. Forces on shared nodes were counted multiple times.
- Fix gathering of forces for MPP *PART_MODES implementation. Forces on shared nodes were counted multiple times.
- Fix MPP implementation of LaGrange Multiplier joint formulation (*CONSTRAINED_JOINT, *CONTROL_RIGID) to properly handle prescribed motion constraints.
- Fix handling of multiple cyclic boundary conditions by implicit mechanics in SMP (not applicable to MPP). Some dynamic memory was being freed after the first set causing a memory error for subsequent sets.
- Correct the computation of external work for implicit mechanic problems where the external work is coming from prescribed motion on rigid bodies.
- Correct the time of the output to spcforc for implicit mechanics.
- Fix the computation of resultant forces for implicit in MPP.
- Add MPP synchronization for implicit contact penetration checking used by implicit forming.
- Fix computation of inertia computation for superelements created by *CONTROL_IMPLICIT_MODES.
- Fix guided contact for implicit applications using SMP.
- Correct setting of drilling rotation stiffness for quadratic shell and triangle elements (formulations 23 & 24) for implicit eigenvalue problems.
- Correct the computation of superelements using *CONTROL_IMPLICIT_MODES.
- Enhance implementation of *PART_MODES for parts made up of beam elements. Recitfy the node count due to differences with beam reference nodes.
- Correct *PART_MODES implementation for reading mode shapes from d3mode database. Fix convergence problem when using idrflg=5 for *CONTROL_DYNAMIC_RELAXATION and *MAT_MODIFIED_PIECEWISE_LINEAR_PLASTICITY / *MAT123.
- Add support for IGAP>2 in implicit, segment based (SOFT=2) contact.
- Fix a serious error in MPP implicit 2D automatic contact. The node numbers passed to the stiffness routine were completely wrong and problems would error terminate.
- Fix the section force calculation (*DATABASE_SECFORC) to work with the implicit formulation 3 solid element. It was reporting nonsense.
- Allow birth and death time in *CONTROL_IMPLICIT_DYNAMIC to be effective when used together with *CONTROL_IMPLICIT_FORMING.
- Correct the computation of resultant forces for rigid bodies during implicit mechanics computation (*DATABASE_BNDOUT, *BOUNDARY_PRESCRIBED_MOTION_RIGID).
- For nonlinear implicit solver 12, convergence is prevented if boundary conditions, *BOUNDARY_PRESCRIBED_..., are not properly fulfilled. For this the message "Convergence prevented due to unfulfilled bc..." is issued and the solver keeps iterating. See *CONTROL_IMPLICIT_SOLUTION.
- Allow *CONTROL_IMPLIICT_FORMING to work with *CONTROL_IMPLICIT_DYNAMICS by activating the DEATH parameter.
.
Thermal
- Add constraint-based, thermal nodal coupling for *CONSTRAINED_LAGRANGE_IN_SOLID. HMIN<0 turns it on.
- Fix incorrect thermal time step when using iauto<0 (load curve to determine time step size) for *CONTROL_IMPLICIT_AUTO together with *CASE.
- Add FRCENG=2 on *CONTROL_CONTACT keyword.
- if FRCENG=1, convert contact frictional energy to heat.
- if FRCENG=2, do not convert contact frictional energy to heat.
- Fix bug that prevented thermal solver from correctly handling *CONTACT_ENTITY input.
- Add effect of thermal time scaling (TSF in *CONTROL_THERMAL_SOLVER) to 2D contact.
- Fix problem with *INITIAL_TEMPERATURE keyword. Now, bottom and top (fictitious) nodes belonging to thick thermal shell elements are given the temperature initial condition of the mid-plane node when nsid=0. NSID=0 means intialize all nodes.
- Fix bug that prevented thermal code from correctly handling *RIGIDWALL_GEOMETRIC input.
- Fix bug that prevented Ctrl-C from interrupting the thermal solver. Now, Ctrl-C will allow the user to enter a sense switch. The parameter TGRLC (thermal generation rate curve number) in *MAT_THERMAL_(option) can now reference *DEFINE_FUNCTION.
- The function arguments are heat_generation = function(x,y,z,vx,vy,vz,temperature,time)
- The argument 'time' is the current solution time. Tha other arguments are a numerical average of the values at the node points defining the element.
.
MPP
- MPP: synchronize rigid body flags for shared nodes during *DEFORMABLE_TO_RIGID switching so that these nodes are handled consistently across processors.
- Fix MPP adaptivity error termination in the case where processors do not all share the same local directory.
- Fix MPP contact input processing error with new long input format.
- Add new pfile decomposition region option: partsets Takes a list of part sets (*SET_PART) from the keyword input and uses them to define a region, e.g., region { partsets 102 215 sy 1000 } This example would take partsets, scale y by 1000, and decompose them and distribute them to all processors.
- Change the decomposition behavior of *CONTROL_MPP_DECOMPOSITION_PARTS_DISTRIBUTE, *CONTROL_MPP_DECOMPOSITION_PARTSET_DISTRIBUTE, and *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.
- Improvements to velocity initialization in MPP full deck restart:
- *CHANGE_VELOCITY_RIGID_BODY now works for MPP.
- *CHANGE_VELOCITY can be applied to rigid body nodes. Rigid body velocity is calculated taking into account those nodal velocities.
- Guard against possible problem in MPP output of nodout for accelerometers, which may have been in some cases in r76434
- Fix for MPP double precision *INTERFACE_LINKING when 32ieee=yes is used.
- MPP stability improvements for tied offset contact when TIEDID=1 (*CONTACT) or when groupable (*CONTROL_MPP_CONTACT_GROUPABLE).
- Fix possible MPP hang at the end of initialization.
- Reduce MPP memory usage on clusters.
- Add MPP support for *ELEMENT_SOURCE_SINK.
- Fix a a bug that could cause an MPP run with a large number of cores to hang when the model includes *CONTACT_ENTITY and solid elements.
- Fix memory error messages after 'Normal Termination' for MPP when using *DAMPING_RELATIVE.
- Add MPP support for *MAT_ACOUSTIC in combination with *BOUNDARY_USA_SURFACE.
- Support hybrid with parallel consistancy option for shell formulations 23 and 24.
- Fix MPP hex assemblies by *DEFINE_HEX_SPOTWELD_ASSEMBLY when more than 8 elements are in the assembly. There was an error in the decomposition code that caused an error terminatation.
- Fix a bug in MPP segment based contact. A problem was found when contact occurs between segments on different partitions. It was likely that the scale factor used to scale the stiffness for the passed segments was the SFM parameter even if the segment was on the slave side or for single surface contact. If SFM=SFS in the data, then there was no problem.
- Fix MPP *CONTACT_2D_AUTOMATIC when used with mass scaling. The problem resulted in a failed run due to segmentation fault.
- Fix an error that could cause a hang in sleout output initialization when MPP *CONTACT_2D_AUTOMATIC was used.
- Fix rcforc output for MPP *CONTACT_2D_AUTOMATIC. The contact ID was incorrect.
- Fix a memory error in MPP segment based eroding contact that occurred with thick shells in the contact definition. This error caused a segmentation fault in phase 3 of initialization.
- Fix MPP bug affecting reading of *ELEMENT_SOLID_ORTHO data when there is a mix of 8- and 10-noded elements.
- Add new pfile options:
- decomp { d2r_as_rigid }
- decomp { d2ra_as_rigid }
- Modify MPP decomposition related to massless nodes: previously they were all dumped on processor 0, under the assumption that there weren't very many of them. For topological optimization, there can be a LOT of them. They are now distributed across all processors on a round robin basis.
.
Forming
- Fix no output to trimcurves.ibo when using *INTERFACE_BLANKSIZE_DEVELOPMENT and defining "JOBID=".
- Add option ISRCOUT to *INCLUDE_STAMPED_PART to dump out the transformed source/stamp mesh.
- Fix bugs and make improvements for trimming (*DEFINE_CURVE_TRIM):
- Fix a bug in trimming using single precision solver.
- Fix problem in 2-D trimming when the trimming curve point spacing is too dense.
- Allow nodal temperature to be considered in trimming.
- Allow nodal temperature and *CONTROL_CHECK_SHELL to be used together.
- Fix a missed trimming problem for an outer trim loop.
- *CONTROL_FORMING_OUTPUT: Allow NTIMES to be zero; support birth and death time; support scale factor in curve definition.
- Add a new option (INTFOR) to *CONTROL_FORMING_OUTPUT to control the output frequency of the INTFOR database.
- Add new features (instant and progressive lancing) in *ELEMENT_LANCING for sheet metal lancing simulation:
- Fix adaptive issues in lancing.
- Allow multiple curve intersections during lancing.
- Allow multi-lancing locations.
- Set adaptive level to be '1' around the lancing curve.
- Allow lancing boundary to be a closed loop.
- Improve adaptive constraint treatment during lancing.
- Fix problems for symmetry boundary conditions in springback compensation.
- Add a new keyword: *CONTROL_FORMING_INITIAL_THICKNESS.
- Add a new option for springback compensation: *INCLUDE_COMPENSATION_ORIGINAL_TOOLS.
- Add a new keyword: *INTERFACE_COMPENSATION_NEW_PART_CHANGE.
- Fix a bug in springback compensation with local smoothing in *INTERFACE_COMPENSATION_LOCAL_SMOOTH.
- Add a new keyword (*DEFINE_CURVE_BOX_ADAPTIVITY) to provide better control of mesh refinement along two sides of the curve.
- Fix a bug in *CONTROL_FORMING_TIPPING where one stress tensor output was incorrect.
- Fix a bug in *CONTROL_FORMING_TIPPING, which tipped all parts with the same amount regardless of the PID/SID specified.
- Fix a bug in *DEFINE_CURVE_FLC.
- Allow handling of nano-sized structure and assorted bugs in *CONTROL_FORMING_AUTOPOSITION. Positioning distances were off.
- Fix various bugs in linear unflanging to improve convergence, for *CONTROL_FORMING_UNFLANGING.
- Fix a bug in multiple bead definition related to error message "duplicate node set found, etc.". This is related to NBEAD parameter i in *CONTACT_DRAWBEAD.
- Fix segmentation fault when using *DEFINE_FORMING_BLANKMESH.
- Fix a bug for trimming when the trimming curves are not self-closed in *DEFINE_CURVE_TRIM_NEW.
- Fix a bug in *CONTROL_FORMING_ONESTEP with encrypted material input.
.
Isogeometric Elements
- Add error message if polynomial order of NURBS-Patch exceeds 9 (*ELEMENT_SHELL_NURBS_PATCH).
- Set INT=1 (full integration) as default if linear NURBS elements are used (*ELEMENT_SHELL_NURBS_PATCH). Otherwise it may lead to instability.
- Fix transverse shear bug in isogeometric shell form=1.
- Isogeometric analysis: contact is available in MPP.
- Normalize tangent vectors for local coordinate system for the rotation free isogeometric shells
- Add support for dumping shell internal energy density for isogeometric shells (*ELEMENT_SHELL_NURBS_PATCH) via interpolation shells.
- Add support for dumping of strain tensor (STRFLG.eq.1) for isogeometric shells (*ELEMENT_SHELL_NURBS_PATCH) via interpolation shells.
- Fix thickness change output (istupd.ne.0) for *ELEMENT_SHELL_NURBS_PATCH & generalized shells.
- Fix post-processing using interpolation shells (*ELEMENT_SHELL_NURBS_PATCH & *ELEMENT_INTERPOLATION_SHELL).
- Fix writing mass properties to d3hsp-file in case of isogeometric elements (*ELEMENT_SHELL_NURBS_PATCH).
- Correct stress computation in interpolation elements for isogeometric shells (*ELEMENT_SHELL_NURBS_PATCH).
- Correct writing of control-net to 'igaplot' for *ELEMENT_SHELL_NURBS_PATCH formulation FORM=4.
- Improve the critical time step computation for NURBS-shells (*ELEMENT_SHELL_NURBS_PATCH).
- Correct energy computation reported to glstat for isogeometric shell elements (*ELEMENT_SHELL_NURBS_PATCH).
.
Electromagnetic Solver EM
- Change the *EM_2DAXI card in order to incorporate the ssidIn and ssidOut which were previously in the *EM_BOUNDARY card. The use of *EM_BOUNDARY is thus no longer necessary for 2D-axi simulations. See manual for details.
- Add H-field, magnetization and relative permeability to d3plot output.
.
Incompressible Flow Solver ICFD
- Fix a bug that was causing the level set interface to duplicate in the presence of embedded shells. Now *MESH_INTERF and *MESH_EMBEDSHELL can coexist.
- Add the option to give a title to ICFD parts using *ICFD_PART_TITLE.
- *ICFD_INITIAL:
- Add a reference pressure (pressurization pressure) for when no pressure is imposed on the boundaries.
- Add the initialization of all nodes at once by setting PID=0.
- Add the non-inertial reference frame implementation defined by the keyword *ICFD_DEFINE_NONINERTIAL.
- Add several new state variables to LSO. Please refer to the LSO manual to see how to print out the list of supported variables.
- Add title option to the material keyword using *ICFD_MAT_TITLE.
- Fix the automatic time step calculation in the precense of boundary layer meshes.
- Add support for FSI with thick shells.
- 2D shells are now supported for FSI in MPP. In the past only beams could be used in MPP and beams and shells could be used in SMP.
- The keyword *ICFD_CONTROL_FSI has a new field to control the sensitivity of the algorithm to find the solid boundaries used in FSI calculations.
- The 2D mesh now generates semi-structured meshes near the boundaries.
- Fix the generation of boundary layer meshes on multiple embedded shells that are connected with each other or to the walls.
- Add heat flux boundary condition using *ICFD_BOUNDARY_FLUX_TEMP.
- Add divergence-free and Space Correlated Synthetic Turbulence Inlet Boundary Condition for LES (Smirnov et al.) using *ICFD_BOUNDARY_PRESCRIBED_VEL.
- *ICFD_BOUNDARY_PRESCRIBED_VEL:
- Add inflow velocities using the wall normal and a velocity magnitude using the 3rd field VAD.
- Add the activation of synthetic turbulence using the 3rd field VAD.
- *ICFD_CONTROL_LOAD: use to reset the body load provided by the *LOAD_BODY keyword.
- Add the option to control the re-meshing frequency in both keywords: see *ICFD_CONTROL_ADAPT_SIZE and *ICFD_CONTROL_ADAPT.
- *ICFD_CONTROL_IMPOSED_MOVE: Impose a rigid body motion to the mesh bypassing the solid solver to avoid the FSI variable transfer in applications that need simple motions.
- *ICFD_CONTROL_TURB_SYNTHESIS: control parameters for the synthetic turbulence inflow.
- *ICFD_CONTROL_OUTPUT: Added the VTK option to OUTL using the number 6. By default vtk files will be written to a directory named vtk in the working directory. *ICFD_DATABASE_AVERAGE: Allows the computation of time average variable values at given time intervals.
- *ICFD_BOUNDARY_PRESCRIBED_MOVEMESH: Allows the mesh to slide on the boundaries following the cartesian axis.
.
Compressible Flow Solver CESE
- Add a PART_SET option for *CESE_BOUNDARY_..._PART cards,
- Bring in more 2D mesh support, both from the PFEM mesher and a user input 2D mesh (via *ELEMENT_SOLID with 0 for the last 4 of 8 nodes).
- Enable the 2D ball-vertex mesh motion solver for the 2D CESE solver.
- Fix d3plot output for the 2D Eulerian and moving mesh cases
- Add new input cards:
- *CESE_BOUNDARY_CYCLIC_SET
- *CESE_BOUNDARY_CYCLIC_PART
- Add code for 2D CESE sliding boundary conditions.
- For 2D, correct CESE point output using LSO.
- MPP: corrected the CESE d3plot output.
- Correct CESE moving mesh restart.
- Correct CESE MPP chemistry communications involving species data.
- Add support in CESE FSI for 2D shells in MPP.
- Add support for CESE FSI with thick shells.
- Add 2D & 2D-axisymmetric cases in the CESE-FSI solver (including both immersed boundary method & moving mesh method) .
.
Chemistry Solver
- Add the CSP reduced chemistry model with 0D, 2D, and 3D combustion. The 2D and 3D combustion cases couple with the CESE compressible flow solver.
- Add the G-scheme reduced chemistry model only for 0D combustion.
- Add two different reduced chemistry models.
- The Computational Singular Perturbation (CSP) reduced model is implemented with existing compressible CESE solver. The CSP is now working on 0-dimensional constant volume and pressure combustion, 2-D, and 3-D combustion problems.
- The new reduced chemistry model, G-scheme, is implemented, but currently works only 0-dimensional problems such as constant combustors.
.
Miscellaneous
- Fix SMP bug that causes too many opened files in problems with many many adaptive steps: a file was being opened every cycle but not closed.
- Fix problem generating *RIGIDWALL visualization nodes if beam orientation nodes are also generated.
- New encryption keys now in effect. There are two, a 1024 bit key and a new 2048 bit key. The 2048 bit key has a bit of a performance hit during keyword input, so should be generally avoided.
- Fix definition of ANSYS library for userlib.
- Fix spurious error, KEY+141, when using *RIGIDWALL_GEOMETRIC..._DISPLAY and the optional card 6 for the _DISPLAY option is not defined.
- Fix incorrect nodes generated by *SET_NODE_GENERAL with OPTION=PART when used together with *PART_MOVE and IFSET=1, i.e. part set id is used.
- Fix bug affecting *TERMINATION_DELETED_SOLIDS_SET and *TERMINATION_DELETED_SHELLS_SET. Only the first part in the part set was counted and used to determine the termination.
- Fix a problem of random termination when *PART_COMPOSITE is used with adaptive remeshing.
- Fix for *TERMINATION_DELETED_SOLIDS_SET, broken since r62001.
- Fixes to *NODE_TRANSFORM, which was not working correctly with *SET_NODE_GENERAL.
- Several cases of input processing speedups due to the use of better sorting algorithms.
- Fix integer overflow in reporting of memory usage: if the values are > 1GW, report in MW instead of in words.
- Fix some bugs for *INCLUDE_NASTRAN. The translated LS-DYNA deck is now written to dyna.inc.
- Fix input error during keyword input phase when using alphanumeric label for *SECTION and *SET_NODE_GENERAL.
- Fix input error during keyword input phase when PLOTEL=1 in *CONTROL_RIGID and number of *CONSTRAINED_NODAL_RIGID_BODIES exceeds 500.
- Fix input error while reading in structured file during restart and using long=s.
- Fix skipping of the line following an inadvertent blank line when reading *ELEMENT_SOLID.
- Fix warning message, KEY+138, for empty part set, when using *SET_PART_LIST_GENERATE.
- Fix extra *DEFINE_CURVE card in dyna.inc file when using *DEFINE_CURVE_SMOOTH with *INCLUDE_TRANSFORM.
- Fix input error, KEY+157, when using *SET_PART_ADD to define part set for *DEFORMABLE_TO_RIGID.
- Fix error when using *DEFINE_CURVE_FUNCTION with RCFORC contact function and local coordinate system, 'local' is defined.
- Fix *SET_NODE_LIST_GENERATE_INCREMENT which is generating incorrect node list.
- Fix error, KEY+110, when using *SET_PART_LIST_GENERATE_COLLECT.
- Add warning message, MSG_KEY+932, if MID1/MID2=0 for *PART_COMPOSITE.
- Fix incorrect node set generated when using *NODE_TRANSFORM with *SET_NODE_GENERAL with BOX option.
- Add warning message, KEY+926, if some of the nodes in *SET_NODE referenced by EDGSET of *SECTION_SHELL do not belong to seatbelt elements.
- Fix bug whereby *INCLUDE_TRANSFORM created an *ELEMENT_DISCRETE and an *ELEMENT_BEAM for each *ELEMENT_DISCRETE that it transformed. No *ELEMENT_BEAM should be created.
- Jobid can now be changed in a restart by including "jobid=" on the restart execution line. Previously, the jobid stored in d3dump could not be overwritten.
- All dynain output (*INTERFACE_SPRINGBACK_LSDYNA) is disabled for any model in which any nodes or elements are encrypted in the input and suppressed from output via PSETID in *DATABASE_BINARY_D3PLOT.
- Part labels (PID) can be up to 8 characters in standard format; 20 characters in long format. Labels for sections (SID), materials (MID), equations of state (EOSID), hourglass IDs (HGID), and thermal materials (TMID) can be up to 10 characters in standard format; 20 characters in long format.
- Create bg_switch and kill_by_pid for SMP. Both files will be removed at the termination of the run.
- Increase the overall length of command line to 1000 characters and length of each command line option to 50 characters.
- Fix input error if *SET_SHELL_GENERAL created shell set of more than 250 shells.
- Fix incorrect train forces when using *RAIL_TRAIN / *RAIL_TRACK and the tracks are not in the global XY plane.