public class MaxwellAxialMaterial extends AxialMaterial implements HasNumericState
| Modifier and Type | Field and Description | 
|---|---|
static PropertyList | 
myProps  | 
| Constructor and Description | 
|---|
MaxwellAxialMaterial()  | 
MaxwellAxialMaterial(double k,
                    double d,
                    double sprLen)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
advanceState(double t0,
            double t1)
If  
HasNumericState.requiresAdvance() and HasNumericState.hasState() both return true, then this method is called each time step by the system integrator
 to update this component's state. | 
MaxwellAxialMaterial | 
clone()
Returns a clone of this composite property. 
 | 
double | 
computeDFdl(double l,
           double ldot,
           double l0,
           double excitation)
Computes and returns the derivative of the axial spring tension
 with respect to the length. 
 | 
double | 
computeDFdldot(double l,
              double ldot,
              double l0,
              double excitation)
Computes and returns the derivative of the axial spring tension
 with respect to the length time derivative. 
 | 
double | 
computeF(double l,
        double ldot,
        double l0,
        double excitation)
Computes and returns the axial spring tension, as a function of
 length, length time derivative, rest length, and excitation. 
 | 
boolean | 
equals(AxialMaterial mat)  | 
PropertyList | 
getAllPropertyInfo()
Returns a list giving static information about all properties exported by
 this object. 
 | 
double | 
getDamping()  | 
PropertyMode | 
getDampingMode()  | 
double | 
getSpringLength()  | 
void | 
getState(DataBuffer data)
Saves state information for this component by adding data to the
 supplied DataBuffer. 
 | 
double | 
getStiffness()  | 
PropertyMode | 
getStiffnessMode()  | 
boolean | 
hasState()
Returns  
true if this component currently holds state. | 
boolean | 
isDFdldotZero()
Returns true if computeDFdldot() always returns zero. 
 | 
boolean | 
requiresAdvance()
Returns  
true if the state of this component must be
 updated each time step using HasNumericState.advanceState(double, double). | 
void | 
scaleDistance(double s)
Scales all distance coordinates. 
 | 
void | 
scaleMass(double s)
Scales all mass units. 
 | 
void | 
setDamping(double d)  | 
void | 
setDampingMode(PropertyMode mode)  | 
void | 
setSpringLength(double l)  | 
void | 
setState(DataBuffer data)
Restores the state for this component by reading from the supplied
 data buffer, starting at the current buffer offsets. 
 | 
void | 
setStiffness(double E)  | 
void | 
setStiffnessMode(PropertyMode mode)  | 
equals, getSubClassesadvanceState, createStateObject, getProperty, getPropertyHost, getPropertyInfo, hasProperty, hasSymmetricTangent, isWritable, postscan, scan, setPropertyHost, setPropertyInfo, symmetryOrStateChanged, updateMaterial, write, writeItemsgetClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAuxVarDerivative, getAuxVarState, getStateVersion, numAuxVars, setAuxVarStatepublic static PropertyList myProps
public MaxwellAxialMaterial()
public MaxwellAxialMaterial(double k,
                            double d,
                            double sprLen)
public PropertyList getAllPropertyInfo()
HasPropertiesgetAllPropertyInfo in interface HasPropertiesgetAllPropertyInfo in class MaterialBasepublic double getStiffness()
public void setStiffness(double E)
public PropertyMode getStiffnessMode()
public void setStiffnessMode(PropertyMode mode)
public double getDamping()
public void setDamping(double d)
public PropertyMode getDampingMode()
public void setDampingMode(PropertyMode mode)
public double getSpringLength()
public void setSpringLength(double l)
public double computeF(double l,
                       double ldot,
                       double l0,
                       double excitation)
AxialMaterialcomputeF in class AxialMateriall - spring lengthldot - spring length time derivativel0 - spring rest lengthexcitation - excitation value (varying from 0 to 1)public double computeDFdl(double l,
                          double ldot,
                          double l0,
                          double excitation)
AxialMaterialcomputeDFdl in class AxialMateriall - spring lengthldot - spring length time derivativel0 - spring rest lengthexcitation - excitation value (varying from 0 to 1)public double computeDFdldot(double l,
                             double ldot,
                             double l0,
                             double excitation)
AxialMaterialcomputeDFdldot in class AxialMateriall - spring lengthldot - spring length time derivativel0 - spring rest lengthexcitation - excitation value (varying from 0 to 1)public boolean isDFdldotZero()
AxialMaterialisDFdldotZero in class AxialMaterialpublic boolean equals(AxialMaterial mat)
equals in class AxialMaterialpublic MaxwellAxialMaterial clone()
CompositePropertyclone in interface CompositePropertyclone in interface Clonableclone in class AxialMaterialpublic void scaleDistance(double s)
ScalableUnitsscaleDistance in interface ScalableUnitsscaleDistance in class MaterialBases - scaling factorpublic void scaleMass(double s)
ScalableUnitsscaleMass in interface ScalableUnitsscaleMass in class MaterialBases - scaling factorpublic boolean hasState()
HasNumericStatetrue if this component currently holds state.  This
 allows the presence of state to depend on the component's configuration.hasState in interface HasMaterialStatehasState in interface HasNumericStatehasState in class MaterialBasetrue if this component holds statepublic void setState(DataBuffer data)
HasNumericStatesetState in interface HasNumericStatedata - buffer containing the state informationpublic void getState(DataBuffer data)
HasNumericStategetState in interface HasNumericStatedata - buffer for storing the state values.public void advanceState(double t0,
                         double t1)
HasNumericStateHasNumericState.requiresAdvance() and HasNumericState.hasState() both return true, then this method is called each time step by the system integrator
 to update this component's state. For single step integrators, the method
 is called once at the start of the integration, with t0 and
 t1 set to the step's start and end times. For multi-step
 integrators (such as Runge Kutta), the method is called for each
 sub-step, with t0 and t1 set to the sub-step's time
 bounds.  Multi-step integrators will also use HasNumericState.getState(maspack.util.DataBuffer) and
 HasNumericState.setState(maspack.util.DataBuffer) to save and restore state as required.advanceState in interface HasNumericStatet0 - beginning time associated with the time step or sub-stept1 - end time associated with the time step or sub-steppublic boolean requiresAdvance()
true if the state of this component must be
 updated each time step using HasNumericState.advanceState(double, double).requiresAdvance in interface HasNumericStatetrue if advanceState must be called