immrax.embedding#

class immrax.embedding.EmbeddingSystem#

Bases: System, ABC

Embeds a System

..math::

mathbb{R}^n times text{inputs} tomathbb{R}^n`

into an Embedding System evolving on the upper triangle

..math::

mathcal{T}^{2n} times text{embedded inputs} to mathbb{T}^{2n}.

Methods

E(t, x, *args, **kwargs)

The right hand side of the embedding system.

__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, *args, **kwargs)

The right hand side of the system

sys: System#
abstractmethod E(t: Integer | Float, x: Array, *args, **kwargs) Array#

The right hand side of the embedding system.

Parameters:
tUnion[Integer, Float]

The time of the embedding system.

xjax.Array

The state of the embedding system.

*args

interval-valued control inputs, disturbance inputs, etc. Depends on parent class.

**kwargs
Returns:
jax.Array

The time evolution of the state on the upper triangle

f(t: Integer | Float, x: Array, *args, **kwargs) Array#

The right hand side of the system

Parameters:
tUnion[Integer, Float]

The time of the system

xjax.Array

The state of the system

*args

Inputs (control, disturbance, etc.) as positional arguments depending on parent class.

**kwargs

Other keyword arguments depending on parent class.

Returns:
jax.Array

The time evolution of the state

class immrax.embedding.InclusionEmbedding(sys: System, F: Callable[[...], Interval], Fi: Callable[[...], Interval] | None = None)#

Bases: EmbeddingSystem

Embeds a System

..math::

mathbb{R}^n times text{inputs} tomathbb{R}^n`,

into an Embedding System evolving on the upper triangle

..math::

mathcal{T}^{2n} times text{embedded inputs} to mathbb{T}^{2n},

using an Inclusion Function for the dynamics f.

Methods

E(t, x, *args[, refine])

The right hand side of the embedding system.

__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, *args, **kwargs)

The right hand side of the system

Initialize an EmbeddingSystem using a System and an inclusion function for f.

Args:

sys (System): The system to be embedded if_transform (InclusionFunction): An inclusion function for f.

Methods

E(t, x, *args[, refine])

The right hand side of the embedding system.

__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, *args, **kwargs)

The right hand side of the system

Fi: Callable[[...], Interval]#
sys: System#
F: Callable[[...], Interval]#
E(t: Any, x: Array, *args, refine: Callable[[Interval], Interval] | None = None, **kwargs) Array#

The right hand side of the embedding system.

Parameters:
tUnion[Integer, Float]

The time of the embedding system.

xjax.Array

The state of the embedding system.

*args

interval-valued control inputs, disturbance inputs, etc. Depends on parent class.

**kwargs
Returns:
jax.Array

The time evolution of the state on the upper triangle

class immrax.embedding.TransformEmbedding(sys: ~immrax.system.System, if_transform=<function natif>)#

Bases: InclusionEmbedding

Initialize an EmbeddingSystem using a System and an inclusion function transform.

Parameters:
sysSystem

_description_

if_transformIFTransform

_description_. Defaults to natif.

Methods

E(t, x, *args[, refine])

The right hand side of the embedding system.

__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, *args, **kwargs)

The right hand side of the system

Returns:
immrax.embedding.ifemb(sys: System, F: Callable[[...], Interval])#

Creates an EmbeddingSystem using an inclusion function for the dynamics of a System.

Parameters:
sysSystem

System to embed

FCallable[…, Interval]

Inclusion function for the dynamics of sys.

Returns:
EmbeddingSystem

Embedding system from the inclusion function transform.

immrax.embedding.natemb(sys: System)#

Creates an EmbeddingSystem using the natural inclusion function of the dynamics of a System.

Parameters:
sysSystem

System to embed

Returns:
EmbeddingSystem

Embedding system from the natural inclusion function transform.

immrax.embedding.jacemb(sys: System)#

Creates an EmbeddingSystem using the Jacobian-based inclusion function of the dynamics of a System.

Parameters:
sysSystem

System to embed

Returns:
EmbeddingSystem

Embedding system from the Jacobian-based inclusion function transform.

immrax.embedding.mjacemb(sys: System)#

Creates an EmbeddingSystem using the Mixed Jacobian-based inclusion function of the dynamics of a System.

Parameters:
sysSystem

System to embed

Returns:
EmbeddingSystem

Embedding system from the Mixed Jacobian-based inclusion function transform.

immrax.embedding.embed(F: Callable[[...], Interval])#
immrax.embedding.get_faces(ix: Interval) tuple[Interval, Interval]#