Main Help → All Commands → Defining Materials → Material
A Material
command block allows you to specify a new material type and define all its properties. The command block format is:
Material (matid),(name),(type) (Property commands - one per line) Done
where
(matid)
is the ID or Label for the material created by the command. This ID is used by all other commands that refer to this material.(name)
is the material name entered as an string. It appears on the output file, but has no other function.The Material
command should contain lines to define all the material properties. The various material types expect different properties. The required properties for each material type are given in sections about that material. Many properties are case insensitive, but some (especially newer ones) are case sensitive; it is best to match the case of the tables. Besides material property commands, the Material
block can contain no other commands except conditional blocks.
The following tables list materials supported by NairnFEA or NairnMPM. The boxes in the table tell which code supports the materials. For 2D MPM, the first X means it can be used in plane stress MPM, the second is for plain strain MPM, and that last is for axisymmetric analyses. Materials that are in the code, but not define in the tables below, can usually be used by using the methods for development materials. Besides these materials, the Material command is also used to define traction law materials.
The materials in this section are all small-strain, linear elastic materials. They allow for large rotations.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
Isotropic |
1 | Linear elastic, isotropic | X | X X X | X |
Transverse |
2 | Linear elastic, transversely isotropic with unrotated axial direction in the z (or θ if axisymmetric) direction or x-y (or r-z if axisymmetric) plane of 2D analyses is the material's isotropic plane. |
X | X X X | X |
Orthotropic |
4 | Linear elastic, orthotropic material | X | X X X | X |
Bistable |
10 | Elastic, isotropic material with two stable states and reversible or irreversible transitions between the two states | X X X |
The materials in this section are designed to solve finite strain (or large deformation) problems. They are formulated using hyperelasticity methods
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
Mooney |
8 | Mooney-Rivlin, hyperelastic, isotropic material. Neo-Hookean and a rubbery materials is a special case of this material. | X X X | X | |
Neo-Hookean |
28 | An alternate isotropic, hyperelastic, neo-Hookean material. | X X X | X - | |
IdealGas |
22 | Ideal or non-ideal van der Waals Gas, as a hyperelastic material. | - X X | X | |
TaitLiquid |
27 | Newtonian liquid with Tait law for pressure dependence as a hyperelastic material. | - X X | X |
The materials in this section are all small-strain, elastic-plastic materials. They account for large rotations. They handle plasticity by combining one of these materials with any compatible hardening law.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
IsoPlasticity |
9 | Small-strain elastic-plastic material to be used with a selected hardening law. | X X X | X | |
HillPlastic |
15 | Elastic-plastic orthotropic material with a Hill yield criterion and hardening | - X X | X |
The materials in this section implement anisotropic damage mechanics as a method for emulating fracture mechanics through constitutive law model rather than explicit crack propagation.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
IsoSoftening |
50 | Small-strain isotropic material with anisotropic damage mechanics. | X X X | X | |
IsoPlasticSoftening |
53 | Small-strain isotropic material that combines plasticity with anisotropic damage mechanic. | X X X | X | |
TransIsoSoftening |
51 | Small-strain transversely-isotropic material with anisotropic damage mechanics and with unrotated axial direction in the z (or θ if axisymmetric) direction or x-y (or r-z if axisymmetric) plane of 2D analyses is the material's isotropic plane. |
- X X | X | |
OrthoSoftening |
54 | Small-strain orthotropic material with anisotropic damage mechanics. | - X X | ||
OrthoPlasticSoftening |
56 | Small-strain orthotropic material that combines plasticity with anisotropic damage mechanics. | - X X | ||
IsoPhaseFieldSoftening |
57 | Small-strain isotropic material that use phase field methods to mode cracks by variational fracture mechanics. | X X X | ||
IsoDamageMechanics |
58 | Small-strain isotropic material that evolves damage using isotropic damage mechanics methods. | X X X |
The materials in this section are formulated within the framework of hyper elasticity formulation. They can handle plasticity by combining them with any compatible hardening law.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
HEIsotropic |
21 | An isotropic, hyperelastic-plastic material to be used with a selected hardening law. | - X X | X | |
HEMGEOSMaterial |
25 or 17 | Hyperelastic-plastic isotropic material using the Mie-Grüneisen equation of state to be used with a selected hardening law. | - X X | X | |
ClampedNeohookean |
29 | Isotropic, hyperelastic-plastic material with elongations limited to maximum strains. | - X X | X |
The materials in this section are viscoelastic materials materials.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
Viscoelastic |
7 | Linear viscoelastic material with sum of relaxation times | X X X | X | |
TIViscoelastic |
5 | Viscoelastic, transversely isotropic with unrotated axial direction in the z (or θ if axisymmetric) direction or x-y (or r-z if axisymmetric) plane of 2D analyses is the material's isotropic plane. |
X X X | X |
The materials in this section model phase transitions between other materials.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
PhaseTransition |
30 | Models a first order transtion between a solid and a liquid. | - X X | X |
The materials in this section have special uses.
Name | # | Description | NairnFEA | 2D NairnMPM | 3D NairnMPM |
---|---|---|---|---|---|
Interface |
5 | A definition of an imperfect interface | X | ||
Rigid |
11 | Not really a material, but useful for moving boundary conditions | X X X | X | |
Other Materials | - | See this section for method to use materials in the code engines that are not known to NairnFEAMPM. | ? | ? | ? |
For details see the OSUPDocs wiki. The properties are:
E
for modulus in pressure units.nu
for Poisson's ratioalpha
for thermal expansion coefficient in ppm/degree K.This material has the axial direction along the z
axis and is isotropic in the x-y
plane. Any other orientation is achieved by rotating from these initial orientations. Use the swapz
property to move the axial direction into the 2D analysis plane. For more details see the OSUPDocs wiki. The properties are:
EA
and ET
for axial and transverse modulus in pressure units.GA
for axial shear modulus in pressure units.nuA
and nuT
for axial and transverse Poisson's ratiosaA
and aT
for axial and transverse thermal expansion coefficient in ppm/degree K.betaA
and betaT
for axial and transverse concentration coefficient in strain/weight fraction.kA
and kT
for axial and transverse thermal conductivity (in conductivity units). Only used when doing conduction calculations.DA
and DT
for axial and transverse diffusion constant (in diffusion units). Only used when doing diffusion calculations.swapz
- set to >0 to move axial direction from z
axis to the y
axis (or from θ axis to Z
axis in axisymmetric calculations). This property is only needed for 2D simulations that want axial direction in the analysis plane (it is not allowed in 3D MPM simulations).An orthotropic material has different properties in all three directions. You can enter the properties in the x, y, and z direction. Any other orientation is achieved by rotating from these initial orientations. For more details see the OSUPDocs wiki. The properties are:
Ex
, Ey
, and Ez
for x-, y-, and z-direction moduli in pressure units.Gxy
(or Gyx
), Gxz
(or Gzx
), Gyz
(or Gzy
) for x-y, x-z. and y-z plane shear moduli in pressure units.nuxy
, nuxz
, and nuyz
for x-y, x-z, and y-z Poisson's ratios.ax
, ay
, and az
for x-, y-, and z-direction thermal expansion coefficients in ppm/degree K.betax
, betay
, and betaz
for x-, y-, and z-direction concentration expansion coefficients in strain/weight fraction.kx
, ky
, and kz
for x-, y-, and z-direction thermal conductivity (in conductivity units). Only used when doing conduction calculations.Dx
, Dy
, and Dz
for x-, y-, and z-direction diffusion constant (in diffusion units). Only used when doing diffusion calculations.swapz
- if this property is 1, the x and z axis properties are swapped from input values; if it is 2 or greater, the y and z axis properties are swapped. This property provides an alternative to rotating material axes.An interface material is used to model imperfect interfaces. This material is used in NairnFEA only. It can only be used to link two separate areas with normal solid elements. The edges of the areas most overlap with all nodes and elements at identical locations. The two interface properties are:
Dn
for interface stiffness for loading the interface in the normal direction (in pressure units/length units)Dt
for interface stiffness for loading the interface in the tangential direction (in pressure units/length units)See Imperfect Interface Elements for more information on modeling imperfect interfaces in NairnFEA.
This material is a small-strain, linear viscoelastic material with time-dependent bulk and shear moduli given by a sums of relaxation times. The pressure law can use small strain methods (with time-dependent bulk modulus) or large-deformation Mie-Grüneisen equation of state (MGEOS) (with time-independent but non-linear elastic bulk modulus). The input properties are:
G0
for the steady-state (or long time) shear modulus (in pressure units),Gk
for the next shear modulus (in pressure units).tauk
for the next shear modulus relaxation time (in time units).pressureLaw
- set to 0 to use small strain method (with provided K
terms) or 1 to use MGEOS (with all its properties)K
- the time-independent bulk modulus (in pressure units) (when pressureLaw=0).Kk
for the next bulk modulus (in pressure units) (when pressureLaw=0).tauKk
for the next bulk modulus relaxation time (in time units) (when pressureLaw=0).C0
, S1
, S2
, S3
, gamma0
, and Kmax
for the MGEOS calculations. The UJOption
is fixed at 1.alpha
for the material thermal expansion coefficient (in ppm/ degree K) (not used when pressureLaw=1).The relaxation shear modulus is given by G(t) = G0 + G1exp(-t/tau1) + G2exp(-t/tau2) + ... + Gntausexp(-t/tauntaus) where the Gk and tauk are matched in the order they are supplied. The relaxation bulk modulus when pressureLaw is 0 is given by K(t) = K + K1exp(-t/tauK1) + K2exp(-t/tauK2) + ... + KntausKexp(-t/tauKntausK) where the Kk and tauKk are matched in the order they are supplied. For more details see the OSUPDocs wiki.
This material can be used in plane stress analysis, but only if pressureLaw=0
and artificial visocity is not used.
You can archive total volume change (J) and residual free expansion volume (Jres) in history variables 1 and 2 (Jres, but only when using MGEOS traction law. This material also tracks internal viscoelastic variables. These can be archived, but may not provide much useful information. They start in number 3 when using MGEOS traction law or 1 if when using small-stress pressure law.
This material is a small-strain, linear viscoelastic material with five time-dependent moduli each given by a sum of relaxation times.The axial direction is along the z
axis and the material is isotropic in the x-y
plane. Any other orientation is achieved by rotating from these initial orientations. Use the swapz
property to move the axial direction into the 2D analysis plane. The input properties are:
GT0
for the steady-state (or long time) transverse shear modulus (in pressure units),GA0
for the steady-state (or long time) axial shear modulus (in pressure units),KT0
for the steady-state (or long time) plane-strain bulk modulus (in pressure units),en0
for the steady-state (or long time) C33 element of the stiffness tensor where 3 is the axial direction (in pressure units),ell0
for the steady-state (or long time) C13 = C23 element of the stiffness tensor where 3 is the axial direction (in pressure units),Pk
for the next modulus (in pressure units) in series for the current property.tauk
for the next relaxation time (in time units) in series for the current property.swapz
- set to >0 to move axial direction from z
axis to the y
axis (or from θ axis to Z
axis in axisymmetric calculations). This property is only needed for 2D simulations that want axial direction in the analysis plane (it is not allowed in 3D MPM simulations).Each relaxation modulus is given by P(t) = P0 + P1exp(-t/tau1) + P2exp(-t/tau2) + ... + Pntausexp(-t/tauntaus) when the Pk and tauk are matched in the order they are supplied. For each of five properties, enter the steady value (which becomes P0) and follow that by series of Pk and tauk values For more details see the OSUPDocs wiki.
This material tracks numerous internal viscoelastic variables. They can be archived, but may not provide much useful information.
The material type is an isotropic, hyperelastic material. The stresses are defined from the strain energy. For mechanics details see the OSUPDocs wiki. The properties are:
G1
for G1 shear modulus in pressure units.G2
for G2 shear modulus in pressure units.K
for bulk modulus in pressure units.E
for tensile in pressure units.nu
for Poisson's ratio.UJOption
for an integer to select the dilational energy term U(J) and the possible options are:IdealRubber
can be set to 1 or 0 to be an ideal rubber elastic material. An ideal rubber means that during isothermal loading, there is no change in internal energy. In other words, all the work is turned into heat. In adiabatic loading, this heat causes the temperature to rise. The default is 0. See OSUPDOcs wiki for more details.alpha
for thermal expansion coefficient in ppm/degree K.This material is identical to an isotropic material at low strain with shear modulus given by G = G1+G2 and bulk modulus equal to K. A neo-Hookean material is a special case of a Mooney-Rivlin material by setting G2 = 0. You have to either either K and G1 OR E and nu. If E and nu are entered, K is found from E/(3*(1-2*nu)) and G1 from E/(2*(1+nu)) - G2 (in other words G1+G2 is the low strain shear modulus).
This material use history #1 to store the volumetric strain (i.e., the determinant of the deformation gradient). The total strain, which is equal to the elastic strain, is stored in the elastic strain variable and the plastic strain stores the left Cauchy Green tensor.
The material type is an isotropic, hyperelastic material. The stresses are defined from the strain energy. For mechanics details see the OSUPDocs wiki. The properties are:
UJOption
for an integer to select the an energy term U(J) and the possible options are:alpha
for thermal expansion coefficient in ppm/degree K.From the first five properties, you must enter K and G, Lame and G, OR E and nu. If you enter any other combination or more than two, an error will result. This material is identical to an isotropic material at low strain with the entered mechanical properties.
This material uses history #1 to store the volumetric strain (i.e., the determinant of the deformation gradient). The total strain, which is equal to the elastic strain, is stored in the elastic strain variable and the plastic strain stores the left Cauchy Green tensor.
The material type is a large-deformation, isotropic, hyperelastic material. It yields when the tensile and/or compression elongation reaches critical values of 1+θs and/or 1-θc. The underlying elastic component of the deformation is a neo-Hookean material. After yielding, the mechanical properties soften in tension or harden in compression according to an entered hardening coefficient. The material properties are
The total strain is stored in the elastic strain variable while the plastic strain stores the left Cauchy Green tensor. You have to archive both strain and plastic strain for the visualization to be able to plot elastic and plastic strains.
The material type is an ideal gas or a non-ideal van der Walls gas, implemented as a large-deformation, isotropic, hyperelastic material at finite deformations. The detailed documentation is currently only available on the OSUPDocs wiki.
The material type is an Newtonian liquid using the Tait equation for dependence of pressure on temperature and volume. It is implemented as a large-deformation, isotropic, hyperelastic material at finite deformations (see OSUPDocs wiki for implementation details). The properties are:
K
for zero-pressure bulk modulus (in pressure units).viscosity
for liquid viscosity at one shear rate (in viscosity units).alpha
for the linear thermal expansion coefficient (in ppm/degree K).InitialPressure
to set initial pressure to a user-define function that evaluates to a pressure in pressure units.
When liquids are modeled in gravity, the function can set to ρgh,
where h is height of liquid above the position (x, y, z).If one viscosity
is given and no logshearrate
, the material has constant viscosity. If multiple logshearrate
and viscosity
commands are used, each pair defines points for piecewise linear representation of viscosity as a function of log shear rate. You must enter an equal number of logshearrate
and viscosity
commands with monotonically increasing shear rates. The liquid's viscosity will be interpolated within the provided points. Shear rates below the minimum or above the maximum provided shear rates will be equal to the viscosity at the minimum or maximum shear rate, respectively.
The following history variables are stored:
This material is small-strain, isotropic material with plasticity. The plasticity response is handled by selecting a hardening law response. The properties are:
hardening
-
This command selects the hardening law. It should be followed by entering yielding properties required by the hardening law.The material has none, but the hardening law will have at least one.
In particle properties, the "strain" will be the total strain and the "plastic strain" will have the plastic strain. The total strain is the sum of elastic and plastic strains. You have to archive both strain and plastic strain for the visualization to be able to plot elastic and plastic strains.
The material is a large-deformation, isotropic, hyperelastic-plastic material. For mechanics details see the OSUPDocs wiki. The properties are:
G1
(or G
) for shear modulus (in pressure units). It is equal to the low-strain shear modulus.UJOption
to select the dilational energy term U(J) and the possible integer values mean:K
for bulk modulus (in pressure units), which is equal to the low-strain bulk modulus.Hardening
to select a hardening law. It should be followed by entering yielding properties required by the hardening law.alpha
for the material's thermal expansion coefficient (in ppm/degree K)The first history variables are determined by the hardening law. After those variables, the next history variable stores the volumetric strain (i.e., the determinant of the deformation gradient, [F]). The total strain is stored in the elastic strain variable while the plastic strain stores the plastic. You have to archive both strain and plastic strain for the visualization to be able to plot elastic and plastic strains.
This hyperelastic material uses large deformation theory for pressure response and for shear and yielding. The pressure is determined by the Mie-Grüneisen equation of state. The yielding process can be selected using any hardening law. The properties are:
C0
- The bulk wave speed entered in alt velocity units.S1
- Parameter in Mie-Grüneisen equation of state (dimensionless).S2
- Parameter in Mie-Grüneisen equation of state (dimensionless).S3
- Parameter in Mie-Grüneisen equation of state (dimensionless).gamma0
- Parameter in Mie-Grüneisen equation of state (dimensionless).Kmax
- maximum increase allowed in bulk modulus (by ratio and dimensionless) (default is -1 or no max).G
(or G1
) - Shear modulus, G0, at zero pressure and the reference temperature in pressure units.UJOption
- Use 0, 1, or 2 to select energy function to use for finding pressure when in tension (see Mooney material) (default 0).hardening
- This command selects the hardening law. It should be followed by entering yielding properties required by the hardening law.In this material, the pressure is related to the volumetric compression strain (x = -ΔV/V0) by the Mie-Grüneisen equation of state. When x>0, the material is in compression and pressure is
P = ρ0C02x(1 - 0.5 γ0 x) / (1 - S1x - S2x2 - S3x3)2 + ρ0γ0e
where e is the internal energy made up of elastic, plastic, and heat energy.
The heat energy depends on temperature relative to a reference temperature; the reference temperature is set using the StressFreeTemp
command. When x<0, the material is in tension and the pressure changes to
P = ρ0C02x + ρ0γ0e
The first term is bulk modulus terms with the low-strain bulk modulus being ρ0C02. For more details see the OSUPDocs wiki.
This equation of state automatically handles thermal expansion by inclusion of thermal energy in the internal energy. You do not need to enter a thermal expansion coefficient, but you do need to enter heat capacity Cv
to get the thermal expansion correctly.
The first history variables are determined by the hardening law. After those variables, the next history variable stores the volumetric strain (i.e., the determinant of the deformation gradient, [F]). The total strain is stored in the elastic strain variable, while the plastic strain stores the elastic, left Cauchy Green tensor. You have to archive both strain and plastic strain for the visualization to be able to plot elastic and plastic strains.
This material is an orthotropic material but can yield in response to the the anisotropic Hill yield criterion (see below), which allows yielding at different stresses when loaded in different directions. Enter the underlying orthotropic material properties and then enter the direction-dependent yield stresses. Any omitted yield stress will be assumed to be infinite (i.e., no yielding in that direction). The properties are:
The anisotropic yield criterion is
[ F(σyy - σzz)2 + G(σxx - σzz)2 + H(σyy - σxx)2 + 2Lτyz2 + 2Mτxz2 + 2Nτxy2 ]1/2 - H(α)
where H(α) is a hardening law as a function of cumulative plastic strain and σxx, σyy, σzz, τyz, τxz, and τxy are stresses in the material axis system after rotation from the analysis coordinates. The constant are determined by the yield stresses:
2F = (1/yldyy
2) + (1/yldzz
2) - (1/yldxx
2)
2G = (1/yldxx
2) + (1/yldzz
2) - (1/yldyy
2)
2H = (1/yldxx
2) + (1/yldyy
2) - (1/yldzz
2)
2L = (1/yldyz
2)
2M = (1/yldxz
2)
2N = (1/yldxy
2)
The τyz and τxz terms and their yield stresses are not needed for 2D analyses.
If nhard>0, the hardning law is H(α) = 1 + Khard*αnhard, but if nhard<0, the hardening law is changed to H(α) = (1 + Khard*α)nhard. If exphard is provided instead, the hardening law is exponential or
H(α) = 1 + (Khard/exphard)*(1-exp(-exphard*α)). If both nhard and exphard are provided, the last one provided will determine the hardening law. If alphaMax
is provided exponential hardening converts to linear softening using the final slope of the exponential hardening law (this parameter is used to prevent exponential hardening from decaying to elastic-plastic response).
For more details see the OSUPDocs wiki.
sqrt(2/3)||dεp||
.In particle properties, the "strain" will be the total strain and the "plastic strain" will have the plastic strain. The total strain is the sum of elastic and plastic strains. You have to archive both strain and plastic strain for the visualization to be able to plot elastic and plastic strains.
This material has two isotopic states. The first state (state "0") must be fully defined. Any property omitted for the second state (state "d") will be assumed to be identical to the first state. The mechanical and transport properties in the two states are set with:
K0
for bulk modulus of initial state in pressure units.G0
for shear modulus of initial state pressure units.a0
for thermal expansion coefficient in ppm/degree K of initial state.beta0
for concentration expansion coefficient in strain/weight fraction of initial state.D0
for diffusion constant in initial state (in diffusion units). Only used when doing diffusion calculations.kCond0
for thermal conductivity constant in initial state (in conductivity units). Only used when doing thermal conductivity calculations.Kd
for bulk modulus of transformed state in pressure units.Gd
for shear modulus of transformed state in pressure units.ad
for thermal expansion coefficient in ppm/degree K of transformed state.betd
for concentration expansion coefficient in strain/weight fraction of transformed state.Dd
for diffusion constant in transformed state (in diffusion units). Only used when doing diffusion calculations.kCondd
for thermal conductivity constant in transformed state (in conductivity units). Only used when doing thermal conductivity calculations.The transition between the two states is determined either by a dilation rule, a distortion rule, or a Von Mises stress rule (see transition
property). In dilation rule, the transition occurs when the volumetric strain reaches the entered critical
value. In distortion rule, the transition occurs when the second strain invariant reaches a critical value. By a Von Mises stress rule, the transition occurs when the Von Mises stress reaches a critical value. When using a dilation rule, the new stress-strain relation can include a changed offset in volumetric strain corresponding to stress-free conditions at a non-zero dilation relative to the initial state (see DeltaVOffset
property). This change normally leads to an instantaneous change in stress upon transition. When using a distortion or Von Mises stress rule, the offset is ignored and the change is only a change in slope of mechanical properties. For more details see the OSUPDocs wiki. The properties determining the transition are:
transition
the transition is set to "dilation
" (or 1), "distortion
" (or 2), or "vonmises
" (or 3) to select the transition model.critical
the critical volumetric strain to induce a dilation
transition (in precent strain), critical strain invariant to induce a distortion
transition (in percent strain), or critical Von Mises stress to induce a vonmises
transition (in pressure units). The interpretation of this property depends on the setting the transition
propertyDeltaVOffset
for offset volumetric strain in the transformed state. This property only applies for dilation rule (see below); it is ignored for distortion rule.reversible
to make the transition reversible (if "yes" or 1) or irreversible (if "no" or 0) (the default is reversible).History variable 1 will be 0 for the initial state and 1 for the deformed state after a transition. This variable can be archived as history1
.
The material is an isotropic, small strain material and currently only in OSParticulas. Once damage initiates (using any appropriate initiation law), the material develops a crack and propagates damage using anisotropic damage mechanics. The damage process is controlled by available softening laws. For more details see the OSUPDocs wiki.The properties are:
MaxPrinciple
.statsDistibutionMode
parameter.statsDistibutionMode
parameter.largeRotation
property set to 1.The particle plastic strain will archive the total cracking strain in the global axis system. The plastic energy will archive the total amount of energy released by damage to the particle.
coefVariation
and coefVariation
propertiesMode.coefVariation
and coefVariation
propertiesMode.History variables 8-10 are storing Euler angles α, β, and γ (in radians) for a Z-Y-Z rotation scheme; only α is needed for 2D and it is stored as cos(α) and sin(α) instead of as angles.
This material is an isotropic, elastic-plastic material that can also develop aniostropic damage. For more details see the OSUPDocs wiki. The properties are:
largeRotation
property set to 1.The particle plastic strain will archive the sum of plastic and cracking strain in the global axis system. The plastic energy will archive the total amount of energy released by plsticity or by damage to the particle.
This material is a transversely-isotropic elastic materials that can also develop aniostropic damage. The detailed documentation is currently only available on OSUPDocs wiki.
This material is an orthotropic, elastic material that can also develop aniostropic damage. The detailed documentation is currently only available on OSUPDocs wiki.
This material is an orthotropic, elastic-plastic material that can also develop aniostropic damage. The detailed documentation is currently only available on OSUPDocs wiki.
This material is an isotropic that evolves damage using variational mechanics. It requires being run along with methods for phase field calculations. The detailed documentation is currently only available on OSUPDocs wiki. In brief, the properties are:
largeRotation
property set to 1.This material is an isotropic material that evolves damage using isotropic damage mechanics. The detailed documentation is currently only available on OSUPDocs wiki. In brief, the properties are:
largeRotation
property set to 1.An alternative to randomly varying strength or toughness using coefVariation and coefVariationMode properties is to set the relative values using a PropertyRamp Custom Task. For example, a BMP image of a Gaussian random field could assign relative strengths or toughness with random variations that include spatial correlations.
The material models a phase transtition between a solid phase and a liquid phase. It is currently only in OSParticulas. The properties are:
History numbers of n>2 will return history number n-2 of the solid phase (if it has that history number.
This type of material is actually two materials in one, depending on the value for its direction
property (which is defined below):
direction
is 0 through 7, the material is not really a material and points that are this type of rigid material will not really be part of the MPM analysis. These rigid material points are used to set boundary conditions on the grid that move with the particles. As the rigid material points move through the grid, all nodes connected to those points will be assigned grid-based boundary conditions for the selected particle properties of velocity, temperature, and/or concentration. To have the boundary condition vary in time, time step, and position, use the settingFunction(2)(3)
and valueFunction
properties below to set the value rather than using the initial particle properties to pick a constant value.
direction
is 8, the material will correspond to actual material points that moves through the analysis. Since they are rigid, they will move with their prescribed velocity. They will interact with other material points only through multimaterial contact or imperfect interface laws and thus this type of rigid material can only be used in multimaterial mode MPM calculations.
For more details and these two types of rigid materials, see the OSUPdocs wiki. The properties are:
direction
to set various combinations of velocity directions. The options 1 through 7 set grid velocities to various components of the rigid particle velocity by bit-wise selection with first three bits being for x, y, and z directions (or R, Z, θ if axisymmetric). A value of 0 sets no direction:
Value | Binary | Set Directions |
---|---|---|
0 | 0x000 | no direction |
1 | 0x001 | x only |
2 | 0x010 | y only |
3 | 0x011 | x and y |
4 | 0x100 | z only |
5 | 0x101 | x and z |
6 | 0x110 | y and z |
7 | 0x111 | x, y, and z |
temperature
should be 1 to set temperature boundary condition or 0 to not set it (usually it is either set to 1 or omitted from the material definition). Can only be used if direction
is 0 through 7.concentration
should be 1 to set concentration boundary condition or 0 to not set it (usually it is either set to 1 or omitted from the material definition). Can only be used if direction
is 0 through 7.settingFunction
(or settingFunction1
), settingFunction2
, and settingFunction3
to enter a user-defined function of time, time step, and position. The function should evaluate to the velocity in velocity units. The initial velocity assigned to the rigid particles when they are created in Region commands will be ignored.
SetDirection
1 to 7 the functions must be given in order (settingFunction
, settingFunction2
, and settingFunction3
) and apply to the set velocities in order (e.g., when controlling y
and z
with direction
=6, the settingFunction
is for y
direction and settingFunction2
is for z
direction).
direction
of 8, the three functions are for setting x
, y
, and z
directions and zero to three can be used. Any not controlled will use the initial particle velocity (you can use settingFunctionx
(or y
or z
) as synonyms for settingFunction1
(or 2
or 3
)) valueFunction
to enter a user-defined function of time, time step, and position. The function should evaluate to the temperature or concentration potential. The initial temperature or concentration assigned to the rigid particles when they are created in Region commands will be ignored.
mirrored
should be set to -1 or +1 to indicate that rigid particles with SetDirection = 1 to 7 are setting a velocity on the minimum edge (-1) or maximum edge (+1) of the object along the moving direction. This property can improve the performance of velocity boundary conditions as explained on the OSUPdocs wiki. The default setting of 0 means to not use mirroring. Note that when ExtrapolateRigid option is activated, this property is ignored.The code engines may provide materials that can be used but are not known to NairnFEAMPM. For example, a common way others can contribute to NairnMPM is to develop new material models. If such materials are created, you can fully use such materials in calculations run from NairnFEAMPM, even though this application may not know about them.
There are two kinds of development materials. The first are those fairly well developed and integrated in the source code distribution and its documentation. If you can read about a material in source code documentation (or on the OSUPDocs wiki), then it is likely you can enter it NairnFEAMPM just like fully-supported materials. In other words, you use a standard Material
block with one property on each line. The only difference is that there is no help on such materials here. Instead, you have to refer to the OSUPDocs wiki for that material. For each property listed in that documentation, you replace the XML
command with a NairnFEAMPM command where the NairnFEAMPM command is the XML
tag (and it is case sensitive) and the first (and only) argument is the value of the XML
tag. For example to enter a property documented as "<S1>1.35</S2>
", you would define it using "S1 1.25
".
The second kind of development materials are those developed by third parties without any parallel modifications to NairnFEAMPM. These types of materials can still be used, but you have to enter the material properties using XML
commands rather than built-in input commands, which is done by using the XMLData command. When using the XMLData command, you need to define a material ID that can be referenced by other input commands in the commands file. An example of such a defined material is
XMLData Material,"MGSCGL ID" <Material Type="17" Name="Tungsten"> <C0>4004</C0> <S1>1.35</S1> <S2>0</S2> <gamma0>1.64</gamma0> <G>160000</G> <rho>19.256</rho> <hardening>SCGL</hardening> <yield>2200</yield> <Cv>134</Cv> <GPpG0>0.01e-3</GPpG0> <GTpG0>-2.2e-4</GTpG0> <yieldMax>4000</yieldMax> <betahard>7.7</betahard> <nhard>0.13</nhard> </Material> EndXMLData
The "MGSCGL ID"
in the first line defines the material's ID. The XML
commands contained within the XMLData command define the material by using code engine methods.
The following material properties are common to all types of materials, although not used by all materials. These properties are only used in MPM analyses.
These are basic material properties
rho
for density in density units.Cv
for constant-strain heat capacity (in heat capacity units). Heat capacity is used when doing conduction calculations and/or coupled mechancial energy and by some material models. You do not need to enter a constant pressure heat capacity (Cp) because it is not needed. Some materials will output Cp by using thermodynamic relations for the difference between Cp and Cv, but Cp is never needed in calculations. When done correctly, simulations with Cv alone will automatically display different effective heat capacities for constant volume or constant pressure conditions. This behavior is most pronounced for an ideal gas.kCond
for thermal conductivity for isotropic materials (in conductivity units). Only used when doing conduction calculations.csat
The saturation concentration (in weight fraction) for diffusion calculations.beta
for concentration expansion coefficient for isotropic materials in strain/weight fraction.D
for diffusion constant for isotropic materials (in diffusion units). Only used when doing diffusion calculations.largeRotation
- to use (1) or not use (0, the default) polar decomposition when evaluating rotations. This option is only allowed for linear elastic and elastic-plastic or softening small strain materials. Option 1 uses polar decomposition to evaluate incremental rotation and uses that rotation to update strains and stresses. Option 0 use approximations of polar decomposition to rotate strain and stress updates (standard hypoelasticity). Both methods work for large rotations (provided the rotations are incrementally small). Option 1 may be more accurate while options 0 is more efficient.matDamping
- sets custom particle damping to apply only to particles of this material. Its value replaces global particle damping setting and must be a constant (function of time not allowed).matPIC
- sets custom PIC damping to apply only to particles of this material. Its value replaces the global PIC damping setting. Note that to use custom XPIC damping in materials, the global settings must activate XPIC and then the matPIC
property can change a material to use a different amount of XPIC or switch to FLIP. If the global settings are 100% FLIP, the matPIC
property can implement PIC, but not XPIC.color 0.1,0.5,0.2,1.0
:
Sets the color of the material with the four arguments being red, green, blue, and alpha values between 0.0 and 1.0. A single argument can be used instead to set gray level between 0.0 and 1.0 (with alpha=1.0). Three arguments set red, green, and blue with alpha=1.0. The color is used in material point method plots of material type. If no color is provided, a color will be picked from the current spectrum using the material number.
These properties set material properties that determine the fracture toughness of the material and control various aspects of crack propagation. Note that whether or not the properties are used depends on the selected criterion for crack growth.
JIc
for mode I critical J in energy release units. Only used when there is crack propagation with criteria 2, 3, or 7. For criterion 2, it is only used if the initTime is not being used.JIIc
for mode II critical J in energy release units.KIc
for mode I critical K in stress intensity units. Only used when there is crack propagation with criteria 1, 4, or 5.KIIc
for mode II critical K in stress intensity units. Only used when there is crack propagation with criterion 5.KIexp
for Exponent p in the elliptical criteria for crack growth. Only used for crack propagation with criterion 5.
KIIexp
for Exponent q in the elliptical criteria for crack growth. Only used for crack propagation with criterion 5.
delIc
for max ctod (length units) in opening direction. Only used when there is crack propagation by criterion 6.delIIc
for max ctod (length units) in sliding direction. Only used when there is crack propagation by criterion 6.initTime
for time (in alt time units) to start crack growth. Only used when there is crack propagation with criteria 2. For criterion 2, initTime
takes precedence of a JIc
property.speed
for crack speed (in alt velocity units) in steady state crack propagation. This speed, however, is only active when there is crack propagation with criterion 2. (also used in criterion 3 as the initial crack speed, but not meant there for general use)maxLength
for maximum crack length (in length units) for steady state crack propagation. The simulation will stop soon after crack reaches the input length. This limit, however, is only active when there is crack propagation with criterion 2.nmix
for exponent used in mixed-modes failure of some traction laws.allowsCracks
is set 1 to allow the material to have cracks or 0 to not allow cracks. The default is 1 for non-rigid materials and 0 for rigid materials. Setting a non-rigid material to 0 lets that material enter a crack in another material such as to simulate cutting, to wedge open a crack, or model hydraulic fracturing. The non-cracking material can open the crack in the other material by contact on its crack surfaces.gamma
surface energy in J in energy release units. Only used when there is crack propagation with criterion 3. Still in development and not meant for general use.p
for irreversible energy term in energy balance crack growth. It is dimensionless and probably should be between 0 and 1. Only used when there is crack propagation with criterion 3. Still in development and not meant for general use.gain
for gained used in feedback loop to maintain energy balance during crack growth. Only used when there is crack propagation with criterion 3. Still in development and not meant for general use.The criterion, direction, and traction properties (and the analogous alternate propagation properties) are set with following commands
criterion
to set crack growth criterion for this material
(see options in Propagate Command). A criterion set in a material overrides the Propagate Command setting.direction
to set optional crack growth direction for this material
(see options in Propagate Command). A direction set in a material overrides the Propagate Command setting.traction
to set optional traction law to create for crack propagation in this material (see Propagate Command for details). A traction law set in a material overrides the Propagate Command setting. The traction law can be set by material ID or by number (1, 2, etc.) where the number corresponds to the material number, in order, as defined by Material
commands. Numerical values are needed when you are using this option before the traction law material has been created.altcriterion
is identical to criterion
, but applies instead to the alternate crack growth criterion in the AltPropagate Command.altdirection
is identical to direction
, but applies instead to the alternate crack growth direction in the AltPropagate Command.alttraction
is identical to traction
, but applies instead to the alternate crack growth traction law material in the AltPropagate Command.constantTip
is 0 or where 1 means the crack tip will always uses that material even if the crack is in or moves to another material. This property is useful to have multiple cracks in the same material with different fracture properties by defining multiple materials that are identical except for fracture properties, defining problem with one of those materials, but use other materials for each crack tip's material. Default is 0.xGrow
and yGrow
: These properties (one or both with default 0) specify a unit vector for a constant crack growth direction. They only apply for crack propagation with criterion 2 and then only when that criterion selects the default propagation direction. The result is a constant crack growth direction regardless of stress state or crack tip orientation. Any input vector will be normalized to a unit vector. If constant crack growth directions with a fixed crack are located precisely on grid lines, it is possible for the crack algorithm to not recognize the crack plane. Is it better to move such a crack slightly off grid lines.
These commands allow custom contact properties for each material pair in multimaterial mode MPM:
Contact (lawID),(matID)
: this property sets a custom contact law (by its material ID in (lawID)
) to use for contact between this material and the material defined by (matID)
. You only need to enter a Contact
property for one of the two materials in each pair. Since you have to provide the other material's ID, you should use the Contact
command in the second material after the first one has already been defined (and after the contact law has been defined). Note that contact between materials used be set by two deprecated material properties (Friction
and Interface
).shareMatField (matID)
- set to another material (by material ID or number) to share material velocity field
with that material. Two (or more) materials sharing the same velocity field will move with perfect
contact (i.e., in a single velocity field) among themselves, but can interact with other
materials in different velocity fields by contact or interface laws. Materials sharing velocity fields must be compatible (e.g., all rigid or all nonrigid) and the material in (matID)
must not be sharing it's field.ArtificialVisc
can be on
or off
to turn artificial viscosity on or off. When it is on, it adds a pressure, Q, related to velocity gradient on the particle, but only when it is compressing. The equation is
Q = Δx*|Dkk|*(A1*C + A2*Δx*|Dkk|)where Δx is the cell size of the mesh, |Dkk| is the relative volume change rate, C is the bulk wave speed in the material, and A1 and A2 are adjustable constants, which are entered using the above
avA1
and avA2
properties. The defaults are artificial viscosity off, A1=0.2, and A2=2.0. It is common, but not required, to choose A2 = 10*A1.avA1
and avA2
to set the coefficients when artificial viscosity is on.Some materials support poroelasticity calculations and the properties in this section control pore pressure flow between particles and coupling between stress and strain and pore pressure. The properties to use depend on symmetry of the parent material.
Isotropic Poroelasticity Properties
Transversely Isotropic Poroelasticity Properties
Orthotropic Poroelasticity Properties