Thermomechanical Simulation of Additive Manufacturing Processes
A sequential thermal-stress analysis of an additive manufacturing process
consists of a transient heat transfer analysis of thermal loads introduced by
the process on a printing part followed by a static structural analysis that is
driven by the temperature field from the thermal analysis. The analysis can
also include support structures (if required for the build) and a substrate
where the part and support are built to consider their influences on thermal
conduction, part distortions, and residual stresses.
For the heat transfer analysis, the following aspects of the process must be
included in the simulation:
- Progressive material deposition: every additive manufacturing process
adds new material with time.
- Progressive heating of the deposited material: for some additive
manufacturing processes, the newly deposited layer of material gets heated up
to the melting point, causing the material to fuse to an underlying layer or a
substrate.
- Progressive cooling of the printing part: as a part is printed, its
cooling surface is continuously evolving with time.
For the stress analysis,
- Temperatures from the heat transfer analysis are used to drive the
stress analysis.
- Similar techniques of progressive material deposition as the heat
transfer analysis can be used.
- Temperature-dependent material properties can be used for accurate
stress results.
Progressive Element Activation in Thermomechanical Simulation
Progressive material deposition in additive manufacturing processes can be
modeled using progressive element activation in
Abaqus/Standard
(see
Progressive Element Activation).
The parts and support structures can be activated progressively. During the
analysis, any element that is defined as progressively activated is filled with
material (completely or partially) or remains empty (inactive). You can control
the activation and the volume fraction of the material for each element in each
increment during an analysis with user subroutine
UEPACTIVATIONVOL.
The material deposition sequence is defined in an event series (for example, in the form of time
and spatial coordinates of a recoater sequence of events; see Event series for more details) and processed using user subroutine
UEPACTIVATIONVOL to define how much
material is added to an element in a given time increment. To simplify this process, you can
access toolpath-mesh intersection utilities from within UEPACTIVATIONVOL to compute the
change of the volume fraction of the material in each element and time increment taking into
account the intersection of the finite element mesh with the specified event series data for
material deposition (see Toolpath-Mesh Intersection Module). Optionally, you can update the material orientation
to align it with the trajectory.
In addition, Abaqus/Standard provides a number of streamlined solutions for some of the most common additive
manufacturing processes that do not require you to write user subroutines. These techniques are described in Special-Purpose Techniques for Additive Manufacturing.
Initial Temperature
During the additive manufacturing process of a part, newly deposited material comes in at a given
initial temperature. You can define this initial temperature value by assigning initial
conditions to the nodes of the mesh of the part to be printed (see Defining Initial Temperatures). Abaqus applies the initial temperature to the material inside these elements where they are
first activated.
A stress analysis of a part-level thermomechanical simulation that uses a
relatively coarse time increment and mesh is an exception to the previous
statement. In this case you should assign an initial temperature representing a
relaxation temperature above which thermal straining induces negligible thermal
stress. This initial temperature is usually different from the initial
temperature of the new material deposited in the manufacturing processes. For
more information, see
Controlling the Scale of the Simulation and the Solution Fidelity.
Displacement Output in Stress Analyses
When using progressive element activation in
Abaqus/Standard,
you can control the behavior of inactive elements to follow or not follow the
deformation of active elements in the model (see
Controlling the Behavior of Inactive Elements).
The two behaviors are expected to produce similar results in the limit of small
deformation, with the exception of displacements and rotations (U, UT, and UR).
An inactive element that follows the deformation, also referred to as a
"quiet" element, is always present in the model and participates in the
solution, but it produces a negligible contribution to the overall response. In
this case a node attached to inactive elements can experience nonzero
displacements before any of its attached elements are activated. The nodal
output variables U, UT, and UR represent displacements and rotations measured from the
beginning of an analysis, containing contributions of displacements during both
inactive and active periods of a node.
Abaqus
also provides nodal output variables UACT, UTACT, and URACT corresponding to the displacements and rotations measured from
the time when an element attached to the node is first activated.
An inactive element not following the deformation does not contribute to the
stiffness of the model and does not participate in the solution. Any nodes
attached to inactive elements remain in their initial position. In this case
the nodal output variables UACT, UTACT, and URACT are the same as the output variables U, UT, and UR, respectively.
Regardless of the behavior chosen for inactive elements, the configuration
of an element upon activation is usually different from the original
configuration because nodes shared by active and inactive elements undergo
displacements (see
Initial Configuration).
When an element is activated, the configuration at the time of activation is
the reference for subsequent element calculations. Therefore, the output
variable E represents strains measured from the time an element is
activated.
Time Incrementation
The time increment used in analyses that include progressive element
activation can influence the final results. Assume that two analyses are
performed to simulate the material extrusion process of a bead of material that
is modeled as a row of elements, with two different time increments: a small
time increment activating one element per increment and a large time increment
activating two elements per increment. The initial configuration of every
second element is different in the two stress analyses, leading to different
results of residual stresses and distortions. You can choose an appropriate
time increment in thermomechanical analyses by performing a time-stepping
convergence study.
Progressive Cooling via Convection and Radiation
With the deposition of new material during the additive manufacturing
process, previously exposed material surfaces are covered, and new free
surfaces are created with time. You can define surface convection and radiation
on continuously evolving free surfaces (see
Specifying Element-Based Film Conditions on Evolving Faces of an Element in Abaqus/Standard
and
Specifying Element-Based Radiation Conditions on Evolving Faces of an Element in Abaqus/Standard).
Abaqus/Standard
continually tracks the evolving free surfaces that reflect the current shape of
a printing part at any given time in the build and applies film and radiation
loadings only to those surfaces.
Progressive Heating by a Moving Heat Source
Many types of additive manufacturing processes involve the application of a
moving heat source (laser, electron beam, welding torch, etc.) to fuse the raw
material. You can define one or multiple nonuniform distributed heat sources in
user subroutine
UMDFLUX (see
Defining Moving or Stationary Nonuniform Heat Flux in User Subroutine UMDFLUX).
The scanning path of a moving heat source is defined in an event series (for example, in the form
of time, spatial coordinates and power of the heat source; see Event series for more details) and processed using user subroutine
UMDFLUX to define each heating event
that occurs on a given element in a given time increment. To simplify this process, you can
access toolpath-mesh intersection utilities from within UMDFLUX to compute heat fluxes
received by each element in each increment (see Toolpath-Mesh Intersection Module).
In addition, Abaqus/Standard provides a number of streamlined solutions to specify heat events that correspond to some
of the most common heat sources in additive manufacturing processes that do not require you
to write user subroutines. These techniques are described in Special-Purpose Techniques for Additive Manufacturing.
Controlling the Scale of the Simulation and the Solution Fidelity
Additive manufacturing process simulation is a multiscale problem in both
time and space. You can control the scale of the simulation and the solution
fidelity by choosing an appropriate time incrementation and mesh size. In
general, you can consider two types of simulation at different ends of the
fidelity spectrum: process-level simulations (high fidelity) versus part-level
simulations (lower fidelity).
A detailed process-level simulation is performed by using a small time
increment and a fine mesh with at least one element per printing layer
thickness and a few elements across an action zone where active melting or
fusion occurs. The simulation captures the rapidly evolving temperature and
high-temperature gradients typically found within and near action zones and,
thus, provides accurate predictions for both residual stresses and distortions.
You can specify temperature-dependent thermal and mechanical material
properties. You can model thermal energy release and absorption during melting
and solidification in heat transfer analyses using latent heat definitions (see
Latent Heat). For
processes that use metallic materials, you can also model annealing effects or
melting at a certain temperature in stress analyses (see
Annealing or Melting).
In addition, precise simulations of temperature histories facilitate the
modeling of material phase transformations and microstructure evolutions during
printing, which can be achieved with user subroutines (such as
UMAT,
UMATHT or
USDFLD). For example, you can specify material properties for
different phases of materials (such as powder, liquid, or different
solid-phases) as functions of field variables or solution-dependent variables
representing the material phase and evaluated inside
USDFLD as a function of the temperature history (see
Specifying Field Variable Dependence
and
Specifying Material Data as Functions of Solution-Dependent Variables).
A process-level simulation can model detailed physics of additive manufacturing
processes and provide accurate results, but it typically has a high
computational cost and can be affected by convergence difficulties due to the
use of temperature-dependent nonlinear material properties under rapidly
changing temperature conditions.
A part-level simulation is performed by appropriately averaging (lumping)
the time sequence of events and using coarser meshes. For example, the model
could have an element size that is a few times larger than the physical
printing layer thickness and use only one or several time increments for
printing one element layer. The heat transfer analysis can usually capture
far-field temperature evolutions (away from action zones) as long as the
thermal energy balance of progressive heating and cooling is modeled correctly.
However, the simulation may not capture local rapid temperature evolutions
properly because the specified sequence of concentrated, fast-moving heat
sources is lumped over both time and space. In other words, the temperature
results do not usually contain an accurate history of melting and
solidification. In this case, to model the annealing or melting effects in the
stress analysis correctly, you must assign an initial temperature representing
a relaxation temperature above which thermal straining induces negligible
thermal stress in the printing part. Upon element activation, the relaxation
temperature is the temperature from which the initial thermal contraction
occurs. This relaxation temperature can be calibrated from experiments or
detailed process-level simulations. The part-level simulation is
computationally efficient for the prediction of distortions and stresses in
printing parts with reasonable accuracy.
Resolving Convergence Difficulties
Thermomechanical simulations of additive manufacturing processes are usually
nonlinear due to temperature-dependent material behavior, progressive element
activation, or other factors. Common convergence issues and recommendations on
how to resolve them are discussed below.
In the heat transfer analysis, convergence difficulties are usually caused
by the nonlinearity of material properties.
-
If temperature-dependent conductivity is specified for the material, the
system of equations is unsymmetric. In this case using the unsymmetric matrix
storage and solution scheme (see
Matrix Storage and Solution Scheme in Abaqus/Standard)
may help to improve convergence.
-
When latent heat effects are considered, they can introduce severe
nonlinearity in the analysis and have a negative impact on convergence.
Abaqus
provides options to reduce the nonlinearity by specifying a smooth transition
or extending the solidus-liquidus temperature interval (see
Defining a Smooth Latent Heat Transition).
In the stress analysis, convergence difficulties can be encountered during
the activation of elements.
-
Elements may distort excessively before they are activated and cause
convergence difficulties. In such situations you should specify that inactive
elements follow the deformation to prevent excessive element distortion (see
Controlling the Behavior of Inactive Elements).
-
The initial thermal strain experienced by an element upon activation
(due to the difference between the current temperature and the specified
initial temperature) can lead to convergence difficulties that cannot be
resolved by reducing the time increment. To overcome this issue,
Abaqus
provides an option to ramp the thermal strains over a period of time instead of
applying them instantaneously upon activation (see
Applying Initial Thermal Strains).
Ramping thermal strains can influence the accuracy of the analysis results. For
example, if the thermal strains of elements in a layer are not fully ramped
when the next layer of elements is activated, the strain-free configuration of
the newly activated elements is different from the case when thermal strains
are fully ramped. You should use a ramping time constant smaller than the
required time for processing one layer.
-
If the material definition includes plasticity, the analysis may iterate
excessively due to the extrapolation scheme used to speed up the solution. You
can prevent this issue by turning off extrapolation (see
Incrementation in Abaqus/Standard).
Input File Template
The following template shows the input for the heat transfer analysis
heat.inp : HEADING
…
** Choose the uncoupled heat transfer element type
ELEMENT, TYPE=DC3D8
** Define material deposition motion and/or heat source scan path
EVENT SERIES TYPE
EVENT SERIES
** Define additional information for material deposition and/or moving heat sources
PARAMETER TABLE TYPE
PROPERTY TABLE TYPE
TABLE COLLECTION
PARAMETER TABLE
PROPERTY TABLE
** Define elements that can be activated during an analysis
ELEMENT PROGRESSIVE ACTIVATION
…
PHYSICAL CONSTANTS, ABSOLUTE ZERO=, STEFAN BOLTZMANN=
INITIAL CONDITIONS, TYPE=TEMPERATURE
…
STEP, UNSYMM=YES
HEAT TRANSFER
…
** Turn on progressive element activation in the step
ACTIVATE ELEMENTS
table collection for material deposition (if defined)
** Apply thermal loads and boundary conditions
BOUNDARY
Data line to define nonzero boundary conditions on temperature degree of freedom
FILM
element number or element set name, FFS or FFSNU, , h
RADIATE
element number or element set name, RFS, ,
DFLUX
element set name, MBFNU, blank entry, table collection for a heat source (if defined)
…
** Write all nodal temperatures to the output database file, heat.odb
OUTPUT, FIELD
NODE OUTPUT
NT
END STEP The following template shows the input for the subsequent
static structural analysis: HEADING
…
** Choose the continuum element type compatible with the heat transfer element type used
ELEMENT, TYPE=C3D8
…
** Define material deposition motion
EVENT SERIES TYPE
EVENT SERIES
** Define additional information for material deposition
PARAMETER TABLE TYPE
PROPERTY TABLE TYPE
TABLE COLLECTION
PARAMETER TABLE
PROPERTY TABLE
** Define elements that can be activated during an analysis
ELEMENT PROGRESSIVE ACTIVATION
…
INITIAL CONDITIONS, TYPE=TEMPERATURE
BOUNDARY
Data lines to specify zero-valued boundary conditions on displacement degree of freedom
…
STEP, EXTRAPOLATION=NO
STATIC
…
** Read in all nodal temperatures from the output database file, heat.odb
TEMPERATURE, FILE=heat.odb
** Turn on progressive element activation in the step
ACTIVATE ELEMENTS
table collection for material deposition (if defined)
** Apply structural loads and boundary conditions
…
END STEP
|