Blade-element aerodynamics solver
In this section we describe the theory for a simple blade-element solver
for fluid-structure interaction calculations.
For beams coupled to an aerodynamic solver, we follow the WindIO
requirement that the aerodynamic reference line is the same as the
structure reference line.
MAS: blade-root coordinate system
MAS: ADD IMAGE
MAS: scratching out some practial details
Initialization
Our blade-element solver requires the following user inputs for each
beam:
\(\eta^\mathrm{ac}_j \in [0,1]\),
\(j\in\{1,\ldots n^\mathrm{ac}\}\), where
\(\eta^\mathrm{ac}_j\) are the nondimensional locations of the
aerodynamic sections along the reference line and
\(n^\mathrm{ac}\) is the number of aerodynamic sections.
\(\tau^\mathrm{ac}_j\) is the section aerodynamic twist
\(c^\mathrm{ac}_j\) is the section chord length
location of the aerodynamic center in the local aerodynamic section
plane with respect to the reference line; \(y_j^\mathrm{ac}\),
\(z_j^\mathrm{ac}\)
\(C_j = C_j(\alpha_j)\) which is a function that gives
\(C^L_j\), \(C^D_j\), \(C^M_j\), the coefficients of lift,
drag, and moment per unit span, respecitvely.
Calculate initialization quantities required by the FSI API (see
§[sec:fsi])
\[\begin{split}\begin{aligned}
n^\mathrm{motion} = n^\mathrm{force} = n^\mathrm{ac} \\
\xi_j^\mathrm{motion,map}=\xi_j^\mathrm{force,map} =2 \eta^\mathrm{ac}_j-1
\end{aligned}\end{split}\]
\(\underline{x}_j^\mathrm{motion,map,0}\) and
\(\widehat{q}_j^\mathrm{motion,map,0}\) are calculated in the FSI
API based on \(\xi_j^\mathrm{motion,map}\) and the underlying basis
functions.
\[\begin{split}\begin{aligned}
\underline{x}_j^\mathrm{motion,0} = \underline{x}_j^\mathrm{force,0} = \underline{x}_j^\mathrm{motion,map,0}
+ \underline{\underline{R}}\left( \widehat{q}^\mathrm{motion,map,0}_j\right)
\begin{bmatrix} 0 \\
y_j^\mathrm{ac} \\
z_j^\mathrm{ac}
\end{bmatrix}
\end{aligned}\end{split}\]
Calculate quantities required by the blade-element solver
\[\begin{split}\begin{aligned}
\Delta s_j = \left \{
\begin{array}{ll}
\int_{\xi_1^\mathrm{motion,map}}^{(\xi_j^\mathrm{motion,map}+\xi_{j+1}^\mathrm{motion,map})/2} J(\xi) d \xi
& j = 1 \\
\int_{(\xi_{j-1}+\xi_j)/2}^{(\xi_{j}+\xi_{j+1})/2} J(\xi) d \xi
& j = \{2,3,\ldots,n^\mathrm{motion}-1\} \\
\int_{(\xi_{j-1}+\xi_{j})/2}^{\xi^\mathrm{motion,map}_{j}} J(\xi) d \xi
& j = n^\mathrm{motion}
\end{array}
\right .
\end{aligned}\end{split}\]
Force calculations based on blade-element polars
For each aerodynamic section, we must calculate the relative velocity at
the aerodynamic center based on the inflow velocity at that point and
the velocity of the aerodynamic center. That relative velocity is
projected onto the aerodynamic section plane and is used to calculate
lift, drag, and moment forces.
(1) For a given inflow velocity
\(\dot{\underline{u}}_j^\mathrm{inflow}\) and velocity of the
aerodynamic center \(\dot{\underline{u}}_j^\mathrm{fl}\), calculate
the relative flow velocity at point
\(\underline{x}_j^\mathrm{motion}\):
\[\begin{split}\begin{aligned}
\dot{\underline{u}}^\mathrm{rel} =
\begin{bmatrix}
0 & 0 & 0 \\
0 & 1 & 0 \\
0 & 0 & 1
\end{bmatrix}
\left[ \underline{\underline{R}}\left(\hat{q}_j^\mathrm{motion,map}\right) \underline{\underline{R}}\left( \widehat{q}_j^\mathrm{motion,map,0}\right) \right]^T
\left( \dot{\underline{u}}^\mathrm{inflow}_j- \dot{\underline{u}}^\mathrm{fl}_j \right)
\end{aligned}\end{split}\]
(2) Given aerodynamic twist \(\tau_j\), calculate the angle of
attack as \(\alpha_j = \beta_j - \tau_j\), where
\[\begin{split}\begin{equation}
\beta_j = \left\{
\begin{array}{ll}
\mathrm{arccos} \left( \frac{\dot{\underline{u}}^\mathrm{rel}_j \cdot \hat{i}_y}{| \dot{\underline{u}}^\mathrm{rel}_j |}\right) & \mathrm{if}\, \dot{\underline{u}}^\mathrm{rel}_j \cdot \hat{i}_y \ge 0 \\
2 \pi - \mathrm{arccos} \left( \frac{\dot{\underline{u}}^\mathrm{rel}_j \cdot \hat{i}_y}{| \dot{\underline{u}}^\mathrm{rel}_j |}\right) & \mathrm{if}\, \dot{\underline{u}}^\mathrm{rel}_j \cdot \hat{i}_y < 0
\end{array}
\right .
\end{equation}\end{split}\]
(3) Calculate \(C^L_j\), \(C^D_j\), \(C^M_j\) given
\(\alpha_j\) and calculate the force and moment in the aerodynamic
coordinates:
\[\begin{split}\begin{aligned}
\underline{f}_j =
\begin{bmatrix}
0 \\
\left( C^D_j \cos \tau_j - C^L_j \sin \tau_j \right) \\
\left( C^D_j \sin \tau_j + C^L_j \cos \tau_j \right)
\end{bmatrix}
\frac{1}{2} \rho c_j \Delta s_j |\dot{\underline{u}}^\mathrm{rel}_j|^2
\end{aligned}\end{split}\]
\[\begin{split}\begin{aligned}
\underline{m}_j =
\begin{bmatrix}
C^M_j \\
0 \\
0
\end{bmatrix}
\frac{1}{2} \rho c^2_j \Delta s_j |\dot{\underline{u}}^\mathrm{rel}_j|^2
\end{aligned}\end{split}\]
(4) Calculate force and moment in intertial coordiates (see
Eqs. ([eq:force])-([eq:moment])):
\[\begin{split}\begin{aligned}
\underline{f}^\mathrm{force}_j = \underline{\underline{R}}\left(\widehat{q}_j^\mathrm{motion,map} \right)
\underline{\underline{R}}\left(\widehat{q}_j^\mathrm{motion,map,0}\right) \underline{f}_j\\
\underline{m}^\mathrm{force}_j = \underline{\underline{R}}\left(\widehat{q}_j^\mathrm{motion,map} \right)
\underline{\underline{R}}\left(\widehat{q}_j^\mathrm{motion,map,0}\right) \underline{m}_j
\end{aligned}\end{split}\]