# Class FirstOrderLinearTIDS¶

class FirstOrderLinearTIDS : public FirstOrderLinearDS

First order linear and time-invariant coeff systems - $$M \dot x = Ax(t)+ b + r, x(t_0)=x_0$$.

This class represents first order linear systems of the form:

$M\dot x(t) = A x(t) + b + r, x(t_0)=x_0$

where

• $$x \in R^{n}$$ is the state,

• $$r \in R^{n}$$ the input due to the Non Smooth Interaction.

• $$M \in R^{n\times n}$$ is a constant invertible matrix

• $$A \in R^{n\times n}$$

• $$b \in R^{n}$$

No plugged operators for this class.

Right-hand side computation

virtual void initRhs(double time)

Initialization function for the rhs and its jacobian.

Parameters
• time: of initialization.

void computeRhs(double time)

Default function to the right-hand side term.

Parameters
• time: current time

void computeJacobianRhsx(double time)

Default function to jacobian of the right-hand side term according to x.

Parameters
• time: current time

Miscellaneous public methods

void display(bool brief = true) const

data display on screen

Public Functions

FirstOrderLinearTIDS(SP::SiconosVector x0, SP::SiconosMatrix A)

initial state and constant A matrix

Parameters
• x0: the initial state vector

• A: the A matrix

FirstOrderLinearTIDS(SP::SiconosVector x0, SP::SiconosMatrix A, SP::SiconosVector b)

initial state, constant A matrix, constant b vector

Parameters
• x0: the initial state vector

• A: matrix

• b: vector

FirstOrderLinearTIDS(const FirstOrderLinearTIDS &FOLTIDS)

Copy constructor.

Parameters

~FirstOrderLinearTIDS()

destructor

virtual void updatePlugins(double time)

Dumb function, there is no plugin here.

Parameters
• time: unused