# Obtaining stability derivatives from forced oscillations

This article explains how to obtain the stability derivatives of a design from forced oscillations
Consider a simple wing-tail design. The design has a wing span
$b_{ref}=1.7321\text{ }m$
, wing area
$S_{ref}=0.3\text{ }m^2$
, and wing chord of
$c_{ref}=0.1732\text{ }m$
. The image below shows the mesh of the design. Mesh of a wing-tail design
A body-fixed coordinate system is placed at the leading edge of the wing. The reference speed is
$|V_{ref} |=25\text{ }m/s$
and the reference density, pressure and viscosity are evaluated at an altitude of
$h=0\text{ }m$
(ISA).
Before performing forced oscillation simulations the location of the neutral point of the wing-tail configuration must be determined. Two simulations at different angles of attack are required to determine the neutral point location. Please refer to the Stability article for more information on how to determine the neutral point.
The table below shows the
$C_{Z}$
and
$C_{m}$
values used for determining the location of the neutral point,
$x_{np}$
.
 Simulation type ​$\alpha^\circ$​ ​$C_{Z}$​ ​$C_{m}$​ Fixed-wake 0 −0.3215 -0.0223 Fixed-wake 5 -0.7913 -0.1973
The location of the neutral point,
$x_{np}$
, can be obtained from the following equation:
$x_{np}=-c_{ref}\frac{\frac{\partial C_{m}}{\partial \alpha}}{\frac{\partial C_{Z}}{\partial \alpha}}\approx\frac{\Delta C_{m}}{\Delta C_{Z}}\approx\frac{C_{m}\rvert_{\alpha=5}-C_{m}\rvert_{\alpha=0}}{C_{Z}\rvert_{\alpha=5}-C_{Z}\rvert_{\alpha=0}}\text{.}$
After substituting the
$C_{Z}$
and
$C_{m}$
values from the table into the above equation,
$x_{np}$
evaluates to
$-0.0645\text{ }m$
. The minus sign indicates that the neutral point is aft of the origin of the body-fixed coordinate system. The following equation can be used to determine the centre of gravity for a specific static margin,
$SM$
:
$SM=\frac{x_{cg}-x_{np}}{c_{ref}}$
For
$SM=0.1\text{ }(10\%)$
,
$x_{cg}=-0.0385\text{ }m$
.
For a statically stable design the centre of gravity is ahead of the neutral point.
Once the centre of gravity location is obtained, forced oscillation simulations can be performed. Remember to change the x_cg value in the .conf file and to re-run the preprocessor before proceeding. The preprocessor will move the origin of the body-fixed coordinate system to the new location specified by x_cg, y_cg, and z_cg. Please refer to the Configuration file section of the documentation for more information.

### Creating a forced oscillation motion file

A motion file describing the translation and rotation of the body-fixed coordinate system is required to perform a forced oscillation simulation. Please refer to the Custom motion section of the documentation for additional information. To obtain the longitudinal stability derivatives of the design, a forced pitch oscillation motion is required. The pitch angle during the oscillation is defined by the following equation:
$\theta=Asin(\omega t),$
where
$\theta$
is the pitch angle,
$A$
is the amplitude of the pitch oscillation,
$\omega$
is the angular frequency of the oscillation (
$\omega=2\pi f$
), and
$t$
is the time. In this example
$A=5\text{ }deg$
and
$f=5 Hz$
. The pitch rate
$q$
can be obtained by differentiating the
$\theta$
equation with respect to time:
$q=\dot{\theta}=\omega A cos(\omega t).$
Appropriate time step size and number of time steps must be selected to complete at least 2 cycles. In this example
$dt=4\times10^{-3}$
and
$N_{timesteps}=100$
. The image below shows
$\theta$
and
$q$
. Note that
$q$
is divided by 100 so the difference between
$\theta$
and
$q$
is easy to see. In the actual motion file
$q$
is not divided by 100. Generated pitch angle and pitch rate

### Obtaining the stability derivatives from the simulation results

