Formulation overview

Kynema was designed to solve flexible multibody problems that have been discretized into a collection of \(k_n\) nodes representing massless points, rigid bodies, and flexible-beam nodes, where each node has three translational degrees of freedom (DOFs) and three DOFs defining orientation. In general, a node’s DOFs are represented on the six-dimensional manifold, \(G\), with a Lie group structure, \(G \in \mathbb{R}^3 \times \mathrm{SO}(3)\), where \(\mathrm{SO}(3)\) is the group of \(3\times 3\) proper orthogonal linear transformations. For example, the generalized displacement for node \(i\) is the pair \((\underline{u}_i,\underline{\underline{R}}_i)\), where \(\underline{u}_i \in \mathbb{R}^3\) is the displacement and \(\underline{\underline{R}}_i\in\mathrm{SO(3)}\) is the relative rotation matrix. The associated composition operation is defined as \((\underline{u}_1,\underline{\underline{R}}_1)\circ(\underline{u}_2,\underline{\underline{R}}_2) = (\underline{u}_1+\underline{u}_2,\underline{\underline{R}}_1 \underline{\underline{R}}_2)\). We denote the generalized displacement and velocity for node \(i\) as

\[ \begin{align}\begin{aligned}[#eq:one]\\\begin{split}\underline{q}_i = \begin{bmatrix} \underline{u}_i \\ \underline{\underline{R}}_i \end{bmatrix} \,,\quad \underline{v}_i = \begin{bmatrix} \dot{\underline{u}}_i \\ \underline{\omega}_i \end{bmatrix} \,,\end{split}\end{aligned}\end{align} \]

respectively, where \(\underline{q}_i \in \mathbb{R}^3\times \mathrm{SO(3)}\), \(\underline{v}_i(t) \in \mathbb{R}^{6}\), an overdot denotes a time derivative, and

\[\begin{aligned} \underline{\omega}_i= \mathrm{axial}\left({\dot{\underline{\underline{R}}}\, \underline{\underline{R}}^T}\right) \end{aligned}\]

is the angular velocity, for which the axial vector is defined such that, for \(\underline{\underline{A}} \in \mathrm{SO(3)}\) with entries \(A_{ij}\),

\[\begin{split}\begin{aligned} \mathrm{axial}\left({\underline{\underline{A}}}\right) = \begin{bmatrix} A_{32}-A_{23} \\ A_{13}-A_{31} \\ A_{21}-A_{12} \end{bmatrix} \end{aligned}\end{split}\]

Note that in Kynema, degrees of freedom are defined in the inertial coordinate system.

For a discretized flexible multibody system with \(k_n\) nodes, the generalized displacement is organized as

\[\begin{split}\begin{aligned} \underline{q} = \begin{bmatrix} \underline{u}_1 \\ \underline{\underline{R}}_1 \\ \underline{u}_2 \\ \underline{\underline{R}}_2 \\ \vdots \\ \underline{u}_{k_n} \\ \underline{\underline{R}}_{k_n} \\ \end{bmatrix}\,, \quad \underline{v} = \begin{bmatrix} \dot{\underline{u}}_1 \\ \underline{\omega}_1 \\ \dot{\underline{u}}_2 \\ \underline{\omega}_2 \\ \vdots \\ \dot{\underline{u}}_{k_n} \\ \underline{\omega}_{k_n} \\ \end{bmatrix} \end{aligned}\end{split}\]

where \(\underline{q} \in \left[\underline{\underline{R}}^3 \times \mathrm{SO(3)} \right]^{k_n}\), \(\underline{v} \in \mathbb{R}^k\), \(k=6k_n\).

For a discretized flexible multibody system with \(k\) degrees of freedom and \(m\) kinematic constraints, Kynema is restricted to problems where the governing equations of motion and the constraint equations form a residual vector \(\underline{r}\in \mathbb{R}^{k+m}\) where

(1)\[\begin{split}\underline{r} = \begin{bmatrix} \underline{R} + \underline{\underline{B}}^T \underline{\lambda} \\ \underline{\Phi} \end{bmatrix}\end{split}\]

\(\underline{R}\left(\underline{q},\underline{v},\dot{\underline{v}}, t \right) \in \mathbb{R}^{k}\) is the unconstrained-equations-of-motion residual, \(\underline{\underline{B}}(\underline{q},t) \in \mathbb{R}^{m\times k}\) is the constraint-gradient matrix associated with the constraints \(\underline{\Phi}(\underline{q},t)\in \mathbb{R}^m\), and \(\underline{\lambda}\in \mathbb{R}^m\) are the Lagrange multipliers associated with the constraints. Kynema is restricted to problems for which the unconstrained-equations-of-motion residual can be written in the form

(2)\[\underline{R} = \underline{\underline{M}}(\underline{q}) \dot{\underline{v}} + \underline{g}(\underline{q},\underline{v},t) - \underline{f}(t) %+ \uu{B}^T(\u{q},t) \u{\lambda}(t)\]

where \(\underline{\underline{M}} \in \mathbb{R}^{k\times k}\) is the mass matrix and \(\underline{g} \in \mathbb{R}^k\) are internal and \(\underline{f} \in \mathbb{R}^k\) are external forces. The variation of Eq. (1) can be written

(3)\[\begin{split}\delta \underline{r} = \begin{bmatrix} \underline{\underline{M}}(\underline{q}) \delta \underline{\dot{v}} + \underline{\underline{G}}(\underline{q},\underline{v},t) \delta \underline{v} + \left[ \underline{\underline{K}}(\underline{q},\underline{v},\underline{\lambda},t) + \underline{\underline{K}}^\Phi(\underline{q},\underline{\lambda},t) \right] \delta \underline{q} + \underline{\underline{B}}^T \delta \underline{\lambda}\\ \underline{\underline{B}}\, \delta \underline{q} \end{bmatrix}\end{split}\]

where, \(\underline{\underline{G}}, \underline{\underline{K}} \in \mathbb{R}^{k \times k}\) are the linearized damping and stiffness matrices, respectively, \(\underline{\underline{K}}^\Phi \in \mathbb{R}^{k \times k}\) is the stiffness matrix associated with the constraint forces,

\[\begin{split}\begin{aligned} \delta \underline{q} = \begin{bmatrix} \delta \underline{u}_1 \\ \delta \underline{\theta}_1\\ \delta \underline{u}_2 \\ \delta \underline{\theta}_2\\ \vdots \\ \delta \underline{u}_{k_n} \\ \delta \underline{\theta}_{k_n}\\ \end{bmatrix}\,, \quad \delta \underline{v} = \begin{bmatrix} \delta \dot{\underline{u}}_1 \\ \delta \underline{\omega}_1\\ \delta \dot{\underline{u}}_2 \\ \delta \underline{\omega}_2\\ \vdots \\ \delta \dot{\underline{u}}_{k_n} \\ \delta \underline{\omega}_{k_n}\\ \end{bmatrix} \end{aligned}\end{split}\]

\(\delta \underline{q}, \delta \underline{v} \in \mathbb{R}^k\), and \(\delta \underline{u}_i, \delta \underline{\theta}_i \in \mathbb{R}^3\) are the virtual displacement and virtual rotation, respectively, in inertial coordinates associated with node \(i\).

In the following, we describe the time-integration algorithm for index-3 differential-algebraic-equation (DAE-3) systems, which is the backbone of the Kynema framework. We then discuss the governing equations for a single rigid body, and then the theory and numerical discretization for flexible beams and practical consideration in modeling wind turbine blades. The full constrained system for a land-based turbine is described, including the interface for fluid-structure-interaction simulations where the fluid is simulated by an external solver. We finish the formulation with a description of the computational implementation.