# Class FirstOrderLinearTIR#

class FirstOrderLinearTIR : public FirstOrderR#

Linear Time Invariant Relation, derived from class FirstOrderR.

Linear Relation for First Order Dynamical Systems with time-independant operators

$\begin{split} y &=& Cx(t) + Fz + D\lambda + e \\ R &=& B\lambda \end{split}$

Public Functions

FirstOrderLinearTIR(SP::SimpleMatrix C, SP::SimpleMatrix B)#

create the Relation from a set of data

Parameters:
• C – the matrix C

• B – the matrix B

FirstOrderLinearTIR(SP::SimpleMatrix C, SP::SimpleMatrix D, SP::SimpleMatrix F, SP::SiconosVector e, SP::SimpleMatrix B)#

create the Relation from a set of data

Parameters:
• C – the C matrix

• D – the D matrix

• F – the F matrix

• e – the e matrix

• B – the B matrix

virtual ~FirstOrderLinearTIR() noexcept = default#

destructor

void computeh(const BlockVector &x, const SiconosVector &lambda, BlockVector &z, SiconosVector &y)#

default function to compute h = y = Cx(t) + Fz + Dlambda + e

Parameters:
• x

• lambda

• z

• y – the resulting vector

void computeg(const SiconosVector &lambda, BlockVector &r)#

default function to compute g = Blambda

Parameters:
• lambda

• r – non-smooth input

virtual void computeOutput(double time, Interaction &inter, unsigned int level = 0) override#

default function to compute y

Parameters:
virtual void computeInput(double time, Interaction &inter, unsigned int level = 0) override#

default function to compute r

Parameters:
virtual void display() const override#

print the data to the screen

inline void setePtr(SP::SiconosVector newe)#

set e

Parameters:

newe – the new value of e

inline SP::SiconosVector e() const#

get e

Returns:

e matrix

inline virtual bool isLinear() override#

determine if the Relation is linear

Returns:

true if the relation is linear.

inline virtual void computeJach(double time, Interaction &inter) override#

compute all the H Jacobian

Parameters:
• time – the current time

• inter – the interaction using this relation

inline virtual void computeJacg(double time, Interaction &inter) override#

compute all the G Jacobian

Parameters:
• time – the current time

• inter – the interaction using this relation

• interProp