Zlsdyna LS-Dyna interface#

Description#

The Zlsdyna port applies to the user material facility within the explicit dynamics code LS-Dyna. Implicit integration modes are not supported for this interface, so the port is strictly explicit and therefore somewhat different from the other codes.

The user is referred to the LS-Dyna documentation sections under the *MAT chapter of the user commands manual for topic *MAT_USER_DEFINED_MATERIAL_MODELS, and also to information included in the Appendix A of the 970 user manual.

Syntax#

% Zlsdyna [ opts ] problem \(\hookleftarrow\)

Compatibility#

The Zlsdyna interface is tested at the time of writing with LS Dyna 970 which requires building a custom executable from the development kit. The interface has been tested with both single process and MPP versions of LS-Dyna. Unfortunately because of licensing restrictions NW Numerics is unable to re-distribute modified binaries of LS-Dyna, so the compilation obligation falls on the end user. In some cases NW Numerics has been able to assist in this compilation process, so please inquire with the distributor.

This procedure imposes the following very strict requirements:

  • Precisely the same compiler as defined by LSTC must be available and used for the build process.

  • The development kit must be obtained from LSTC. There are different development kits for the single and MPI based distributed domain solver.

  • Check with NW Numerics on our testing level with the platform chosen. Because of the many different computer/distribution levels possible there is likely some configuration work to be done.

Note

With LS Dyna 971 MPP versions there will be a more robust “plug-in” style interface will be implemented similar to and . In that case the Zlsdyna installation and version tracking will become a negligible effort. All aspects of the user launch process will remain the same however.

Getting started#

Perform a standard installation of Z-set, including the binaries and shared files. The install location will henceforth be referred to as the Z7PATH. In the user-compiled case the LS-Dyna executable will be located in a common library directory. With the shared library method used with 971 it will be necessary to specify the location of the LS-Dyna executable via the Z7_DYNA_ROOT environment variable.

There are some test cases in the Zlsdyna directories in the validation test database. For LS-Dyna the Z-mat interface file name is standardized to be umat41 or umat42. Note that because of the need to have an automated testing environment with all the LS-Dyna validation cases in the same directory, the testing program copies a Z-mat interface file prob.zmat to umat41 where prob is the basename of the prob.k input before running Zlsdyna. In fact this behavior is a convenienace option of the Zlsdyna command, with the -auto switch. One can equivalently set the environment variable Z7_DYNA_AUTOCOPY to be equal to yes.

Input file change#

Like all the other Z-mat interfaces, there are some lines in the user’s input deck (the .k file) which must be changed to indicate that a user-material is being used, and to specify the amount of state variable storage. The following is an example:

*MAT_USER_DEFINED_MATERIAL_MODELS
$      mid        ro        mt       lmc       nhv     iorth     ibulk        ig
         1     8.930        41         2        40         0         1         2
$    ivect     ifail  ithermal
         0         0         0
$       p1        p2
       1.3     0.433

The mt data entry specifies the user routine to use, and the nhv entry specifies the number of state variables required.

Zmaster interface#

The d3plot results files can be read via Zmaster directly as an alternate choice for post processing, though the standard LS-Dyna prepost is quite a nice environment and there may not be so much reason to do this. Because there is no default suffix an added switch -d3d is needed to indicate an LS Dyna file. When a numbered series of d3plot files is to be read only the 1st file (unnumbered) should be specified on the command line.

Zmaster -d3d d3plot

Either the Zmaster Mesh, Plot, or Results buttons can be used.

Zpost interface#

Probably more interesting than running in Zmaster for commercial users is the ability to do post processing or results file translations. The following is an example for extracting time displacement data at a node in a batch task (execute with Zrun -pp):

****post_processing
   ***data_source d3plot
    **open d3plot

   ***global_post_processing
    **file node
    **output_number 1-999
    **nset ALL_NODE
    **process curve control_energy.bar-impact.test
     *precision 3
     *node   1333  U3

****return