Total energy reported in GLSTAT (see
*DATABASE_GLSTAT ) is the sum of
- internal energy
- kinetic energy
- contact (sliding) energy
- hourglass energy
- system damping energy
- rigidwall energy
Spring and damper energy reported in the glstat file is the sum of internal energy of discrete elements, seatbelt elements, and energy associated with joint stiffnesses (
*CONSTRAINED_JOINT_STIFFNESS....). Internal Energy includes Spring and damper energy as well as internal energy of all other element types. Thus Spring and damper energy is a subset of Internal energy.
The joint internal energy written to glstat by SMP 5434a is independent of the
*CONSTRAINED_JOINT_STIFFNESS. It would appear to be associated with the penalty stiffness of
*CONSTRAINED_JOINT_REVOLUTE (_spherical, etc). This was a missing energy term prior to SMP rev. 5434a.
The energy associated with
*CONSTRAINED_JOINT_STIFFNESS appears in the jntforc file and is included in glstat in spring and damper energy and internal energy. Recall that spring and damper energy, whether from joint stiffness or from discrete elements, is always included in internal energy.
Energy values are written on a part-by-part basis in
Hourglass energy is computed and written only if
HGEN is set to 2 in
*CONTROL_ENERGY. Likewise, rigidwall energy and system damping energy are computed and written only if
RYLEN, respectively, are set to 2.
Stiffness damping energy is lumped into internal energy. Mass damping energy appears as a separate line item system damping energy.
Energy dissipated due to shell bulk viscosity was not calculated prior to revision 4748 of v. 970. It is subsequently an option to include this energy in the energy balance.
The energy balance is perfect if
total energy = initial total energy + external work, or in other words if the energy ratio (referred to in
total energy / initial energy although it actually is
total energy / (initial energy + external work)) is equal to 1.0.
The History > Global energies do not include the contributions of eroded elements whereas the
GLSTAT energies do include those contributions. Note that these eroded contributions can be plotted as Eroded Kinetic Energy and Eroded Internal Energy via ASCII >
Eroded energy is the energy associated with deleted elements (internal energy) and deleted nodes (kinetic energy). Typically, the energy ratio w/o eroded energy would be equal to 1 if no elements have been deleted or less than one if elements have been deleted. The deleted elements should have no bearing on the total energy / initial energy ratio. Overall energy ratio growth would be attributable to some other event, e.g., added mass.
An example is attached. Note that if ENMASS in
*CONTROL_CONTACT is set to 2, the nodes associated with the deleted elements are not deleted and the eroded kinetic energy is zero.
The total energy via History > Global is simply the sum of KE and internal energies and thus doesn't include such contributions as contact energy or hourglass energy.
Negative internal energy in shells:
To combat this spurious effect, - turn off shell thinning (ISTUPD) - invoke bulk viscosity for shells (set
TYPE = -2 in
*CONTROL_BULK_VISCOSITY ) - use
*DAMPING_PART_STIFFNESS for parts exhibiting neg. IE in matsum Try a small value first, e.g., .01. If
*CONROL_ENERGY, then the energy due to stiffness damping is calculated and included in internal energy. (See negative_internal_energy_in_shells for a case study)
Positive contact energy:
When friction is included in a contact definition, positive contact is to be expected. Friction SHOULD result in positive contact energy. In the absence of friction, you would hope to see a small net contact energy (
net = sum of slave side energy and master side energy). Small is a matter of judgement -- 10% of peak internal energy might be considered acceptable for contact energy in the absence of contact friction.
Negative contact energy:
Abrupt increases in negative contact energy may be caused by undetected initial penetrations. Care in defining the initial geometry so that shell offsets are properly taken into account is usually the most effective step to reducing negative contact energy. Refer to sections 23.8.3 and 23.8.4 in the LS-DYNA Theory Manual (May 1998) for more information on contact energy.
Negative contact energy sometimes is generated when parts slide relative to each other. This has nothing to do with friction. I'm speaking of negative energy from normal contact forces and normal penetrations. When a penetrated node slides from its original master segment to an adjacent though unconnected master segment and a penetration is immediately detected, negative contact energy is the result.
If internal energy mirrors negative contact energy, i.e., the slope of internal energy curve in glstat is equal and opposite that of the negative contact energy curve, it;s possible that the problem is very localized with low impact on the overall validity of the solution. You may be able to isolate the local problem area(s) by fringing internal energy of your shell parts (Fcomp > Misc > internal energy in LS-POST). Hot spots in internal energy usually indicate where negative contact energy is focused.
If you have more than one contact defined, the sleout file (
*DATABASE_SLEOUT) will report contact energies for each contact and so the focus of the negative contact energy investigation can be narrowed.
Some general suggestions for combating negative contact energy are as follows:
- Eliminate initial penetrations (look for Warning in messag file).
- Check for and eliminate redundant contact conditions. You should NOT have more than one contact definition treating contact between the same two parts or surfaces.
- Reduce the time step scale factor.
- Set contact controls back to default except set
IGNORE=1(Optional Card C).
- For contact of sharp-edged surfaces, set
SOFT=2(applicable for segment-to-segment contact only). Furthermore, in v. 970, setting
SBOPT(formerly EDGE) to 4 is recommended for
SOFT=2contact where relative sliding between parts occurs. For improved edge-to-edge
SOFT=2contact behavior, set
DEPTH to 5. Please note that
SOFT=2contact carries some additional expense, particularly using nondefault values of
DEPTH, and so should be used only where other contact options (
SOFT=1) are inadequate.
The specifics of your model may dictate that some other approach be used.