public abstract class FemMaterial extends MaterialBase implements PropertyChangeListener
| Modifier and Type | Field and Description |
|---|---|
static FieldPropertyList |
myProps |
| Constructor and Description |
|---|
FemMaterial() |
| Modifier and Type | Method and Description |
|---|---|
static void |
cauchyToSecondPKStress(SymmetricMatrix3d S,
SymmetricMatrix3d sigma,
DeformedPoint def)
Computes the second Piola-Kirchoff stress tensor from the Cauchy stress,
according to the formula
S = J F^{-1} sigma F^{-T}
|
FemMaterial |
clone()
Returns a clone of this composite property.
|
void |
computeDevLeftCauchyGreen(SymmetricMatrix3d BD,
DeformedPoint def)
Computes the left deviatoric Cauchy-Green tensor from the deformation
gradient.
|
void |
computeDevRightCauchyGreen(SymmetricMatrix3d CD,
DeformedPoint def)
Computes the right deviatoric Cauchy-Green tensor from the deformation
gradient.
|
void |
computeLeftCauchyGreen(SymmetricMatrix3d B,
DeformedPoint def)
Computes the left Cauchy-Green tensor from the deformation gradient.
|
void |
computeRightCauchyGreen(SymmetricMatrix3d C,
DeformedPoint def)
Computes the right Cauchy-Green tensor from the deformation gradient.
|
abstract double |
computeStrainEnergyDensity(DeformedPoint def,
Matrix3d Q,
double excitation,
MaterialStateObject state)
Computes the current strain energy density.
|
abstract void |
computeStressAndTangent(SymmetricMatrix3d sigma,
Matrix6d D,
DeformedPoint def,
Matrix3d Q,
double excitation,
MaterialStateObject state)
Computes the current Cauchy stress and tangent stiffness matrix.
|
MaterialStateObject |
createStateObject() |
boolean |
equals(FemMaterial mat) |
FieldPropertyList |
getAllPropertyInfo()
Returns a list giving static information about all properties exported by
this object.
|
IncompressibleMaterialBase |
getIncompressibleComponent() |
static java.lang.Class<?>[] |
getSubClasses() |
boolean |
hasState() |
boolean |
isCorotated()
Deformation is computed by first removing a rotation component
(either explicit or computed from strain)
|
boolean |
isIncompressible() |
boolean |
isInvertible()
Returns true if this material is defined for a deformation gradient
with a non-positive determinant.
|
boolean |
isLinear()
Linear stress/stiffness response to deformation, allows tangent
to be pre-computed and stored.
|
void |
propertyChanged(PropertyChangeEvent e) |
static void |
registerSubclass(java.lang.Class<? extends FemMaterial> cls)
Allow adding of classes (for use in control panels)
|
static void |
secondPKToCauchyStress(SymmetricMatrix3d sigma,
SymmetricMatrix3d S,
DeformedPoint def)
Computes the Cauchy stress from the second Piola-Kirchoff stress tensor,
according to the formula
sigma = 1/J F sigma F^T
|
void |
writeItems(java.io.PrintWriter pw,
NumberFormat fmt,
CompositeComponent ancestor) |
advanceState, getProperty, getPropertyHost, getPropertyInfo, hasProperty, hasSymmetricTangent, isWritable, postscan, scaleDistance, scaleMass, scan, setPropertyHost, setPropertyInfo, symmetryOrStateChanged, updateMaterial, writepublic static FieldPropertyList myProps
public static void registerSubclass(java.lang.Class<? extends FemMaterial> cls)
cls - class to registerpublic static java.lang.Class<?>[] getSubClasses()
public void propertyChanged(PropertyChangeEvent e)
propertyChanged in interface PropertyChangeListenerpublic FieldPropertyList getAllPropertyInfo()
HasPropertiesgetAllPropertyInfo in interface HasPropertiesgetAllPropertyInfo in class MaterialBasepublic abstract void computeStressAndTangent(SymmetricMatrix3d sigma, Matrix6d D, DeformedPoint def, Matrix3d Q, double excitation, MaterialStateObject state)
sigma - returns the Cauchy stressD - optional; if non-null, returns the tangent matrixdef - deformation information, including deformation gradient and
pressureQ - coordinate frame specifying directions of anisotropyexcitation - current excitation valuestate - material state information, or null if the
material does not have state.public abstract double computeStrainEnergyDensity(DeformedPoint def, Matrix3d Q, double excitation, MaterialStateObject state)
def - deformation information, including deformation gradient and
pressureQ - coordinate frame specifying directions of anisotropyexcitation - current excitation valuestate - material state information, or null if the
material does not have state.public boolean isInvertible()
public boolean isIncompressible()
public IncompressibleMaterialBase getIncompressibleComponent()
public boolean isLinear()
public boolean isCorotated()
public boolean equals(FemMaterial mat)
public void computeRightCauchyGreen(SymmetricMatrix3d C, DeformedPoint def)
public void computeLeftCauchyGreen(SymmetricMatrix3d B, DeformedPoint def)
public void computeDevRightCauchyGreen(SymmetricMatrix3d CD, DeformedPoint def)
public void computeDevLeftCauchyGreen(SymmetricMatrix3d BD, DeformedPoint def)
public static void cauchyToSecondPKStress(SymmetricMatrix3d S, SymmetricMatrix3d sigma, DeformedPoint def)
public static void secondPKToCauchyStress(SymmetricMatrix3d sigma, SymmetricMatrix3d S, DeformedPoint def)
public boolean hasState()
hasState in interface HasMaterialStatehasState in class MaterialBasepublic MaterialStateObject createStateObject()
createStateObject in interface HasMaterialStatecreateStateObject in class MaterialBasepublic void writeItems(java.io.PrintWriter pw,
NumberFormat fmt,
CompositeComponent ancestor)
throws java.io.IOException
writeItems in class MaterialBasejava.io.IOExceptionpublic FemMaterial clone()
CompositePropertyclone in interface CompositePropertyclone in interface Clonableclone in class MaterialBase