ALE history variables
For Euler/ALE materials:
history variable
1 = density
2 = volume fraction of 1st multi-material group (formulation 11) or single Eulerian material (formulation 12)
3 = volume fraction of 2nd multi-material group (formulation 11)etc.
If n is the number of multi-material groups, then history variable #(n+2) is a component that identifies the various multi-material groups by assigning a value of 1.0 to those cells comprised predominantly of multi-material group 1, 2.0 to those cells comprised predominantly of multi-material group 2, and so on.
If STRFLG
is set to 1 (strains saved), the first six extra history variables for the Euler/ALE solid elements are strains. Thus in that case, density will be the 6+1=7th history variable.
For Lagrangian materials; the number of and meaning of extra history variables are dependent on the material model and element type. Unfortunately, there is no comprehensive documentation on this subject. There is mention of extra history variables in the User's Manual for a few material models, e.g., MAT_22
. For other materials, the only means of rooting out the meaning of the extra history variables is through painstaking examination of the source code. In some cases, the extra history variables may be of some interest to the user but more often not.
If STRFLG
is set to 1 (strains saved), the last six extra history variables for Lagrangian solid elements are strains.
If you have a recent LS-PREPOST executable, you can view the Euler/ALE materials in a convenient manner by selecting Selpar > Fluid.
Extra history variables, when written to the d3plot database, (see NEIPH
and NEIPS
in *DATABASE_EXTENT_BINARY
) may be fringed using LS-POST by selecting Fcomp > Misc > history var#n. A time history plot of the extra history variable may then be created by selecting History > Scalar.
Extra history variables can be employed to great benefit in the case of a user-defined material routine. Clearly in that situation, the user knows what the extra history variables are. In pre-970 versions of LS-DYNA, the 1st history variable in the umat subroutine won't be stored as history var#1 in the d3plot database. The storage location is dependent on a number of factors such as whether the subroutine is vectorized or nonvectorized, whethere the elements are shells or solids, etc.
More on this subject comes from Lee Bindeman:
"When using a vectorized subroutine (i.e. umat46v instead of umat46) and a 3D user defined material (for 3D solid elements), there are 6 history variables automatically used for 6 terms of the transformation matrix, whether or not the user defined material is orthotropic. When the material is orthotropic (IORTHO=1
), these 6 variables are automatically allocated, however, when the material is not orthotropic (IORTHO=0
), the variables are not and it is essential that these be allocated by the user defined material input. Therefore, if your material uses 46 history variables, you need to set NHV=52
. In order to write your 46 history variables to the d3plot files, you need to request 52 extra history variables by setting NEIPH=52
on *DATABASE_EXTENT_BINARY
.
When post processing, history variables 1 to 6 will contain the transformation matrix terms. If the material is isotropic, these will all be zero. History variables 7 to 52 will contain history variables 1 to 46 in your subroutine.
The above rules change for 2D materials (for shell elements). In that case, there are only 2 transformation terms stored so only 2 extra history variables need to be allocated and requested.
Perhaps some good news is that I made a fix to eliminate much of this confusion. The fix is in version 970 revisions 2903 and later.
With this fix, it is no longer be necessary to allocate extra history variables with NHV
, or to request 6 (or 2) extra history variables in the d3plot file. You simply need to allocate the same number of history variables that you want to use, and to request the number that you want written to the d3plot file. If the material is isotropic (IORTHO=0
), then the transformation terms will be omitted and then the history variable numbers in the user subroutine will match those in the d3plot file. However, if the material is orthotropic (IORTHO=1
), then the 6 (or 2) transformation terms will be written to the d3plot file so there will be a mismatch in the numbering of history variables in the user subroutine and the d3plot file."
jpd last revised 3/4/2003 4/4/2003 6/4/2003 updated effect of STRFLG=1