immrax.control#

class immrax.control.Control#

Bases: ABC

A feedback controller of the form \(u:\mathbb{R}\times\mathbb{R}^n\to\mathbb{R}^p\).

Methods

u(t, x)

Feedback Control Output

abstractmethod u(t: Integer | Float, x: Array) Array#

Feedback Control Output

Parameters:
t:Union[Integer, Float]
x:jax.Array
Returns:
class immrax.control.ControlledSystem(olsystem: OpenLoopSystem, control: Control)#

Bases: System

A closed-loop nonlinear dynamical system of the form

\[\dot{x} = f^{\textsf{c}}(x,w) = f(x,N(x),w),\]

where \(N:\mathbb{R}^n \to \mathbb{R}^p\).

Methods

__call__(*args, **kwargs)

Call self as a function.

compute_trajectory(t0, tf, x0[, inputs, dt, ...])

Computes the trajectory of the system from time t0 to tf with initial condition x0.

f(t, x, w)

Returns the value of the closed loop system

olsystem: OpenLoopSystem#
control: Control#
f(t: Integer | Float, x: Array, w: Array) Array#

Returns the value of the closed loop system

Parameters:
tUnion[Integer, Float]

time value

xjax.Array

state value

wjax.Array

disturbance value

Returns:
jax.Array

\(f^{\textsf{c}}(x,w) = f(x,N(x),w)\)

class immrax.control.LinearControl(K: Array)#

Bases: Control

Methods

u(t, x)

Feedback Control Output

K: Array#
u(t: Integer | Float, x: Array) Array#

Feedback Control Output

Parameters:
t:Union[Integer, Float]
x:jax.Array
Returns: