public class CanonicalModel
extends java.lang.Object
Constructor and Description |
---|
CanonicalModel() |
Modifier and Type | Method and Description |
---|---|
static LTISystem |
changeTimeConstant(LTISystem system,
float tau) |
static float |
getDominantTimeConstant(LTISystem dynamics) |
static LTISystem |
getRealization(float[] numerator,
float[] denominator,
float passthrough)
Realizes a transfer function in the form:
|
static boolean |
isControllableCanonical(LTISystem system) |
public static LTISystem getRealization(float[] numerator, float[] denominator, float passthrough)
Realizes a transfer function in the form:
H(s) = d + (b1*s^(n-1) + b2*s^(n-2) + ... + bn) / (s^n + a1*s^(n-1) + ... + an).
numerator
- Coefficients of the numerator of a transfer function (b1 to bn above)denominator
- Coefficients of the denominator of a transfer function (a1 to an above)passthrough
- Passthrough value (d above). If your transfer function has numerator and denominator
of equal degree, divide them, give the result here, and give the remainder as the numerator
and denominator arguments, so that the new numerator will have degree less than denominator.
There is no state-space realization for TF with numerator degree > denominator degree.public static boolean isControllableCanonical(LTISystem system)
system
- Any SISO linear time-invariant systempublic static LTISystem changeTimeConstant(LTISystem system, float tau)
system
- An LTI system in controllable-canonical formtau
- A desired new time constantpublic static float getDominantTimeConstant(LTISystem dynamics)
dynamics
- A linear time-invariant dynamical system