public class PeckAxialMuscle extends AxialMuscleMaterial
DEFAULT_DAMPING, DEFAULT_MAX_FORCE, DEFAULT_MAX_LENGTH, DEFAULT_OPT_LENGTH, DEFAULT_PASSIVE_FRACTION, DEFAULT_SCALING, DEFAULT_TENDON_RATIO, maxStretch, minStretch, myProps
Constructor and Description |
---|
PeckAxialMuscle()
Constructs a new PeckAxialMuscle.
|
PeckAxialMuscle(double fmax,
double lopt,
double lmax,
double tratio,
double pfrac)
Deprecated.
For historical reasons, this constructor sets the deprecated
forceScaling property to 1000, thus scaling the effective value
of fmax . |
PeckAxialMuscle(double fmax,
double lopt,
double lmax,
double tratio,
double pfrac,
double damping)
Deprecated.
For historical reasons, this constructor sets the deprecated
forceScaling property to 1000, thus scaling the effective values
of fmax and damping . |
Modifier and Type | Method and Description |
---|---|
double |
computeDFdl(double l,
double ldot,
double l0,
double ex)
Computes and returns the derivative of the axial spring tension
with respect to the length.
|
double |
computeDFdldot(double l,
double ldot,
double l0,
double ex)
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 ex)
Computes and returns the axial spring tension, as a function of
length, length time derivative, rest length, and excitation.
|
static PeckAxialMuscle |
create()
Creates a new PeckAxialMuscle with default values.
|
static PeckAxialMuscle |
create(double fmax,
double lopt,
double lmax,
double tratio,
double pfrac)
Creates a new PeckAxialMuscle with specified values.
|
static PeckAxialMuscle |
create(double fmax,
double lopt,
double lmax,
double tratio,
double pfrac,
double damping)
Creates a new PeckAxialMuscle with specified values.
|
boolean |
isDFdldotZero()
Returns true if computeDFdldot() always returns zero.
|
static void |
main(java.lang.String[] args) |
void |
writeForceLengthCurve(java.lang.String fileName,
double x0,
double x1,
int npnts,
java.lang.String fmtStr) |
clone, equals, getAllPropertyInfo, getDamping, getDampingMode, getForceScaling, getForceScalingMode, getMaxForce, getMaxForceMode, getMaxLength, getMaxLengthMode, getOptLength, getOptLengthMode, getPassiveFraction, getPassiveFractionMode, getSubClasses, getTendonRatio, getTendonRatioMode, normalizeForceScaling, scaleDistance, scaleMass, setAxialMuscleMaterialProps, setDamping, setDampingMode, setForceScaling, setForceScalingMode, setMaxForce, setMaxForceMode, setMaxLength, setMaxLengthMode, setOptLength, setOptLengthMode, setPassiveFraction, setPassiveFractionMode, setTendonRatio, setTendonRatioMode, toString
equals
advanceState, createStateObject, getProperty, getPropertyHost, getPropertyInfo, hasProperty, hasState, hasSymmetricTangent, isWritable, postscan, scan, setPropertyHost, setPropertyInfo, symmetryOrStateChanged, updateMaterial, write, writeItems
public PeckAxialMuscle()
Important: for historical reasons, this constructor sets the
deprecated forceScaling
property to 1000, thus scaling the
effective values of the maxForce
and damping
properties.
public PeckAxialMuscle(double fmax, double lopt, double lmax, double tratio, double pfrac)
forceScaling
property to 1000, thus scaling the effective value
of fmax
.fmax
- maximum contractile forcelopt
- length at which maximum active force is generatedlmax
- length at which maximum passive force is generatedtratio
- tendon to fibre length ratiopfrac
- passive fraction (of fmax
) that forms the maximum
passive forcepublic PeckAxialMuscle(double fmax, double lopt, double lmax, double tratio, double pfrac, double damping)
forceScaling
property to 1000, thus scaling the effective values
of fmax
and damping
.fmax
- maximum contractile forcelopt
- length at which maximum active force is generatedlmax
- length at which maximum passive force is generatedtratio
- tendon to fibre length ratiopfrac
- passive fraction (of fmax
) that forms the maximum
passive forcedamping
- damping parameterpublic static PeckAxialMuscle create()
forceScaling
property is set to 1.public static PeckAxialMuscle create(double fmax, double lopt, double lmax, double tratio, double pfrac)
forceScaling
property is set to
1.fmax
- maximum contractile forcelopt
- length at which maximum active force is generatedlmax
- length at which maximum passive force is generatedtratio
- tendon to fibre length ratiopfrac
- passive fraction (of fmax
) that forms the maximum
passive forcepublic static PeckAxialMuscle create(double fmax, double lopt, double lmax, double tratio, double pfrac, double damping)
forceScaling
property is set to 1.fmax
- maximum contractile forcelopt
- length at which maximum active force is generatedlmax
- length at which maximum passive force is generatedtratio
- tendon to fibre length ratiopfrac
- passive fraction (of fmax
) that forms the maximum
passive forcedamping
- damping parameterpublic double computeF(double l, double ldot, double l0, double ex)
AxialMaterial
computeF
in class AxialMaterial
l
- spring lengthldot
- spring length time derivativel0
- spring rest lengthex
- excitation value (varying from 0 to 1)public double computeDFdl(double l, double ldot, double l0, double ex)
AxialMaterial
computeDFdl
in class AxialMaterial
l
- spring lengthldot
- spring length time derivativel0
- spring rest lengthex
- excitation value (varying from 0 to 1)public double computeDFdldot(double l, double ldot, double l0, double ex)
AxialMaterial
computeDFdldot
in class AxialMaterial
l
- spring lengthldot
- spring length time derivativel0
- spring rest lengthex
- excitation value (varying from 0 to 1)public boolean isDFdldotZero()
AxialMaterial
isDFdldotZero
in class AxialMaterial
public void writeForceLengthCurve(java.lang.String fileName, double x0, double x1, int npnts, java.lang.String fmtStr) throws java.io.IOException
java.io.IOException
public static void main(java.lang.String[] args) throws java.io.IOException
java.io.IOException