Getting closer to the flight dynamics by using the linear representation

Andre Ferreira da Silva
11 min readMar 17, 2020

If we think about the common design techniques applied to flight control, we will notice that most of them start from a linearized plant model. Certainly the linear models rise as an intrinsical part of the mathematical framework required by these techniques (MAGNI, 1997), but such models may provide useful insights about the dynamics of the flying machines and, at least, give us a first glance of the size of the control problem that we are supposed to solve as control designers.

In the early ages of the flight stability and control history (beginning of 19th century), solving numerically the equations of motion with the full 6 degrees-of-freedom (DoF) was not at all just a matter of a fraction of seconds as it is today. Such that many studies were performed using linear algebraic formulations derived from the nonlinear equations under the assumption of small-perturbation with respect to a “steady-state” flight condition (STEVENS & LEWIS, 2003). The close relations between these linear models and the aerodynamic stability derivatives, allows us, for example, to assess how much each of these derivatives are affecting the aircraft dynamic. Also, by estimating the aerodynamic derivatives (using theoretical data) we are able to study the aircraft stability even prior to the availability of the nonlinear aerodynamic data.

Nowadays, from a complete 6 DoF nonlinear flight model, it is possible to obtain a linearization from a steady-state flight condition in less than a second (you can try it using this F-16 model) but this should not lead us to an “excessive empirical approach” as stated by Duane McRuer (1973) in the preface of his book Aircraft Dynamics and Automatic Control, from 46 years ago but still impressively applicable to our current times: “as a consequence, the analyst’s physical means now often exceed his mental grasp; what he can compute may, possibly, far exceed his understanding or appreciation”.

From this inspiration, this article aims to show that the linear models importance may go beyond a simple utilization as input for a massive gains calculation algorithm. Starting by a conceptual understanding of the linearization process, we use the state-space representation to illustrate some fundamentals of the flight dynamics (longitudinal), and afterwards we present a link between the linear models (numerically generated) and the aerodynamic derivatives in the algebraic form of the linear equations.

All the data and scripts can be found ready to run in the jupyter notebook version of this article available at Google Colab.

Linearization

We rely on the rich literature available about the mathematical process of the linearization of a dynamic systems (VEGTE, 1986) and even specifically of flight dynamic systems (STEVENS & LEWIS, 2003), such that we will focus on some very fundamental ideas behind.

Imagine that our hypothetical physical system (flight dynamics) is represented by a function y=f(x) which for an aircraft will be certainly nonlinear. We can think that x could represent some major player in the aerodynamics, like, for example, the angle-of-attack, but this is not crucial for our example now. Let us take a very simple nonlinear function in order to illustrate the linearization process:

y=f(x)=

Let us see it graphically:

Let us consider that, hypothetically, the point (3,9) is a steady-state condition of our system and we are interested to study the behavior in the surrounding area of this point. Seduced by the idea of having a very simple linear function equivalent to our nonlinear function f, we build the function g by using a first order Taylor series approximation (where f′(x)=2x is the derivative of f):

g(x)=f(3)+(f′(3)/1!)(x−3)

g(x)=9+6(x−3)=6x−9

We can then visualize the functions altogether:

Notice that nearby our “steady-state” point, the difference between the values of f and g is close to zero but it increases as we move away from x=3. For example:

g(3.1)=9.60

f(3.1)=9.61

but:

g(4.0)=15.0

f(4.0)=16.0

As introduced before there are several advantages in handling a linear function as g instead of f, but we have to measure carefully the boundaries of the validity in our assumptions here. In our previous example, would it be acceptable an error of 0.01 over 9.61? What about 1.0 over 16.0?

In order to get a more concrete example, in the article Aircraft Instantaneous Center of Rotation and Normal Acceleration Augmentation System, this author used a linear model for his purposes and prior to his study, he compared the response of the linear model with the nonlinear model. From a steady-state condition of a straight level flight, for a deflection of 1 degree of elevator, after 1.9s, we have an error of about 1 deg/s over 9 deg/s for the pitch rate (whose trim condition was 0 deg/s). However, his analysis was concentrated in the first second of the simulation within which the matching between the models for the pitch rate had an error of less than 0.1 deg/s.

It is not always easy to define the boundaries of our linear models representativeness. Going back to our simple function f(x)=, imagining that it represents the aircraft dynamic and that we have chosen some points to linearize and eventually design a controller for each of them, we could make the designed gains vary as a function of the flight condition x, which by itself could be function of the aerodynamic properties like Mach or the air speed. In this case, the choice of the points x (and therefore the boundaries for each linear model) could take into account since the uncertainty of the sensors until the considered margins of a possible robust control design technique.

Illustrating with curves, suppose that we chose the design points x=−4, x=−2, x=0, x=2 and x=4, our design would focus in the solid line picture showed in the plot below. We can see that this picture, built by the union of the linear approximations around the design points, resembles our original model (in dashed line). But as mentioned before, the accuracy of our linear representation shall be justified and verified and if it is not good enough for our purposes we could, for example, add more design points to linearize.

F-16 Longitudinal flight dynamics

For studying the linear behavior of a typical longitudinal flight dynamic, we will make use of the well known F-16 model presented by Stevens & Lewis (2003) and implemented by this author, whose code is fully available at GitHub in the project McFlight.

Starting from the 6 DoF equations of motion, we have found a steady-state flight condition, around which we will perform the numerical linearization. This condition will be a straight level flight and if we think about developing an automatic flight control considering it, this roughly would mean that if the aircraft is disturbed by a gust, for example, it would pursue the “stable” condition which in this case would be the straight level flight. So let us setting up our steady-state flight condition, also known as trim condition. We are going to use the body reference frame, i.e., we will describe the airspeed as their components u, v and w in the body frame instead of airspeed V and the angle-of-attack α as it would be in the stability reference frame (further details in the Chapter 2 of Stevens & Lewis, 2003).