The video below shows the development of the wing-tail configuration wake during the forced oscillation simulation.
Wing-tail design forced pitch oscillation
After running the simulation the aerodynamic coefficients can be plotted against the angle of attack
$\alpha$
. The image below shows the
$C_{X}$
,
$C_{Z}$
, and
$C_{m}$
aerodynamic coefficients. Aerodynamic coefficients versus angle of attack
The locations of the minimum and maximum
$\alpha$
and
$q$
are shown in the images. The
$C_{X}$
coefficient exhibits a quadratic behavior, which is expected.
The
$C_{X0}$
,
$C_{X,\alpha}$
,
$C_{X,\bar{q}}$
,
$C_{Z0}$
,
$C_{Z,\alpha}$
,
$C_{Z,\bar{q}}$
,
$C_{m0}$
,
$C_{m,\alpha}$
, and
$C_{m,\bar{q}}$
stability derivatives can be obtained in multiple ways. Here the
$C_{Z}$
and
$C_{m}$
stability derivatives are obtained with the least squares method. To obtain the
$C_{m}$
stability derivatives the following system of equations is defined:
$\begin{bmatrix} \mathbf{1} & \theta(t) & q(t)\frac{c_{ref}}{2|V_{ref}|} \end{bmatrix}\begin{Bmatrix}C_{m0}\\C_{m,\alpha}\\C_{m,\bar{q}}\end{Bmatrix}=C_{m}(t).$
Note that in the above system of equations
$\mathbf{1}$
is a vector of ones which length is equal to the length of the
$\theta$
and the
$q$
vectors. The system is overdetermined - it has more equations than unknowns. However the least squares method can be used to solve the overdetermined system. Solving the system gives the values for
$C_{m0}$
,
$C_{m,\alpha}$
, and
$C_{m,\bar{q}}$
. The same process is repeated for the
$C_{Z}$
aerodynamic coefficient.
A polynomial fitting method is used for
$C_{X}$
in order to capture its quadratic behavior. A third order polynomial in
$\alpha$
is selected. The polynomial is given by the following equation:
$C_{X}(\alpha)=C_{X0}+C_{X,\alpha}\alpha+C_{X,\alpha^2}\alpha^2.$
Unlike the least squares method the polynomial fitting method cannot be used to determine
$C_{X,\bar{q}}$
. The
$C_{X,\bar{q}}$
can be determined from the following equation:
$C_{X,\bar{q}}=\frac{C_{X}\rvert_{q_{max}}-C_{X}\rvert_{q_{min}}}{2kA},$
where
$k$
is the reduced frequency, given by
$\omega\frac{c{ref}}{2|V_{ref}|}$
. The table below shows the obtained stability derivatives:
 ​ ​$_{0}$​ ​$\frac{\partial}{\partial\alpha}$​ ​$\frac{\partial}{\partial\alpha}$​ ​$\frac{\partial}{\partial\bar{q}}$​ ​$C_{X}$​ -0.0219 0.2595 3.1367 -0.2831 ​$C_{Z}$​ -0.3149 -4.9830 ​ 5.9714 ​$C_{m}$​ 0.0458 -1.3909 ​ -19.2330
The wing-tail design is both statically and dynamical stable as
$C_{m,\alpha}$
and
$C_{m,\bar{q}}$
are negative.

### Verifying the obtained stability derivatives

The time history of the aerodynamic coefficients can be used to verify the obtained stability derivatives. The stability derivatives are used to describe the time history of
$C_{X}$
,
$C_{Z}$
, and
$C_{m}$
:
$C_{X}(t)=C_{X0}+C_{X,\alpha}\alpha(t)+C_{X,\alpha^2}\alpha(t)^2+C_{X,\bar{q}}q(t)\frac{c_{ref}}{2|V_{ref}|},\\ C_{Z}(t)=C_{Z0}+C_{Z,\alpha}\alpha(t)+C_{Z,\bar{q}}q(t)\frac{c_{ref}}{2|V_{ref}|},\\ C_{m}(t)=C_{m0}+C_{m,\alpha}\alpha(t)+C_{m,\bar{q}}q(t)\frac{c_{ref}}{2|V_{ref}|}.$
The above equations can be compared against
$C_{X}(t)$
,
$C_{Z}(t)$
, and
$C_{m}(t)$
obtained from the simulation. The variation of angle of attach
$\alpha$
and the pitch rate
$q$
with respect to time is known and is given by:
$\theta=\alpha=Asin(\omega t),\\ q=\dot{\theta}=\omega A cos(\omega t).$
The image below shows the comparison of
$C_{X}$
,
$C_{Z}$
, and
$C_{m}$
: Comparison of the aerodynamic coefficients from the simulation and from the obtained aerodynamic derivatives
As seen from the image the aerodynamic coefficients agree well. The minor differences from
$t=0\text{ }s$
to
$t=0.03\text{ }s$
are due to the simulation transients (the time it takes for the flow to develop).