public static class HillMuscle.Dynamics extends java.lang.Object implements DynamicalSystem
Constructor and Description |
---|
HillMuscle.Dynamics(float tauEA,
float maxIsometricForce,
Function CEForceLength,
Function CEForceVelocity,
Function SEForceLength,
boolean torque) |
Modifier and Type | Method and Description |
---|---|
DynamicalSystem |
clone() |
float[] |
f(float t,
float[] u)
The dynamic equation.
|
float[] |
g(float t,
float[] u)
The output equation.
|
Configuration |
getConfiguration() |
int |
getInputDimension() |
int |
getOutputDimension() |
Units |
getOutputUnits(int outputDimension) |
float[] |
getState() |
void |
setState(float[] state) |
public HillMuscle.Dynamics(float tauEA, float maxIsometricForce, Function CEForceLength, Function CEForceVelocity, Function SEForceLength, boolean torque)
tauEA
- see Hill modelmaxIsometricForce
- Isometric force produced by CE at maximal activation and optimal lengthCEForceLength
- see Hill modelCEForceVelocity
- see Hill modelSEForceLength
- see Hill modeltorque
- true indicates a torque muscle (input in rads, output in Nm); false indicates
a linear muscle (input in m, output in N)public Configuration getConfiguration()
public float[] f(float t, float[] u)
DynamicalSystem
f
in interface DynamicalSystem
t
- Simulation time (s)u
- Input: [excitation (0-1), muscle-tendon length, muscle-tendon lengthening velocity]DynamicalSystem.f(float, float[])
public float[] g(float t, float[] u)
DynamicalSystem
g
in interface DynamicalSystem
t
- Simulation time (s)u
- Input: [excitation (0-1), muscle-tendon length, muscle-tendon lengthening velocity]DynamicalSystem.g(float, float[])
public float[] getState()
getState
in interface DynamicalSystem
DynamicalSystem.getState()
public void setState(float[] state)
setState
in interface DynamicalSystem
state
- [activation, CE length]DynamicalSystem.setState(float[])
public int getInputDimension()
getInputDimension
in interface DynamicalSystem
DynamicalSystem.getInputDimension()
public int getOutputDimension()
getOutputDimension
in interface DynamicalSystem
DynamicalSystem.getOutputDimension()
public Units getOutputUnits(int outputDimension)
getOutputUnits
in interface DynamicalSystem
outputDimension
- Numbered from 0DynamicalSystem.getOutputUnits(int)
public DynamicalSystem clone() throws java.lang.CloneNotSupportedException
clone
in interface DynamicalSystem
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
- if something causes clone not to workDynamicalSystem.clone()