Relations¶
Relations are used to link local variables of the Interaction and global variables of the DynamicalSystems, and thus define constraints in the systems.
Relation is an abstract class which provides a generic interface for all types of relations.
Each relation has a type which correspond to the types of dynamical systems they fit with (FirstOrder or Lagrangian), a sub-type, (linear, non linear, scleronomous…).
Usually, “type+subtype” corresponds more or less to the name of the derived class.
Then, depending on the sub-class, each relation holds some plug-in functions or operators used to define the constraints. They are listed below for each available type of relation.
Available classes: FirstOrderR, FirstOrderLinearR, FirstOrderLinearTIR, LagrangianR, LagrangianRheonomousR, LagrangianScleronomousR, LagrangianCompliantR, LagrangianLinearR.
First Order Relations¶
Non Linear¶
Class FirstOrderR
We denote:
\(h\), \(g\) (and their jacobian according to \(X\) and \(\lambda\)) are defined with some plug-in functions. n
See the doxygen documentation of the class FirstOrderR to have a list of the set/get/compute functions.
Note: for the signification of \(X\), \(Z\), \(R\) see Interactions between dynamical systems
Linear¶
Class: FirstOrderLinearR
Plug-in functions are available for all operators.
Linear with Time Invariant Coefficients¶
Class FirstOrderLinearTIR
Lagrangian (second order) Relations¶
Scleronomous¶
Class LagrangianScleronomousR
The constraints depend only on the state,
with
Rheonomous¶
Class LagrangianRheonomousR
The constraints depend on time and state,
with
Compliant¶
Class: LagrangianCompliantR
The constraints depends on state and \(\lambda\), with a function of time for which \(\dot\lambda(t)\) makes sense.
with
Linear and Time Invariant Coefficients¶
Class: LagrangianLinearR
Lagrangian linear relations with time-invariant coefficients.
Relations plug-in functions¶
FirstOrderR: \(h(X,t,\lambda,Z), \ \ g(\lambda,t,Z)\)
FirstOrderLinearR: \(C(t,Z), \ \ F(t,Z), \ \ , D(t,Z), \ \ e(t,Z), B(t,Z)\)
LagrangianScleronomousR: \(h(Q,Z), \ \ G_0(Q,Z)\)
LagrangianRheonomousR: \(h(Q,t,Z), \ \ G_0(Q,t,Z), \ \ hdot(Q,t,Z)\)
LagrangianCompliantR: \(h(Q,\lambda,Z), \ \ G_0(Q,\lambda,Z), \ \ G_1(Q,\lambda,Z)\)