vivyd.models.GeneralizedModel#

class GeneralizedModel(c_m=0.0, k_m=0.0, ca_m=0.0, B0=0.0, gamma=0.0, a=0.0, b=0.0, kappa=0.0, A0=0.0, A1=0.0, A2=0.0)[source]#

Bases: VIVModel, TaichiCompatibleInCollection

Generalized wake-oscillator model for vortex-induced vibrations on cylinders. In fact, the studied models herein can be written in the following form in a unified way. The structure’s equation of motion is written as

\[\ddot{y} + \frac{c}{m} \dot{y} + \frac{k}{m} y = B_0 q,\]

and the equation of the wake is written as

\[\ddot{q} + \gamma \left(a q^2 + b \dot{q}^2 - 1 \right) \dot{q} + \kappa q = A_2 \ddot{y} + A_1 \dot{y} + A_0 y.\]
Parameters:
  • c_m (float, optional) – Specific mechanical damping, \(c/m\). Default is 0.0.

  • k_m (float, optional) – Specific mechanical stiffness, \(k/m\). Default is 0.0.

  • ca_m (float, optional) – Specific aerodynamic damping, \(c_a/m\). Default is 0.0.

  • B0 (float, optional) – Wake-to-structure coupling parameter, \(B_0\). Default is 0.0.

  • gamma (float, optional) – Wake nonlinear damping coefficient, \(\gamma\). Default is 0.0.

  • a (float, optional) – Van der Pol wake nonlinearity parameter, \(a\). Default is 0.0.

  • b (float, optional) – Rayleigh wake nonlinearity parameter, \(b\). Default is 0.0.

  • kappa (float, optional) – Wake stiffness parameter, \(\kappa\). Default is 0.0.

  • A0 (float, optional) – Positional wake-to-structure coupling parameter, \(A_0\). Default is 0.0.

  • A1 (float, optional) – Velocity wake-to-structure coupling parameter, \(A_1\). Default is 0.0.

  • A2 (float, optional) – Acceleration wake-to-structure coupling parameter, \(A_2\). Default is 0.0.

Attributes#

property GeneralizedModel.params: list[float]#

Return the model parameters as a list, in the order they are defined in the constructor.

Methods#

GeneralizedModel.rhs(t, state, handle=<function GeneralizedModel.<lambda>>)[source]#

Compute the right-hand side of the system of ODEs.

Parameters:
  • t (float) – Time.

  • state (arrf64) – State vector indexed [y_dot, y, q_dot, q].

  • handle (Callable)

Returns:

Derivatives of the state vector indexed [dy_dot, dy, dq_dot, dq].

Return type:

arrf64