In a traditional Lagrangian analysis nodes are fixed within the material, and elements deform
as the material deforms. Lagrangian elements are always 100% full of a single material, so the
material boundary coincides with an element boundary.
By contrast, in an Eulerian analysis nodes are fixed in space, and material flows through
elements that do not deform. Eulerian elements may not always be 100% full of material—many
may be partially or completely void. The Eulerian material boundary must, therefore, be
computed during each time increment and generally does not correspond to an element boundary.
The Eulerian mesh is typically a simple rectangular grid of elements constructed to extend
well beyond the Eulerian material boundaries, giving the material space in which to move and
deform. If any Eulerian material moves outside the Eulerian mesh, it is lost from the
simulation.
Eulerian material can interact with Lagrangian elements through Eulerian-Lagrangian contact;
simulations that include this type of contact are often referred to as coupled
Eulerian-Lagrangian (CEL) analyses. This powerful,
easy-to-use feature of Abaqus/Explicit general contact enables fully coupled multi-physics simulation such as fluid-structure
interaction.
Eulerian analyses are effective for applications involving extreme deformation, up to and
including fluid flow. In these applications, traditional Lagrangian elements become highly
distorted and lose accuracy. Liquid sloshing, gas flow, and penetration problems can all be
handled effectively using Eulerian analysis. Eulerian-Lagrangian contact allows the Eulerian
materials to be combined with traditional nonlinear Lagrangian analyses.
An example of using Eulerian analysis for a severe deformation analysis is discussed in
Rivet forming; using coupled
Eulerian-Lagrangian contact for a fluid-structure interaction application is illustrated in
Impact of a water-filled bottle.
Eulerian Volume Fraction
The Eulerian implementation in Abaqus/Explicit is based on the volume-of-fluid method. In this method, material is tracked as it flows
through the mesh by computing its Eulerian volume fraction
(EVF) within each element. By definition, if a material
completely fills an element, its volume fraction is one; if no material is present in an
element, its volume fraction is zero.
Eulerian elements may simultaneously contain more than one material. If the sum of all
material volume fractions in an element is less than one, the remainder of the element is
automatically filled with “void” material. Void material has neither mass nor strength.
Material Interfaces
Volume fraction data are computed for each Eulerian material in an element. Within each
time increment, the boundaries of each Eulerian material are reconstructed using these data.
The interface reconstruction algorithm approximates the material boundaries within an
element as simple planar facets (the Eulerian method is implemented only for
three-dimensional elements). This assumption produces a simple, approximate material surface
that may be discontinuous between neighboring elements. Therefore, accurate determination of
a material's location within an element is possible only for simple geometries, and fine
grid resolution is required in most Eulerian analyses.
The discontinuities in an Eulerian material surface can lead to physically unrealistic
configurations when visualizing the results of an Eulerian analysis. Abaqus/CAE can apply a nodal averaging algorithm to estimate a more realistic, continuous surface
during visualization. For more information on visualizing the material interfaces in an
Eulerian model, see Viewing output from Eulerian analyses.
Eulerian Section Definition
An Eulerian section definition lists all of the materials that may appear within an
Eulerian element. Void material is automatically included in this list.
The material list supports an optional material instance name. Material instance names are
required to uniquely identify materials that you use more than once. Repeated materials are
useful, for example, in mixing simulations where the motion of a material interface is to be
computed: the water in a tank could be divided by creating water material instances named
“water_left” and “water_right,” and the evolution of the interface between these materials
could be simulated.
By default, all Eulerian elements are initially filled with void material, regardless of
the section assignment. You must introduce nonvoid material into your Eulerian mesh using an
initial condition (see Initial Conditions below).
Eulerian Mesh Deformation
The Eulerian time incrementation algorithm is based on an operator split of the governing
equations, resulting in a traditional Lagrangian phase followed by an Eulerian, or
transport, phase. This formulation is known as “Lagrange-plus-remap.” During the Lagrangian
phase of the time increment nodes are assumed to be temporarily fixed within the material,
and elements deform with the material. During the Eulerian phase of the time increment
deformation is suspended, elements with significant deformation are automatically remeshed,
and the corresponding material flow between neighboring elements is computed.
At the end of the Lagrangian phase of each time increment, a tolerance is used to determine
which elements are significantly deformed. This test improves performance by allowing those
elements with little or no deformation to remain inactive during the Eulerian phase. The
inactive elements typically have no impact on the visualization of an Eulerian analysis;
however, plotting an Eulerian mesh using a very large deformation scale factor may reveal
slight deformations for elements within the deformation tolerance.
Eulerian Material Advection
As material flows through an Eulerian mesh, state variables are transferred between
elements by advection. The variables are assumed to be linear or constant in each old
element, then these values are integrated over the new elements after remeshing. The new
value of the variable is found by dividing the value of each integral by the material volume
or mass in the new element.
Second-Order Advection
Second-order advection assumes a linear distribution of the variable in each old element.
To construct the linear distribution, a quadratic interpolation is constructed from the
constant values at the integration points of the middle element and its adjacent elements.
A trial linear distribution is found by differentiating the quadratic function to find the
slope at the integration point of the middle element. The trial linear distribution in the
middle element is limited by reducing its slope until its minimum and maximum values are
within the range of the original constant values in the adjacent elements. This process is
referred to as flux limiting and is essential to ensure that the advection is monotonic.
Second-order advection is used by default, and it is recommended for all problems,
ranging from quasi-static to transient dynamic shock.
The second-order advection method is used by default in Abaqus/CAE.
First-Order Advection
First-order advection assumes a constant value of the variable in each old element. This
method is simple and computationally efficient; however, it tends to diffuse sharp
gradients over time. Therefore, this technique should be used only as a computationally
efficient alternative for quasi-static simulations.
The first-order advection method cannot be specified in Abaqus/CAE.
Reducing the Stable Time Increment Based on the Advection Speed
The stable time increment size is adjusted automatically to prevent material from flowing
across more than one element in each increment. When the material velocity approaches the
speed of sound (for example, in simulations involving blast and shocks), further
restrictions on the time increment size may be needed to maintain accuracy and stability.
You can specify a flux limit ratio to restrict the stable time increment size such that
material can flow across only a fraction of an element in each increment. The default flux
limit ratio is 1.0, and recommended values range from 0.1 to 1.0.
The flux limit ratio cannot be modified in Abaqus/CAE.
Initial Conditions
You can apply initial conditions to Eulerian nodes and elements in the same way that they
are used for Lagrangian nodes and elements. Initial stress, temperature, and velocity are
common examples. In addition, most Eulerian analyses require the initialization of Eulerian
material.
By default, all Eulerian elements are initially void. You can use initial conditions to
fill Eulerian elements with one or more of the materials listed in the Eulerian section
definition. By selectively filling elements, you can create the initial shape of each
Eulerian material.
To fill an Eulerian element, you must define an initial volume fraction for each available
material instance. Material is filled until a volume fraction of 1.0 is reached; any excess
material is ignored. The initial conditions apply only at the beginning of an analysis;
during the analysis the materials deform according to the applied loads, and the volume
fractions are recalculated accordingly.
Load module: Create Predefined Field: Step: Initial: choose Other for the Category and Material Assignment for the Types for Selected Step
Boundary Conditions
By default, Eulerian material can flow freely into and out of the Eulerian domain through
mesh boundaries. You can constrain degrees of freedom at Eulerian nodes to restrict material
flow. For example, you can define typical fluid “stick” or “sliding” walls using constraints
normal and/or tangential to the boundary. Since Eulerian nodes are automatically
repositioned during the Eulerian transport phase, you cannot apply prescribed displacement
boundary conditions to them.
You can use prescribed velocity or acceleration conditions on Eulerian nodes to control
material flow. Prescribed velocity or acceleration is implemented in an Eulerian frame, so
material velocity will reach the prescribed value as the material passes the Eulerian node.
If velocity is directed outward at an Eulerian mesh boundary, either by prescribed condition
or naturally as a result of dynamic equilibrium, material may flow out of the Eulerian
domain. This material is lost from the simulation, and corresponding decreases in total mass
and energy will occur.
Similarly, if velocity is directed inward at a boundary, inflow of material into the
Eulerian domain will occur. When materials flow into an element through a boundary face, the
material content and the state of each inflowing material are equal to that which presently
exists within the element. For example, if a boundary element contains 60% hot water and 40%
cold air and the interface normal is parallel to the boundary face, inflow velocity will
introduce a mixture of 60% hot water and 40% cold air. In this case corresponding increases
in total mass and energy will occur.
You can also define inflow and outflow conditions at an Eulerian domain boundary, as
described in Defining Eulerian Boundaries.
Loads
You can apply loads to Eulerian nodes, elements, and faces in the same way as to their
Lagrangian counterparts. Eulerian loads act in an Eulerian frame: they affect Eulerian
material as it passes the point of load application.
Material Options
You can define material properties for Eulerian analysis in the same way as for Lagrangian
analysis. Liquids and gases can be modeled using equation of state materials (see Equation of State). Brittle cracking
is not supported because the number of cracks is not a continuous quantity and cannot be
easily remapped. Hyperelastic materials can be used in an Eulerian analysis, but due to
inaccuracies introduced to the deformation gradient during material transport, these
materials might not fully recover their original configuration after loads are removed; the
same inaccuracies also affect user-defined materials. The low-density foam material model
(Low-Density Foams) is not supported.
Eulerian analysis allows materials to undergo extreme strain without the mesh distortion
limitations of Lagrangian analysis. Therefore, it is especially important to define your
material behavior through the entire strain range, which often requires definition of a
failure behavior.
Isotropic material failure is supported using a damage variable to characterize the failure
level. Element deletion is suppressed for Eulerian sections because undamaged material may
flow into “failed” elements. Shear failure models are not supported.
Rayleigh mass proportional damping is not supported.
Elements
The Eulerian method is implemented in the multi-material element type
EC3D8R and the multi-material thermally
coupled element type EC3D8RT. The underlying
mechanical response formulation of these elements is based on the Lagrangian
C3D8R element with extensions to allow
multiple materials and to support the Eulerian transport phase. The formulation applies the
same strain to each material in the element, then allows the stress and other state data to
evolve independently within each material. These stresses are combined using volume fraction
data to create element averaged values, which are integrated to obtain nodal forces.
Similarly, the thermal response formulation for the thermally coupled element is based on
the Lagrangian element C3D8RT with the
extension to allow multiple materials with different thermal properties and to support
temperature advection. All the materials have the same temperature, and the thermal
properties (such as thermal conductivity and thermal capacitance) are volume averaged before
being used in solving one single heat transfer equation for the multi-material model.
Element averaged values of other state data are computed similarly for output purposes.
The Eulerian EC3D8R and
EC3D8RT elements require eight nodes.
Degenerate elements are not supported. The Eulerian method is not implemented for
two-dimensional elements. Axisymmetry can be simulated using a wedge-shaped mesh and
symmetry boundary conditions.
By default, the Eulerian elements use viscous hourglass control. Hourglass control is
disabled by default for incompressible liquids modeled using equation of state material
types. These choices can be modified using section controls (see Section Controls).
Eulerian material instances interact with each other with a sticky behavior. This sticking
occurs because of the kinematic assumption that a single strain field is applied to all
materials within an element. Tensile stress can be transmitted across an interface between
two Eulerian materials, and no slip occurs at these interfaces. This Eulerian-to-Eulerian
contact behavior can be reasonable in some situations, such as in a simulation of a lead
bullet penetrating a steel plate. Ablation of the bullet surface against the steel is
captured by the sticky behavior within the Eulerian elements at the bullet-steel interface.
Relative motion along this interface will occur only due to shearing of the lead material.
Eulerian-to-Eulerian contact occurs by default in an Eulerian analysis; you do not need to
define contact interactions between Eulerian materials.
More complex contact interactions can be simulated when one of the contacting bodies is
modeled using Lagrangian elements. This powerful capability supports applications such as
fluid-structure interaction, where an Eulerian fluid contacts a Lagrangian structure.
The implementation of Eulerian-Lagrangian contact is an extension of general contact in Abaqus/Explicit. The general contact property models and defaults apply to Eulerian-Lagrangian contact
(see About Mechanical Contact Properties). For example, by
default, tensile stresses are not transmitted across an Eulerian-Lagrangian contact
interface, and the interface friction coefficient is zero. Specifying automatic contact for
an entire Eulerian-Lagrangian model allows for interactions between all Lagrangian
structures and all Eulerian materials in the model. You can also use Eulerian surfaces (see
Eulerian Surface Definition) to create
material-specific interactions or to exclude contact between particular Lagrangian surfaces
and Eulerian materials.
Input File Usage
Use both of the following options to define contact between all Lagrangian bodies and
all Eulerian materials:
Use the following option to define contact between all Lagrangian bodies and all
Eulerian materials:
Interaction module: Create Interaction: General contact (Explicit): Included surface pairs: All* with self
Use the following options to include contact between particular Lagrangian surfaces
and Eulerian materials:
Interaction module: Create Interaction: General contact (Explicit):
Included surface pairs: Selected surface pairs: Edit, select the
Lagrangian surface in the left column and the Eulerian material instance in the right column, then click the arrows to transfer them to the list of included pairs
Use the following options to exclude contact between particular Lagrangian surfaces
and Eulerian materials:
Interaction module: Create Interaction: General contact (Explicit):
Excluded surface pairs: Edit, select the Lagrangian surface in the left column and the Eulerian material instance in the right column, then click the arrows to transfer them to the list of excluded pairs
Formulation of Eulerian-Lagrangian Contact
The Eulerian-Lagrangian contact formulation is based on an enhanced immersed boundary
method. In this method the Lagrangian structure occupies void regions inside the Eulerian
mesh. The contact algorithm automatically computes and tracks the interface between the
Lagrangian structure and the Eulerian materials. A great benefit of this method is that
there is no need to generate a conforming mesh for the Eulerian domain. In fact, a simple
regular grid of Eulerian elements often yields the best accuracy.
If the Lagrangian body is initially positioned inside the Eulerian mesh, you must make
sure that the underlying Eulerian elements contain void after material initialization.
During the analysis the Lagrangian body pushes material out of the Eulerian elements that
it passes through, and they become filled with void. Similarly, Eulerian material flowing
toward the Lagrangian body is prevented from entering the underlying Eulerian elements.
This formulation ensures that two materials never occupy the same physical space.
If the Lagrangian body is initially positioned outside the Eulerian mesh, at least one
layer of void Eulerian elements must be present at the Eulerian mesh boundary. This
creates a free surface on the Eulerian material inside the Eulerian mesh boundary and
provides a source for void material to replace Eulerian material that is driven out of
interior elements. Several layers of void elements are typically used above free surfaces
to allow simulation of crater formation and backsplashing before this material leaves the
Eulerian domain.
Eulerian-Lagrangian contact also supports failure and erosion in the Lagrangian body.
Lagrangian element failure can open holes in a surface through which Eulerian material may
flow. When modeling erosion of a solid Lagrangian body, the interior faces of the solid
body must be included in the contact surface definition (see Modeling Surface Erosion).
Eulerian-Lagrangian contact constraints are enforced using a penalty method, where the
default penalty stiffness parameter is automatically maximized subject to stability
limits.
The default contact formulation is effective for modeling solid materials but may exhibit
leakage when modeling liquids or gases. An enhanced Eulerian-Lagrangian contact
formulation is available to prevent the leakage of liquids or gases through the Lagrangian
surface. It is more computationally expensive and should be activated only when required.
Eulerian-Lagrangian contact supports thermal interactions when using coupled
temperature-displacement Eulerian element
EC3D8RT in a dynamic coupled thermal-stress
analysis. However, gap radiation and gap conductance as a function of clearance are not
supported.
Output
The set of element output variables EVF
gives the Eulerian volume fraction for each material in the Eulerian section definition,
including void. It is important to request output for
EVF in all Eulerian analyses because
visualization of Eulerian material boundaries is based on the material volume fractions.
Material-specific Eulerian field output variables are distinguished by appending material
names to the base field name. For example, if you request output variable
S (stress components) in an Eulerian
analysis involving material instances named “steel” and “tin,” you will see results for
individual material stresses named “S_steel” and “S_tin.”
Several volume fraction averaged field data are also available for output. For example,
output variable SVAVG gives a single value
of stress for each element computed as a volume fraction average of stress over all
materials present in the element. Use of these volume fraction averaged output data has the
advantage of substantially reducing the size of the output database for the case where
several materials are defined in the Eulerian section. See Abaqus/Explicit Output Variable Identifiers for a complete
list of Eulerian-specific output variables.
Output variables EVF and
SVAVG are included in the
PRESELECT variable list when Eulerian
elements appear in the model.
You can also request integrated volume
(VOLEUL) and integrated mass
(MASSEUL) over a particular Eulerian
element set. These output variables are material specific and are distinguished by having
the material names appended to the variable name.
Limitations
Eulerian analyses are subject to the following limitations:
Boundary conditions: You cannot apply prescribed nonzero displacement boundary
conditions to Eulerian nodes.
Lagrangian attachments: You cannot attach Lagrangian elements to Eulerian nodes. Use
tied contact interfaces instead.
Constraints: You cannot apply Lagrangian constraints
(MPCs, etc.) to Eulerian nodes. Use tied contact
interfaces instead.
Materials: Brittle cracking and shear failure models are also not supported. Rayleigh
mass proportional damping is not supported.
Elements: The Eulerian formulation is implemented only for
EC3D8R and
EC3D8RT elements.
Element import: Eulerian elements are not available for import.
Double-sided contact: Penetration of Eulerian material through the contact interface
can occur in some cases involving Eulerian material contacting Lagrangian shell or
membrane elements. This type of contact introduces complexity because the sign of the
outward normal direction must be determined on the fly as material approaches the
Lagrangian element; contact with either side of the element is potentially allowable.
You should simplify the contact problem wherever possible by using Lagrangian solid
elements instead of shell or membrane elements, since the outward normal direction at
solid element faces is unique. For example, if a model involves Eulerian material
flowing around a rigid Lagrangian obstacle, mesh the obstacle with solid elements rather
than shell elements and activate the enhanced contact formulation to reduce the leakage.
Contact penetration: In some cases Eulerian material may penetrate through the
Lagrangian contact surface near corners. This penetration should be limited to an area
equal to the local Eulerian element size. Penetration can be minimized by refining the
Eulerian mesh (manually or through adaptive mesh refinement) or by adding a fillet to
the Lagrangian mesh with radius equal to the local Eulerian element size. Alternatively,
you can activate the enhanced contact formulation to reduce or eliminate the leakage.
When the enhanced contact formulation through adaptive mesh refinement is activated,
you should simplify the Lagrangian contact surface wherever possible by avoiding
double-sided, folded, and T-section surfaces. If more than one surface cuts through a
single Eulerian element, the enhanced contact formulation is turned off, and the default
formulation is used. For thin structures modeled with solid elements, refining the
Eulerian element size to avoid this behavior is recommended.
Contact types: Eulerian-Lagrangian contact does not support Lagrangian beam elements,
Lagrangian pipe elements, Lagrangian truss elements, or analytical rigid surfaces.
Contact import: Import of the Eulerian-Lagrangian contact states is not supported.
Thermal contact: Gap radiation and gap conductance as a function of clearance are not
supported.
Contact output: Contact variables are output only for the Lagrangian side of
Eulerian-Lagrangian interfaces.
Surface loads: You cannot use the Eulerian material surface type for general surface
loading. However, distributed loads such as pressure can be applied to surfaces defined
on Eulerian element faces.
Mass scaling: You cannot apply mass scaling to Eulerian elements.
Heat transfer: Use coupled temperature-displacement
EC3D8RT Eulerian elements to model a fully
coupled thermal-stress analysis. Adiabatic conditions are assumed in Eulerian materials
when EC3D8R elements are used.
Output: Total strain (LE) is not
available for Eulerian elements in field or history output, but it can be accessed via
the utility routine VGETVRM.
Subcycling: You cannot include Eulerian elements in subcycling zones.
Input File Template
The following example illustrates a coupled Eulerian-Lagrangian analysis of a Lagrangian
boat floating on Eulerian water. A conforming mesh is assumed, so Eulerian material
initialization is achieved by whole element filling. Material-specific interactions between
the Lagrangian body and the Eulerian materials are implemented: a contact interaction is
defined between the boat and water, but contact between the boat and air is ignored. Output
is requested for Eulerian volume fractions, Eulerian element-averaged stress, and material
stress.
HEADING
…
ELEMENT, TYPE=C3D8R, ELSET=BOAT_ELSET
element definitions for Lagrangian boatELEMENT, TYPE=EC3D8R, ELSET=ALL_EULERIAN
element definitions for whole Eulerian meshELSET, NAME=AIR_ELSET
data lines giving Eulerian elements that are initially filled with airELSET, NAME=WATER_ELSET
data lines giving Eulerian elements that are initially filled with water
**
MATERIAL, NAME=AIR
material definition for airMATERIAL, NAME=WATER
material definition for water
**
EULERIAN SECTION, ELSET=ALL_EULERIAN
AIR
WATER
**
INITIAL CONDITIONS, TYPE=VOLUME FRACTION
AIR_ELSET, AIR, 1.0
WATER_ELSET, WATER, 1.0
INITIAL CONDITIONS, TYPE=STRESS, GEOSTATICdata lines to define water pressure due to gravity
**
SURFACE, NAME=WATER_SURFACE, TYPE=EULERIAN MATERIAL
WATER
SURFACE, NAME=BOAT_SURFACE
BOAT_ELSET
**
STEPDYNAMIC, EXPLICITDLOADdata lines to define gravity load
**
CONTACTCONTACT INCLUSIONS
BOAT_SURFACE, WATER_SURFACE
**
OUTPUT, FIELDELEMENT OUTPUT
EVF, SVAVG, PEEQVAVG
END STEP
References
Benson, D.J., “Computational
Methods in Lagrangian and Eulerian Hydrocodes,” Computer Methods in Applied Mechanics and
Engineering, vol. 99, pp. 235–394, 1992.
Benson, D.J., “Contact in a
Multi-Material Eulerian Finite Element Formulation,” Computer Methods in Applied Mechanics and
Engineering, vol. 193, pp. 4277–4298, 2004.
Peery, J.S., and D. E. Carroll, “Multi-Material ALE
methods in Unstructured Grids,” Computer
Methods in Applied Mechanics and Engineering, vol. 187, pp. 591–619, 2000.