Any number of materials can be defined in an analysis. Each material definition can contain any
number of material behaviors, as required, to specify the complete material behavior. For
example, in a linear static stress analysis only elastic material behavior might be needed,
while in a more complicated analysis several material behaviors might be required.
A name must be assigned to each material definition. This name allows the
material to be referenced from the section definitions used to assign this
material to regions in the model.
Large-Strain Considerations
When giving material properties for finite-strain calculations, “stress”
means “true” (Cauchy) stress (force per current area) and “strain” means
logarithmic strain. For example, unless otherwise indicated, for uniaxial
behavior
Specifying Material Data as Functions of Temperature and Independent Field Variables
Material data are often specified as functions of independent variables such
as temperature. Material properties are made temperature dependent by
specifying them at several different temperatures.
In some cases a material property can be defined as a function of variables
calculated by
Abaqus;
for example, to define a work-hardening curve, stress must be given as a
function of equivalent plastic strain.
Material properties can also be dependent on “field variables” (user-defined
variables that can represent any independent quantity and are defined at the
nodes, as functions of time). For example, material moduli can be functions of
weave density in a composite or of phase fraction in an alloy. See
Specifying Field Variable Dependence
for details. The initial values of field variables are given as initial
conditions (see
Initial Conditions)
and can be modified as functions of time during an analysis (see
Predefined Fields).
This capability is useful if, for example, material properties change with time
because of irradiation or some other precalculated environmental effect.
Any material behaviors defined using a distribution in
Abaqus/Standard
(mass density, linear elastic behavior, and/or thermal expansion) cannot be
defined with temperature and/or field dependence. However, material behaviors
defined with distributions can be included in a material definition with other
material behaviors that have temperature and/or field dependence. See
Density,
Linear Elastic Behavior,
and
Thermal Expansion.
Interpolation of Material Data
In the simplest case of a constant property, only the constant value is entered. When the
material data are functions of only one variable, the data must be given in order of
increasing values of the independent variable. Abaqus then interpolates linearly for values between those given. Thus, you can give as many
or as few input values as are necessary for the material model. If the material data
depend on the independent variable in a strongly nonlinear manner, you must specify enough
data points so that a linear interpolation captures the nonlinear behavior accurately.
When material properties depend on several variables, the variation of the
properties with respect to the first variable must be given at fixed values of
the other variables, in ascending values of the second variable, then of the
third variable, and so on. The data must always be ordered so that the
independent variables are given increasing values. This process ensures that
the value of the material property is completely and uniquely defined at any
values of the independent variables upon which the property depends. See
Input Syntax Rules
for further explanation and an example.
Example: Temperature-Dependent Linear Isotropic Elasticity
Figure 1
shows a simple, isotropic, linear elastic material, giving the Young's modulus
and the Poisson's ratio as functions of temperature.
In this case six sets of values are used to specify the material
description, as shown in the following table:
Elastic Modulus
Poisson's Ratio
Temperature
For temperatures that are outside the range defined by
and ,
Abaqus
assumes constant values for E and
.
The dotted lines on the graph represent the straight-line approximations that
will be used for this model. In this example only one value of the thermal
expansion coefficient is given, ,
and it is independent of temperature.
Example: Elastic-Plastic Material
Figure 2
shows an elastic-plastic material for which the yield stress is dependent on
the equivalent plastic strain and temperature.
In this case the second independent variable (temperature) must be held
constant, while the yield stress is described as a function of the first
independent variable (equivalent plastic strain). Then, a higher value of
temperature is chosen and the dependence on equivalent plastic strain is given
at this temperature. This process, as shown in the following table, is repeated
as often as necessary to describe the property variations in as much detail as
required:
Yield Stress
Equivalent Plastic Strain
Temperature
Extrapolation of Material Data
By default, the property is assumed to be constant outside the range of independent
variables given (except for fabric materials, where the property is extrapolated linearly
outside the specified range). For some properties, Abaqus allows you to choose the extrapolation method outside the specified range. In these
cases, you can specify if the value of the property is constant or is extrapolated
linearly outside the range. If the latter method is selected, Abaqus extrapolates the property linearly using the slope at the last specified data
point.
Example: Extrapolation for Elastic-Plastic Material with Isotropic Hardening
In Table 1 the Mises isotropic yield surface is defined by providing three data
points.
Table 1. Isotropic hardening data.
Yield Stress
Equivalent Plastic Strain
The response of the material outside the range of equivalent plastic strain () depends on the extrapolation method specified, as shown in Figure 3.
Specifying Field Variable Dependence
You can specify the number of user-defined field variable dependencies
required for many material behaviors (see
Predefined Fields).
If you do not specify a number of field variable dependencies for a material
behavior with which field variable dependence is available, the material data
are assumed not to depend on field variables.
Specifying Material Data as Functions of Solution-Dependent Variables
In Abaqus you can introduce dependence on solution variables through a user subroutine or by direct
specification.
User Subroutine Approach
User subroutines USDFLD in Abaqus/Standard and VUSDFLD in Abaqus/Explicit allow you to define field variables at a material point as functions of time, material
directions, and any of the available material point quantities. These quantities are
listed in Abaqus/Standard Output Variable Identifiers for USDFLD and in Available Output Variable Keys for VUSDFLD. Material properties
defined as functions of these field variables, therefore, can be dependent on the
solution.
User subroutines USDFLD and VUSDFLD are called at each
material point for which the material definition includes a reference to the user
subroutine.
For general analysis steps the values of variables provided in user subroutines USDFLD and VUSDFLD are those corresponding to
the start of the increment. Hence, the solution dependence introduced in this way is
explicit; the material properties for a given increment are not influenced by the results
obtained during the increment. Consequently, the accuracy of the results generally depends
on the time increment size. This is not typically a concern in Abaqus/Explicit because the stable time increment is usually sufficiently small to ensure good
accuracy. In Abaqus/Standard you can control the time increment from inside user subroutine USDFLD. For linear perturbation
steps the solution variables in the base state are available. For a discussion of general
and linear perturbation steps, see General and Perturbation Procedures.
Direct Specification Approach
There are applications where it is desirable to redefine a field variable to be equal to
the value of a scalar output variable. In such cases, you can avoid the overhead of
writing and maintaining a user subroutine and, instead, introduce solution dependence
directly by associating a field variable with an existing scalar output variable in Abaqus. For scalar output variables, you only need to specify the output variable identifier
to build this association. However, for a vector or a tensor output variable, you must
specify the appropriate component of the variable (for example, specify PE11 instead of PE
to associate a field variable with the -11- component of the plastic strain tensor).
Any output variable that is available with the
GETVRM or the
VGETVRM utility routine, used to access
material point information in Abaqus/Standard and Abaqus/Explicit, respectively, can be associated with a field variable.
For general analysis steps the values of the output variables are those corresponding to
the start of the increment. Hence, the solution dependence introduced in this way is
explicit; the material properties for a given increment are not influenced by the results
obtained during the increment. Consequently, the accuracy of the results typically depends
on the time increment size. This is usually not a concern in Abaqus/Explicit because the stable time increment is usually sufficiently small to ensure good
accuracy. For linear perturbation steps the output variables in the base state are used.
For a discussion of general and linear perturbation steps, see General and Perturbation Procedures.
Material Failure and Element Deletion
Abaqus
offers a general framework for material failure modeling that allows the
combination of multiple failure mechanisms acting simultaneously on the same
material. Material failure refers to the complete loss of load-carrying
capacity at a material point that results from progressive degradation of the
material stiffness or instantaneous rupture based on material constitutive
models or by user specification. An active material point is considered to turn
inactive (deleted) upon material failure. For material behaviors defined by
user subroutines, you can control the status of a material point inside user
subroutines using solution-dependent state variables (see
Deleting Elements from a Mesh Using State Variables).
In
Abaqus/Explicit
output variable STATUSMP can be used to request the status at each material point. This
variable is equal to one if the material point is active and equal to zero if
the material point fails.
Unless specified otherwise for particular material behaviors, an element is
deleted (or removed) from a mesh upon material failure. Detailed criteria for
element deletion driven by material failure in
Abaqus/Standard
and
Abaqus/Explicit
are described below. Deleted elements have no ability to carry stresses and,
therefore, do not contribute to the stiffness of the model. In a heat transfer
analysis the thermal contribution of the element is also removed when the
element deletion criterion is reached.
The status of an element can be determined by requesting output variable STATUS. This variable is equal to one if the element is active and
equal to zero if the element is deleted.
).
Alternatively, several material failure mechanisms allow you to retain fully
damaged elements (along with a residual stiffness) in the computations even
after material failure. For example, for progressive damage and failure
modeling, you can specify the value of the maximum degradation and whether
element deletion occurs when the degradation reaches this value (see
Controlling Element Deletion and Maximum Degradation for Materials with Damage Evolution).
Element Deletion Driven by Material Failure in Abaqus/Standard
In
Abaqus/Standard
an element is removed from the mesh if the material fails at all of the section
points at all the integration locations of the element. In addition, for
cohesive elements with traction-separation response, elements are deleted only
if none of the integration points are in compression.
Element Deletion Driven by Material Failure in Abaqus/Explicit
In
Abaqus/Explicit
a general rule for element deletion from the mesh is that the material fails at
all of the section points at any one integration location of an element. It is
not necessary for all material points in the element to fail. The following
examples describe default behavior that results in element removal:
Solid elements: material failure at any one integration point.
Second-order reduced-integration beam elements: material failure at all
section points through the thickness at either of the two element integration
locations along the beam axis.
Modified triangular and tetrahedral solid elements and fully integrated
membrane elements: material failure at any one integration point.
The general rule has two exceptions. First, the criterion for element
deletion for cohesive elements is that the material fails at all integration
points. In addition, for cohesive elements with traction-separation response,
elements are deleted only if none of the integration points are in compression.
Second, a shell element is removed from the mesh by default when all of the
active section points (that is, section points where the material has not
failed) at any one integration location share the same through-the-thickness
z-location. In this condition, the shell element cannot sustain any bending
moment. Specifically, a shell element is deleted when any one integration
location has at most one active section point or at least two active section
points and all of them share the same z-location. For example, in the case of a
two-layer composite with three section points per layer, the third section
point of the first layer and the first point of the second layer share the same
z-location (on the interface between the two layers). The element deletion
criterion is triggered if only one of the six section points is left active or
if only the two points mentioned above (that share the same z-location) remain
active.
Difficulties Associated with Element Removal in Abaqus/Standard
When elements are removed from the model, their nodes still remain in the
model even if they are not attached to any active elements. When the solution
progresses, these nodes can undergo nonphysical displacements due to the
extrapolation scheme used in
Abaqus/Standard
to speed up the solution (see
Convergence Criteria for Nonlinear Problems).
You can prevent these nonphysical displacements by turning off the
extrapolation. In addition, applying a point load to a node that is not
attached to an active element causes convergence difficulties since there is no
stiffness to resist the load. You should take precautions to avoid these
situations.
Defining the Characteristic Element Length at a Material Point in Abaqus/Explicit
The characteristic element length is used by
Abaqus
for the regularization of models that exhibit strain softening or is passed to
user subroutines that are called at a material point. By default,
Abaqus
computes the characteristic element length using the geometric mean–based
definition.
The default value for a first-order element is the typical length of a line
across an element, and the default value for a second-order element is half of
the same typical length. For trusses the default value is a characteristic
length along the element axis. For membranes and shells the default value is a
characteristic length in the reference surface. For axisymmetric elements the
default value is a characteristic length in the
r–z plane only.
In
Abaqus/Explicit
you can redefine the value of the characteristic element length based on the
element topology and geometry in user subroutine
VUCHARLENGTH.
Regularizing User-Defined Data in Abaqus/Explicit
Interpolating material data as functions of independent variables requires table lookups of the
material data values during the analysis. The table lookups occur frequently in Abaqus/Explicit and are most economical if the interpolation is from regular intervals of the independent
variables. For example, the data shown in Figure 1 are not regular because the intervals in temperature (the independent variable) between
adjacent data points vary. You are not required to specify regular material data. Abaqus/Explicit will automatically regularize user-defined data. For example, the temperature values in
Figure 1 can be defined at 10°, 20°, 25°, 28°, 30°, and 35° C. In this case Abaqus/Explicit can regularize the data by defining the data over 25 increments of 1° C and your
piecewise linear data will be reproduced exactly. This regularization requires the expansion
of your data from values at 6 temperature points to values at 26 temperature points. This
example is a case where a simple regularization can reproduce your data exactly.
If there are multiple independent variables, the concept of regular data
also requires that the minimum and maximum values (the range) be constant for
each independent variable while specifying the other independent variables. The
material definition in
Figure 2
illustrates a case where the material data are not regular since
,
,
and .
Abaqus/Explicit
will also regularize data involving multiple independent variables, although
the data provided must satisfy the rules specified in
Input Syntax Rules.
Error Tolerance Used in Regularizing User-Defined Data
It is not always desirable to regularize the input data so that they are
reproduced exactly in a piecewise linear manner. Suppose the yield stress is
defined as a function of plastic strain in
Abaqus/Explicit
as follows:
Yield Stress
Plastic Strain
50000
.0
75000
.001
80000
.003
85000
.010
86000
1.0
It is possible to regularize the data exactly but it is not very economical,
since it requires the subdivision of the data into 1000 regular intervals.
Regularization is more difficult if the smallest interval you defined is small
compared to the range of the independent variable.
Abaqus/Explicit
uses an error tolerance to regularize the input data. The number of intervals
in the range of each independent variable is chosen such that the error between
the piecewise linear regularized data and each of your defined points is less
than the tolerance times the range of the dependent variable. In some cases the
number of intervals becomes excessive and
Abaqus/Explicit
cannot regularize the data using a reasonable number of intervals. The number
of intervals considered reasonable depends on the number of intervals you
define. If you defined 50 or less intervals, the maximum number of intervals
used by
Abaqus/Explicit
for regularization is equal to 100 times the number of user-defined intervals.
If you defined more than 50 intervals, the maximum number of intervals used for
regularization is equal to 5000 plus 10 times the number of user-defined
intervals above 50. If the number of intervals becomes excessive, the program
stops during the data checking phase and issues an error message. You can
either redefine the material data or change the tolerance value. The default
tolerance is 0.03.
The yield stress data in the example above are a typical case where such an error message might
be issued. In this case you can simply remove the last data point since it produces only a
small difference in the ultimate yield value.
Regularization of Strain-Rate-Dependent Data in Abaqus/Explicit
Since strain rate dependence of data is usually measured at logarithmic intervals, Abaqus/Explicit regularizes strain rate data using logarithmic intervals rather than uniformly spaced
intervals by default. This generally provides a better match to typical
strain-rate-dependent curves. You can specify linear strain rate regularization to use
uniform intervals for regularization of strain rate data. The use of linear strain rate
regularization affects only the regularization of strain rate as an independent variable
and is relevant only if one of the following behaviors is used to define the material
data:
Evaluation of Strain-Rate-Dependent Data in Abaqus/Explicit
Rate-sensitive material constitutive behavior can introduce nonphysical high-frequency
oscillations in an explicit dynamic analysis. To overcome this problem, Abaqus/Explicit computes the equivalent plastic strain rate used for the evaluation of
strain-rate-dependent data as
Here is the incremental change in equivalent plastic strain during the time
increment , and and are the strain rates at the beginning and end of the increment,
respectively. The factor () facilitates filtering high-frequency oscillations associated with
strain-rate-dependent material behavior.
Abaqus/Explicit provides two options to specify the value of the strain rate factor, :
You can specify a constant value of . The default value is 0.9. A value of does not provide the desired filtering effect; therefore, you should
avoid this setting.
You can define a time-based filter by specifying a time constant, . In this case, the value of is computed as . This method produces filtered results that are less sensitive to
the changes in time incrementation used for the analysis.