Class FirstOrderR#
Defined in Program listing for file kernel/src/modelingTools/FirstOrderR.hpp
-
class FirstOrderR : public Relation#
FirstOrder Relation.
This is an abstract class for all relation operating on first order systems. The following subclasses can be used:
FirstOrderNonlinearR: for fully nonlinear relations: \( y = h(t, X, \lambda, Z) \) , \( R = g(t, X, \lambda, Z) \) .
FirstOrderType2R: specialization with \( y = h(t, X, \lambda, Z) \) , \( R = g(t, \lambda, Z) \) .
FirstOrderType1R: further specialization with \( y = h(t, X, Z) \) , \( R = g(t, \lambda, Z) \) .
FirstOrderLinearR: linear case: \( y = C(t)x + D(t)\lambda + F(t) z + e \) , \( R = B(t)\lambda \) .
FirstOrderLinearTIR: time-invariant linear case: \( y = Cx + D\lambda + F z + e \) , \( R = B\lambda \) .
If the relation involves only one DynamicalSystem, then \( R = r \) , \( X = x \) , and \( Z = z \) . With two, then \( R = [r_1, r_2] \), \( X = [x_1 x_2] \), and \( Z = [z_1 z_2] \) .
Remember that \( y \) and \( \lambda \) are relation from the Interaction, and have the same size.
Subclassed by FirstOrderLinearR, FirstOrderLinearTIR, FirstOrderNonLinearR, FirstOrderType1R, FirstOrderType2R
Public Functions
-
virtual ~FirstOrderR() noexcept = default#
destructor
-
virtual void initialize(Interaction &inter) override#
initialize the relation (check sizes, memory allocation …)
- Parameters:
inter – the interaction using this relation