artisynth.core.materials
Class UnidirectionalLinearAxialMaterial

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

public class UnidirectionalLinearAxialMaterial
extends LinearAxialMaterial

If distance is less than rest length, applies no force

Author:
"Antonio Sanchez" Creation date: 25 Jan 2013

Field Summary
 
Fields inherited from class artisynth.core.materials.LinearAxialMaterial
myProps
 
Constructor Summary
UnidirectionalLinearAxialMaterial()
           
UnidirectionalLinearAxialMaterial(double k, double d)
           
 
Method Summary
 LinearAxialMaterial clone()
          Returns a clone of this composite property.
 double computeDFdl(double l, double ldot, double l0, double excitation)
           
 double computeF(double l, double ldot, double l0, double excitation)
           
 boolean equals(AxialMaterial mat)
           
 boolean isDFdldotZero()
          Returns true if computeDFdldot() always returns zero.
 
Methods inherited from class artisynth.core.materials.LinearAxialMaterial
computeDFdldot, getAllPropertyInfo, getDamping, getDampingMode, getStiffness, getStiffnessMode, scaleDistance, scaleMass, setDamping, setDampingMode, setStiffness, setStiffnessMode
 
Methods inherited from class artisynth.core.materials.AxialMaterial
equals, getSubClasses
 
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
 

Constructor Detail

UnidirectionalLinearAxialMaterial

public UnidirectionalLinearAxialMaterial()

UnidirectionalLinearAxialMaterial

public UnidirectionalLinearAxialMaterial(double k,
                                         double d)
Method Detail

computeF

public double computeF(double l,
                       double ldot,
                       double l0,
                       double excitation)
Overrides:
computeF in class LinearAxialMaterial

computeDFdl

public double computeDFdl(double l,
                          double ldot,
                          double l0,
                          double excitation)
Overrides:
computeDFdl in class LinearAxialMaterial

isDFdldotZero

public boolean isDFdldotZero()
Description copied from class: AxialMaterial
Returns true if computeDFdldot() always returns zero. For a linear spring, this simply means the damping is zero. When dFdldot is always 0, then stiffness matrix will be symmetric.

Overrides:
isDFdldotZero in class LinearAxialMaterial

equals

public boolean equals(AxialMaterial mat)
Overrides:
equals in class LinearAxialMaterial

clone

public LinearAxialMaterial 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 LinearAxialMaterial
Returns:
clone of this property