Remind you that all code and figures showed here are available at this Jupyter notebook.

As we mentioned before, we will use the state-space representation, such that our linear model will be represented by the following system of ordinary differential equations:

δX˙=A.δX+B.δu

δY=C.δX+D.δu

Notice that we preferred to use the state X and the input u prefixed by a δ to highlight that in our linear model, these variables will represent a variation related to the steady-state condition. This is important to remember when we intend to compare this model response with the nonlinear model response. These are our state (X), input (u) and output (Y) vectors respectively:

Firstly, in this section, we will show the matrices of the state-space representation, obtained numerically from the nonlinear implementation of the F-16 model available at the McFlight project. Remind that all the code is available ready to run at this Jupyter notebook.

Now we have all the data necessary for simulating our linear model. We will make use of the scipy packages for LTI (Linear Time Invariant) systems handling to solve the ordinary differential equation problem shown before at the state-space representation formulation. Let us start simulating by a simple elevator deflection of 1 degree below the trim elevator (remember that the input, as well as the ouput, are delta over the trim condition) during 1 second and then back to zero for more 4 seconds.

As expected, a negative deflection of elevator (clockwise rotation) decreases the lift in the horizontal tail and causes a pitch up moment in the aircraft, increasing the theta value in bit more than 6 degrees as seen the plot above. After deflecting the elevator back to trim position (what is equivalent to apply 0 in our LTI system) at 1s, we can see the aircraft restoring the theta to the steady theta value but exciting a dynamic mode not damped and maybe not even stable. Let us take a look in the dynamic modes:

We should expect the typical longitudinal dynamic modes: short period and phugoid, both complex and stable (left hand part of the complex plane). Instead, we have the so-called third oscillatory mode present in some most aft CG configurations of aircraft like figthers with high maneuverability requirements. This means that for this configuration the airplane is dynamically unstable.

However, if we take another linear model of the same flight condition, but for the CG at 30% of the mean aerodynamic chord, we will notice that the F-16 is stable for this configuration as shown below.

For the configuration of CG 30%, we can see that the input of elevator disturbes the theta value which is quickly settled to his equilibrium condition at zero. This is also confirmed by the plot of the dynamic modes: both phugoid and short period are stable.

If we compare the matrices A of the linearized configurations, we may notice that analyzing the numerical values, the highest differences are in the line corresponding to the pitch rate state (q), including a sign inversion in the element of the second column and fourth line. Would this be related to the static stability of the aircraft? In the next section, let us take a look in the algrebraic equations of the linear models and try to figure out if the aerodynamic derivatives in that line are affecting the static stability (and therefore the dynamic stability).

Linear models by the algebraic equations

The algebraic equations for the linearization of the flight dynamics of a typical aircraft can be found in a rich literature on the topic. COOK, 2007, presents an extensive list of these equations and their relation with the aerodynamic derivatives. We reproduce below the state-space representation equations given by COOK, 2007, but with a slightly different notation (for the dimensional derivatives, we have put the variable without a circle on top as used by COOK).

δX˙=A.δX+B.δu

where:

where the full equation for each coefficient above is described at this Jupyter notebook (including the meaning of each variable). We are going to reproduce only the ones we are interested for the analysis in the next section:

Comparing the pitch stiffness by using the state matrix (A)

As we noticed in the previous section, the state matrix for the two flight conditions linearized for the F-16 are very similar except by the last line. For the element m_w (check the equations in the last section) the difference includes even a sign inversion.

After some calculations (detailed here), we can calculate the pitch stiffness by:

And finally:

We know that for an aircraft statically stable, we have Cmα<0, which means that an increment in alpha will cause a restoring pitching down moment to decrease the alpha value. Indeed, we see that the flight condition for CG 35, which we had already observed that it was dynamically unstable (by analyzing the poles position), is also statically unstable (Cmα=0.025>0).

Final remarks

We could keep studying the F-16 longitudinal dynamics with the linear models, even design a feedback control and analyzing their performance and robustness in frequency and time domains. Doing all this in the linear world. As mentioned before, in another article, using only linear models, this author shows how the position of the accelerometers may affect the load factor response.

Assuring the boundaries of the representativeness of our linear model, we can study locally the dynamic behavior of the flying machines in both time and frequency domains. Knowing the algebraic equations relating the aerodynamic derivatives with the linear models, we can be able to study the flight dynamics in the early stages of development. Also, having the numerically obtained linear model, we can also calculate the derivatives, have insights about the dynamics and ultimately design/improve the flight control.

References

COOK, Michael V. Flight Dynamics Principles. 2nd edition. Elsevier, 2007.

MAGNI, Jean François; BENNANI, Samir; TERLOUW, Jan. Robust Flight Control: A Design Challenge. Springer-Verlag, 1997.

STEVENS, Brian L. and LEWIS, Frank L. Aircraft Control and Simulation. John Wiley & Sons, 2003, 2nd edition.

MCRUER, Duane T.; GRAHAM, Dunstan; ASHKENAS, Irving. Aircraft Dynamics and Automatic Control. Princeton University Press, 1973.

McFlight. Flight Control Design tool. https://github.com/fsandre/mcflight

VEGTE, J. Van de. Feedback Control Systems. (1986).

FERREIRA DA SILVA, André at Medium: Aircraft Instantaneous Center of Rotation and Normal Acceleration Augmentation System

--

--