artisynth.core.materials
Class LinearMaterial

java.lang.Object
  extended by artisynth.core.materials.MaterialBase
      extended by artisynth.core.materials.FemMaterial
          extended by artisynth.core.materials.LinearMaterial
All Implemented Interfaces:
ScalableUnits, java.lang.Cloneable, CompositeProperty, HasProperties, Clonable, Scannable

public class LinearMaterial
extends FemMaterial


Field Summary
static PropertyList myProps
           
 
Constructor Summary
LinearMaterial()
           
LinearMaterial(double E, double nu)
           
LinearMaterial(double E, double nu, boolean corotated)
           
 
Method Summary
 void addStress(SymmetricMatrix3d sigma, SymmetricMatrix3d Eps, Matrix3dBase R)
          Computes the Cauchy stress from Cauchy strain and adds it to and existing stress.
 LinearMaterial clone()
          Returns a clone of this composite property.
 void computeStress(SymmetricMatrix3d sigma, SolidDeformation def, Matrix3d Q, FemMaterial baseMat)
           
 void computeTangent(Matrix6d D, SymmetricMatrix3d stress, SolidDeformation def, Matrix3d Q, FemMaterial baseMat)
           
 boolean equals(FemMaterial mat)
           
 PropertyList getAllPropertyInfo()
          Returns a list giving static information about all properties exported by this object.
 PropertyMode getCorotatedMode()
           
 double getPoissonsRatio()
           
 PropertyMode getPoissonsRatioMode()
           
 double getYoungsModulus()
           
 PropertyMode getYoungsModulusMode()
           
 boolean isCorotated()
           
 boolean isInvertible()
          Returns true if this material is defined for a deformation gradient with a non-positive determinant.
 void scaleDistance(double s)
          Scales all distance coordinates.
 void scaleMass(double s)
          Scales all mass units.
 void setCorotated(boolean enable)
           
 void setCorotatedMode(PropertyMode mode)
           
 void setPoissonsRatio(double nu)
           
 void setPoissonsRatioMode(PropertyMode mode)
           
 void setYoungsModulus(double E)
           
 void setYoungsModulusMode(PropertyMode mode)
           
 
Methods inherited from class artisynth.core.materials.FemMaterial
equals, getSubClasses, getViscoBehavior, isIncompressible, isViscoelastic, setViscoBehavior
 
Methods inherited from class artisynth.core.materials.MaterialBase
getProperty, getPropertyHost, getPropertyInfo, hasProperty, hasSymmetricTangent, isWritable, scan, setPropertyHost, setPropertyInfo, tangentSymmetryChanged, updateMaterial, write
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myProps

public static PropertyList myProps
Constructor Detail

LinearMaterial

public LinearMaterial()

LinearMaterial

public LinearMaterial(double E,
                      double nu)

LinearMaterial

public LinearMaterial(double E,
                      double nu,
                      boolean corotated)
Method Detail

getAllPropertyInfo

public PropertyList getAllPropertyInfo()
Description copied from interface: HasProperties
Returns a list giving static information about all properties exported by this object.

Specified by:
getAllPropertyInfo in interface HasProperties
Overrides:
getAllPropertyInfo in class FemMaterial
Returns:
static information for all exported properties

isInvertible

public boolean isInvertible()
Description copied from class: FemMaterial
Returns true if this material is defined for a deformation gradient with a non-positive determinant.

Overrides:
isInvertible in class FemMaterial

setPoissonsRatio

public void setPoissonsRatio(double nu)

getPoissonsRatio

public double getPoissonsRatio()

setPoissonsRatioMode

public void setPoissonsRatioMode(PropertyMode mode)

getPoissonsRatioMode

public PropertyMode getPoissonsRatioMode()

setYoungsModulus

public void setYoungsModulus(double E)

getYoungsModulus

public double getYoungsModulus()

setYoungsModulusMode

public void setYoungsModulusMode(PropertyMode mode)

getYoungsModulusMode

public PropertyMode getYoungsModulusMode()

setCorotated

public void setCorotated(boolean enable)

isCorotated

public boolean isCorotated()

setCorotatedMode

public void setCorotatedMode(PropertyMode mode)

getCorotatedMode

public PropertyMode getCorotatedMode()

addStress

public void addStress(SymmetricMatrix3d sigma,
                      SymmetricMatrix3d Eps,
                      Matrix3dBase R)
Computes the Cauchy stress from Cauchy strain and adds it to and existing stress.

Parameters:
sigma - value to which stress should be added
Eps - Cauchy stress
R - (optional) Co-Rotation matrix, if any

computeStress

public void computeStress(SymmetricMatrix3d sigma,
                          SolidDeformation def,
                          Matrix3d Q,
                          FemMaterial baseMat)
Specified by:
computeStress in class FemMaterial

computeTangent

public void computeTangent(Matrix6d D,
                           SymmetricMatrix3d stress,
                           SolidDeformation def,
                           Matrix3d Q,
                           FemMaterial baseMat)
Specified by:
computeTangent in class FemMaterial

equals

public boolean equals(FemMaterial mat)
Overrides:
equals in class FemMaterial

clone

public LinearMaterial clone()
Description copied from interface: CompositeProperty
Returns a clone of this composite property.

Specified by:
clone in interface CompositeProperty
Specified by:
clone in interface Clonable
Overrides:
clone in class FemMaterial
Returns:
clone of this property

scaleDistance

public void scaleDistance(double s)
Description copied from interface: ScalableUnits
Scales all distance coordinates.

Specified by:
scaleDistance in interface ScalableUnits
Overrides:
scaleDistance in class MaterialBase
Parameters:
s - scaling factor

scaleMass

public void scaleMass(double s)
Description copied from interface: ScalableUnits
Scales all mass units.

Specified by:
scaleMass in interface ScalableUnits
Overrides:
scaleMass in class MaterialBase
Parameters:
s - scaling factor