Class LinearSystemUtil
java.lang.Object
org.wpilib.math.system.LinearSystemUtil
Linear system utilities.
-
Method Summary
Modifier and TypeMethodDescriptionisDetectable(Matrix<States, States> A, Matrix<Outputs, States> C) Returns true if (A, C) is a detectable pair.isStabilizable(Matrix<States, States> A, Matrix<States, Inputs> B) Returns true if (A, B) is a stabilizable pair.
-
Method Details
-
isStabilizable
public static <States extends Num, Inputs extends Num> boolean isStabilizable(Matrix<States, States> A, Matrix<States, Inputs> B) Returns true if (A, B) is a stabilizable pair.(A, B) is stabilizable if and only if the uncontrollable eigenvalues of A, if any, have absolute values less than one, where an eigenvalue is uncontrollable if rank([λI - A, B]) %3C n where n is the number of states.
- Type Parameters:
States- Num representing the size of A.Inputs- Num representing the columns of B.- Parameters:
A- System matrix.B- Input matrix.- Returns:
- If the system is stabilizable.
-
isDetectable
public static <States extends Num, Outputs extends Num> boolean isDetectable(Matrix<States, States> A, Matrix<Outputs, States> C) Returns true if (A, C) is a detectable pair.(A, C) is detectable if and only if the unobservable eigenvalues of A, if any, have absolute values less than one, where an eigenvalue is unobservable if rank([λI - A; C]) %3C n where n is the number of states.
- Type Parameters:
States- Num representing the size of A.Outputs- Num representing the rows of C.- Parameters:
A- System matrix.C- Output matrix.- Returns:
- If the system is detectable.
-