In ALE, the stress update is performed using the incremental strain (strain rate*dt) and incremental spin like in the regular Lagrangian step.
In the regular Lagrangian step, the hyperelastic materials that use the Green-Lagrange strain integrate the deformation gradient F=dx/dX from the strain and spin rates, then calculate the Green-Lagrange strain as 1/2*(F^T*F-I). The integration of the deformation gradient is performed by subroutine integf.
The same approach can be used in ALE for hyperelastic materials provided that the deformation gradient is also transported as a history variable.
If the user wants the total engineering strain associated with ALE materials, then integf can be used to calculate F. The displacement gradient is du/dX=F-I. If you want the du/dx (current coordinates), the du/dx=du/dX*F^{-1}. The engineering strain, using either definition, would be 1/2*(du/dX+[du/dX]^T). Note that F would have to be transported even if it is just an output variable.
db
10/21/16
--------------------------------------
ALE never calculates, and is in fact incapable of calculating, total strain.
Like LAG, ALE uses the incremental strain to calculate an incremental stress, and that incremental stress is added to the old stress.
(We're talking only about incremental material models. Total formulations that utilize the deformation gradient
for calculating stress are not applicable to ALE.)
In ALE, as an example, let's say there is a mixed cell with 2 materials:
stress mat 1 = old stress mat 1 + stress increment in mat 1 as calculated from strain increment and constit law of mat 1.
stress mat 2 = old stress mat 2 + stress increment in mat 2 as calculated from strain increment and constit law of mat 2.
The strain increment above is the same for mat 1 as for mat 2.
>
stress in cell = (stress mat 1)*VF1 + (stress mat 2)*VF2
** VF = volume fraction
10/20/16
___________________________________________________________________
A draft of guidelines for ALE modeling in LS-DYNA is
http://ftp.lstc.com/anonymous/outgoing/support/FAQ_docs/jim_ALE_for_MGD_18oct2010.pdf
(also Section 4 of the AWG Modeling Guidelines Document, available under "Resources" at http://awg.lstc.com)
Ian Do's extensive ALE tutorial is
ftp://ftp.lstc.com/outgoing/ian/aletutorial.tar.gz (91 Mbyte)
If you just want a pdf of the tutorial, it's here...
http://ftp.lstc.com/anonymous/outgoing/support/FAQ_docs/aletutorial-278p.pdf .
ftp://ftp.lstc.com/outgoing/support/FAQ_docs/ale_overview_short2.pdf gives a brief introduction
to ALE although it lacks the animations (avi files) included with the original powerpoint file.
Yet another introduction is given in Lars Olovsson's class notes
ftp://ftp.lstc.com/outgoing/support/FAQ_docs/ALE_training_by_Lars.Sept06.pdf
(Sept 2006)
See http://www.dynaexamples.com/ale
_________________________________________________________________
Do not subject ALE parts to dynamic relaxation.
Options:
- Use normal transient analysis to ramp up the load.
If some cases, use of *INITIAL_HYDROSTATIC_ALE may be sufficient to initialize
the domain due to gravity.
- If only non-ALE part need preloading, you can eliminate the ALE parts from
consideration in an IMPLICIT dynamic relaxation phase by setting
IDRFLG=6 and specifying a part set for DRPSET in *control_dynamic_relaxation.
__________________________________________________________________
ALE is not vectorized for SMP.
You will get no benefit using multiple CPUs and SMP.
When using MPP, it is often recommended that the following command be
included in the input deck...
*CONTROL_MPP_DECOMPOSITION_DISTRIBUTE_ALE_ELEMENTS
(Command in partition file(pfile): ALEDIST)
.. but in an immersed body problem, (structure inside ALE doamin),
you don't need that option. Other problems like bird strike, tire
hydroplaning, this MPP option is vital.
(paraphrased from jw, 5/14/13)
___________________________________________________________________
The explicit ALE method in LS-DYNA is applicable to
laminar flow, either viscous or nonviscous.
It is not for turbulent flow. For that, you'd need to use the implicit CFD method
in LS-DYNA, which at this time does not include fluid/structure interaction.
Eulerian fluids such as air or water are generally modeled using *MAT_NULL and an
accompanying equation-of-state (*EOS_...).
For a case where there is only one Eulerian material,
One approach would be to use solid element formulation 12 (single
material with void) to model the Eulerian material and any empty cells around the
Eulerian material into which that material may ultimately be transported[1].
The empty cells (which typically overlay your Lagrangian parts)
are identified using *initial_void.
All the Eulerian parts (filled or void) should be given material/EOS
properties of the Eulerian material.
A second approach (preferred unless doing a coupled thermal/mechanical analysis
which includes ALE) would be to use
element formulation 11 (see next paragraph) and assign *mat_vacuum to the
void (empty) cells.
In either case, use hexahedron (brick) elements for the Euler/ALE mesh and hourglass type 1.
A reduced hourglass coefficient, e.g., .001, is recommended if the Eulerian
material is a fluid. (Note: Per Hao, in v. 971/7633, the default hourglass type and coefficient
are set to 1 and 1E-6, respectively, for ALE multi-material elements.)
For cases where there are multiple Eulerian materials, use solid
formulation 11 (multi-material). For this, each Eulerian material
must be assigned to a group using *ale_multi-material_group.
Each part within a specific group has identical material properties.
Eulerian meshing can be done using one of the following two approaches:
1. The initial mesh conforms to the material. In other words,
there are no mixed (or partially filled)
cells in the initial configuration.
Mesh lines follow the outer contour of each Eulerian part.
2. A simple orthogonal mesh may be constructed with no restriction
that mesh lines follow the outer contour of each
Eulerian part. The volume fraction of initially mixed
cells must be prescribed via *initial_volume_fraction.
There is a GEOMETRY option to *initial_volume_fraction
that automates the assignment of initial volume fractions to cells.
When the GEOMETRY option is used, a file alevfrc.inc is created which can be
included in subsequent runs (having the same mesh) in lieu of *initial_volume_fraction
thereby saving significant memory and CPU for the initialization.
In either approach, there is no requirement that the Lagrangian
nodes align with the Eulerian nodes. In
your coupling definition (*constrained_lagrange_in_solid),
you may have to increase NQUAD if the
structural mesh is coarser than the Eulerian mesh (in order
to prevent 'leakage' in the coupling). Your
Lagrangian segment normals must point toward the Eulerian
fluid (note you can reverse the normals
using NORM). If you are coupling Lagrangian solids to
the Eulerian fluid, CTYPE should be set to 5 if erosion of
the Lagrangian part occurs, otherwise set CTYPE to 4.
Set MCOUP to 1 in cases where one of
the Eulerian materials dominates the loads imparted to the
Lagrangian structure, i.e. it's density is much higher than the
other Eulerian materials.
Typically DIREC should be set to 2 when a penalty-based coupling
is used.
A text file of tips for troubleshooting of coupling can be provided on request.
As an alternative to coupling (*constrained_lagrange_in_solid),
you can, in some cases, merge (share) nodes at the interface between
a Lagrangian part and an ALE part. The shared nodes will move as
Lagrangian nodes. The interior of the ALE mesh must then be smoothed
using one or a combination of smoothing algorithms (see *control_ale) and,
if the situation warrants, *ale_smoothing constraints.
If you have a recent LS-PREPOST executable, you can view the Euler/ALE materials
in a convenient manner by selecting Selpar > Fluid.
The fluid part will be created and the Euler grid part appearance will be changed
to an 'edge' view. The fluid part can be fringed in Fcomp.
You can also view the Euler/ALE materials using Fcomp > misc
> history var#.
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.
It's sometimes clearer to view isosurfaces of Eulerian history variables
rather than fringes (click on the Frin button and choose Isos).
Notes:
1. The command *ale_reference_system(_option) can be utilized in some
situations to reduce the spatial extent of the initial Eulerian mesh.
This command directs the Eulerian mesh to move through space in a prescribed
manner rather than remaining fixed in space.
2. Air/structure interaction (non-HE applications):
You may not need an ALE/Euler formulation to model air in such a case. Try modeling the
air with regular Lagrangian elements (ELFORM 1) and merge the solid air elements to the
structure. *MAT_NULL with *EOS is probably a better bet for air than *MAT_ACOUSTIC.
For air to be modeled with ALE/Euler elements, the motion of the structure
needs to be significant relative to the ALE elm size modeling the air - i.e. it has to push into
the air a good distance to generate the pulse.
Note regarding applicability:
Does not consider flow turbulence or boundary layer (viscous) effects.