Package-level declarations

State-space plant types: the generic Model interface, the discretized LinearModel used by LQRController and KalmanFilter, and MotionState, the typed kinematic state shared by PID, feedforward, and profiling code.

Types

Link copied to clipboard
class LinearModel<State : Nat, Input : Nat, Output : Nat> @JvmOverloads constructor(val A: Matrix<State, State>, val B: Matrix<State, Input>, val C: Matrix<Output, State>, val D: Matrix<Output, Input>, val dt: Double = 0.05) : Model<State, Input, Output>
Link copied to clipboard
interface Model<State : Nat, Input : Nat, Output : Nat>
Link copied to clipboard
data class MotionState<U : Unit<U>> @JvmOverloads constructor(val position: Measure<U>, val velocity: Per<U, TimeUnit> = position.unit.per(Seconds).of(0.0), val acceleration: Per<PerUnit<U, TimeUnit>, TimeUnit> = position.unit.per( Seconds, ).per(Seconds).of(0.0))

The kinematic state of a system, parameterized by position unit type.