This document outlines a thesis project investigating nonlinear model identification of airplanes using noisy flight data. The project has two parts:
1) A review of time and frequency domain Maximum Likelihood identification methods, with a focus on Output-Error methods. Algorithms for these methods will be developed and demonstrated on test flight data.
2) Determination of flight test data through simulation of a Beaver airplane model with added noise. Time and frequency domain ML and OE methods will be applied to identify the airplane model using the simulated data, and the results will be validated.
Software components developed for preprocessing, identification, and simulation will be described. The conclusion will summarize results and suggestions for further development.
1. Budapest University of Technology and Economics
Department of Control Engineering and Information Technology
École Nationale Supérieure d’Ingénieurs de Poitiers
Laboratoire d’Automatique et d’Informatique Industrielle
Nonlinear model identification of
airplanes using noisy flight data
MSc. Thesis
Written by:
Dániel Vízer
Consultants:
Prof. Emer. Dr. Béla Lantos, BUTE CEIT
Assoc. Prof. Dr. Guillaume Mercère, ENSIP LAII
December, 2011
2. Nonlinear model identification of airplanes using noisy flight data
2
DIPLOMA THESIS TASK
Dániel Vizer
finalist in MSc Electrical Engineering
Nonlinear model identification of airplanes using noisy flight data
The nonlinear dynamic model of airplanes is strongly nonlinear as the result of numerous
(mechanical, aerodynamical) effects containing many unknown parameters. The determination
of the nonlinear model and its parameters are parts of the field of system identification. In order
to simplify the problem, it will be assumed that the flight test data for identification can be
obtained in simulation investigations of an airplane having known dynamic model. The goal is
to become acquainted with time domain and frequency domain identification methods and
validate whether the known model parameters can be reconstructed by using these methods. To
the investigations the SIDPAC Toolbox developed by NASA can be applied and completed
with own software components in MATLAB R2006a and Toolboxes environment.
The proposed tasks of this thesis are:
Part I:
1. Review of time domain Maximum Likelihood (ML) and frequency domain (FD)
identification methods summarizing the fundamentals of influential theoretical directions,
with special regard to the Output-Error (OE) methods.
2. Development of methods for prefiltering and robust differentiation of signals playing role in
the identification. Use the advantageous properties of data analysis methods like global
smoothing, discrete Fourier-transformation and chirp z-transform.
3. Develop the algorithms of time domain ML and OE methods. Demonstrate the
identification ability of these methods based on flight test data available in known databases
of the literature.
4. Develop the algorithms of frequency domain ML and OE methods. Demonstrate the
identification ability of these methods based on flight test data available in known databases
of the literature.
Part II:
5. Determine flight test data using simulation of the Beaver airplane having known nonlinear
dynamic model. Add noises to the signals. The flight data has to be divided into teaching
and testing parts. Apply prefiltering/differentiation to the signals.
6. Based on the teaching data of Beaver airplane and using the time domain ML and OE
methods, develop the identification of the airplane model and perform its validation.
7. Based on the teaching data of Beaver airplane and using the frequency domain ML and OE
methods, develop the identification of the airplane model and perform its validation.
8. Give the user documentation of the developed software and suggestions for the further
developments for similar applications.
External consultant (Part I): Assoc. Prof. Dr Guillaume Mercere
Place of thesis practice (Part I): Universite de Poitiers, LAII
University consultant: Prof. emer. Dr. Béla Lantos, BUTE CEIT
Place of thesis practice (Part II): Intelligent Control Laboratory, BUTE CEIT
Deadline: December 9, 2011
Final exam subjects:
1. Theory of Robot and Control Systems BMEVIIIM127
2. Nonlinear and Robust Control BMEVIIIM211
Budapest, January 17, 2011 Prof. Dr. László Szirmay-Kalos
3. Nonlinear model identification of airplanes using noisy flight data
3
Nyilatkozat
Alulírott Vízer Dániel, a Budapesti Mőszaki és Gazdaságtudományi Egyetem
hallgatója kijelentem, hogy ezt a szakdolgozatot meg nem engedett segítség nélkül,
saját magam készítettem, és a szakdolgozatban csak a megadott forrásokat használtam
fel. Minden olyan részt, melyet szó szerint, vagy azonos értelemben, de átfogalmazva
más forrásból átvettem, egyértelmően a forrás megadásával megjelöltem.
2011. december 09.
Vízer Dániel
....................................
4. Nonlinear model identification of airplanes using noisy flight data
4
So what is control engineering?
“Control is the intelligence behind how things work!”
/Tariq Samad, fellow president of IEEE CSS/
5. Nonlinear model identification of airplanes using noisy flight data
5
Acknowledgements
First of all, I would like to thank my consultants, Prof. Emer Dr. Béla Lantos for his
tremendous amount of support during my studies and Assoc. Prof. Dr. Guillaume
Mercère who helped me to write the first part of this work in Poitiers. Special thanks
to Keith Veizer for proofreading my thesis.
Last but not least, I would like to thank my family and my friends who have
always been beside me.
6. Nonlinear model identification of airplanes using noisy flight data
6
Kivonat
A repülıgépek irányításának problémája egy kiterjedt és rohamosan fejlıdı ága a
szabályozástechnikának. A repülıgépek fedélzeti számítógépeire implementált
szabályozások nemcsak a robotpilóta funkciót valósítanak meg, hanem komoly
szerepet játszanak a pilóta munkájának támogatásában is. Ezek a rendszerek az ún.
stabilitás (SAS) és szabályozás (CAS) kiterjesztı rendszerek. Ezen eljárásoknak számos
civil alkalmazása van azonban továbbra is a katonai alkalmazások motiválják a terület
fejlıdését. A precíz szabályozások tervezéséhez elengedhetetlenül fontos, hogy
ismerjük a repülıgép pontos nemlineáris dinamikus modelljét. A modell matematikai
alakja egzakt módon elıáll, azonban a modell paramétereinek meghatározása komoly
méréstechnikai és jelfeldolgozási feladat.
A nemlineáris modell paramétereinek kiszámítása a rendszerek identifikációjának
részét képezı tudományághoz tartozik. Jelen munkában feldolgozásra és bemutatásra
kerülnek a frekvencia és idıtartománybeli Maximum Likelihood (ML) módszerek,
különös tekintettel a kimeneti hiba (OE) módszerekre. A módszerek demonstrálása
során felhasználásra kerülnek a SIDPAC identifikációs Toolbox [1] függvényei.
Ezután virtuális tesztrepülések során MATLAB/Simulink környezetben adatok
győjtésére kerül sor. A szimulált adatsorokhoz zajokat és egyéb zavaró hatásokat adok
a valós repülési körülmények modellezése érdekében. Végül a fent említett szőrési és
identifikációs eljárások alkalmazása történik a szimulált adatsorokra. A dolgozatot a
kapott eredmények és a jövıbeli fejlesztések összefoglalása zárja.
7. Nonlinear model identification of airplanes using noisy flight data
7
Abstract
Aircraft control is one of the most progressive fields of the modern control techniques.
Control methods implemented on embedded flight computers enhance not only robot
pilot functions but also support the pilot. These are known as stability and control
augmentation systems. There are also several civil applications of these methods; for
instance, in the case of vehicles of commercial and personal air transport. However, the
military is the most motivated to improve these applications and methods. It is
indispensable to have an accurate nonlinear dynamic model of the aircraft to achieve an
adequate control that satisfies all of the requirements. A mathematical model of the
aircraft can be derived using kinematic, dynamic and navigational equations of the
rigid body. Contrarily, it is a more difficult process to determine its parameters.
The determination of the nonlinear model and its parameters are parts of the
field of system identification. In this MSc thesis, several identification methods such as
the Maximum Likelihood (ML) method both in the time domain and in the frequency
domain are reviewed. Particular focus is placed on the output error method. A brief
outline of filtering and smoothing the signals playing important roles in the model
parameter determination is also presented. Identification methods mentioned above are
demonstrated applying the SIDPAC Toolbox developed by NASA. Then, simulated
data sequences are gathered in MATLAB/Simulink environment using a nonlinear
model of a Beaver aircraft. Noises and other disturbances are added to the signals in
order to model a real flight situation. Eventually, filtering methods are applied to the
gathered data sequences and the application of identification methods mentioned above
are done following a conclusion of the results.
8. Nonlinear model identification of airplanes using noisy flight data
8
Résumé
La commande des avions est l'un des champs applicatifs les plus émergents des
techniques modernes de commande. Les algorithmes de commande embarqués
réalisent non seulement une fonction importante d'auto-pilotage mais permettent
également d'aider le pilote dans la plupart des tâches qui lui incombent. Ces techniques
sont généralement regroupés sous la dénomination SAS (stability augmentation
system) ou CAS (control augmentation system). Il existe un grand nombre
d'applications civiles à ce type de méthodes. On peut citer le transport public ou
commercial par avion. Cependant, il semble que le secteur militaire soit le plus
demandeur pour développer et améliorer les techniques de commande actuelles. Pour
la synthèse de lois de commande qui satisfassent les nouvelles contraintes liées aux
avions modernes, des modèles dynamiques non linéaires précis sont désormais
nécessaires
L'obtention de tels modèles mathématiques peut être réalisée en appliquant les
lois de la cinématique, de la mécanique des corps rigides... Malheureusement, le calcul
des paramètres de tels modèles est généralement très complexe . La modélisation
expérimentale (ou identification) est une solution intéressante pour estimer les
paramètres d'un modèle non-linéaire du comportement d'un avion. Au sein de ce
mémoire de thèse de Master, une étude bibliographique et comparative de plusieurs
techniques d'identification est proposée. Les méthodes de maximum de vraisemblance
dans le domaine temporel et fréquentiel sont plus précisément considérées. Une
attention particulière est portée aux méthodes d'erreur de sortie. Une description des
techniques de filtrage des signaux d'entrée-sortie de l'avion est également présentée.
Le mémoire se focalise ensuite sur l'application des techniques citées précédemment à
l'aide de la boîte à outils SIDPAC développée par la NASA. Ensuite, des vols virtuels
sont performés dans l’environement de MATLAB /Simulink en ajoutant des bruits
aux signaux d’entrée-sortie pour modeliser les situations réels. Les méthodes de
filtrage sont ensuite utilisées pour éliminer des effects nuisibles des bruits. Finalement,
les methodes d’identification sont exécutées. La conclusion des resultats et des
perspectives de futurs travaux concluent ce manuscrit.
9. Nonlinear model identification of airplanes using noisy flight data
9
Table of contents
1 Introduction.......................................................................................................... 11
2 Review of time-domain and frequency domain Maximum Likelihood
identification methods ................................................................................................ 13
2.1 Why the Maximum Likelihood methods.................................................................... 13
2.2 Outline of estimation theory ........................................................................................ 13
2.3 Time-domain ML methods........................................................................................... 15
2.3.1 Filter-error method............................................................................................................16
2.3.2 Properties of ML methods .................................................................................................23
2.3.3 Output-error method .........................................................................................................24
2.3.4 Equation-error method ......................................................................................................31
2.4 Frequency domain ML methods................................................................................... 33
2.4.1 Transforming between time-domain and frequency domain.............................................34
2.4.1 Frequency domain ML estimator for linear dynamic model.............................................35
2.4.2 Output-error method .........................................................................................................40
2.4.4 Equation-error method ......................................................................................................42
2.5 Accuracy of parameter estimates................................................................................. 43
3 Data preprocessing.............................................................................................. 46
3.1 Filtering and smoothing......................................................................................... 46
3.2 Global smoothing in the frequency domain ........................................................ 46
3.3 Numerical differentiation....................................................................................... 51
3.4 Finite Fourier Transform....................................................................................... 53
4 Demonstration of time domain ML and OE methods using test data from
known data bases ......................................................................................................... 57
5 Demonstration of frequency domain ML and OE methods using test data
from known data bases................................................................................................ 69
6 Flight test data determination using simulation............................................. 76
6.1 Outline of aircraft modeling.................................................................................. 76
6.2 Virtual test flights................................................................................................... 80
6.3 The applied noise model ........................................................................................ 88
6.4 Prefiltering the signals........................................................................................... 90
7 Parameter estimation using time domain ML and OE methods................... 91
8 Parameter estimation using frequency domain ML and OE methods.......... 96
9 Description of the applied software components and Simulink models ..... 99
10 Summary and concluding results..................................................................... 107
11 Appendix ............................................................................................................. 108
A. State equations of an aircraft................................................................................... 108
B. Computing nominal parameter values for longitudinal identification............... 110
10. Nonlinear model identification of airplanes using noisy flight data
10
C. Lateral parameter identification results both TD and FD issues in common
tables.................................................................................................................................... 112
D. List of figures and tables .......................................................................................... 114
E. References................................................................................................................... 117
11. Nonlinear model identification of airplanes using noisy flight data
11
1 Introduction
Aircraft control is one of the most progressive fields of the modern control
techniques. Embedded on board control systems enhance not only robot pilot
functions but also support the pilot. In the past five decades the huge growth in
aircraft development has focused on the improvement of modern control methods.
This began in the late 60s when digital computers become available. Nowadays,
most modern warplanes, also known as fourth generation jet fighters, require not
only accurate dynamical models to obtain very precise control but also high speed
computers on board. Furthermore, there are not any direct connections between
control surface actuators and the pilot’s instruments of control (pilot stick,
pedals…). These aircraft are also known as “fly-by wire” controlled aircraft. Most
modern commercial aircraft are also fly-by-wire controlled. These airplanes cannot
be controlled without an on board computer because they are not stable
aerodynamically. Several control methods exist that cannot be controlled by the
pilot such as canards and flaperons. These additional control surfaces are controlled
by embedded control systems in order to obtain the required stability. Thus,
control and stability augmentation systems are indispensable. Consequently,
having an accurate nonlinear dynamic model of the aircraft is necessary in order to
develop an adequate control that satisfies all of the requirements. Several types of
measurements and theoretical background are available for the technicians in order
to compose a nonlinear dynamic model of the aircraft. For many applications, an
aircraft can be assumed as a rigid body, whose motion is governed by Newtonian
physics. The navigational equations play also an important role in building the
mathematical model of the aircraft. These equations enable transformations
between the different coordinate-systems. Measured data can be gathered from
ground measurements (wind-tunnel tests) or directly from the aircraft
instrumentation. These measurements include input and output data sequences. In
practice, measurements are corrupted by noises. In this work, I only concerned
with noisy flight data
Building a mathematical model for real physical systems based on noisy
measured data is considerably old and one of the most fundamental parts of all
human scientific pursuits. Methods aiming to reach an adequate mapping of a
12. Nonlinear model identification of airplanes using noisy flight data
12
physical system based on observations are called identification methods. In order
reducing the adverse effects of noises require the introduction of statistical theory
and methods. The most important requirement for a mathematical model is to be
applicable in many ways. It must be simple enough to be useful and at the same
time complex enough to represent perfectly the physical world. Hence, system
identification takes a significant part in the field of control engineering.
In this MSc thesis, several identification methods such as the time domain
Maximum Likelihood (ML) and frequency domain methods are reviewed, based on
[1]. Particular focus is placed on the output-error method based on [2] and [1].
Some important methods for filtering and smoothing of signals playing important
roles in identification [1] are also studied. Methods mentioned above are
demonstrated in MATLAB environment using the SIDPAC Toolbox applying the
flight data from the literature [1]. In the following, simulated data sequences are
gathered by virtual test flights applying the nonlinear dynamic model of a DHC-2
Beaver aircraft. The sense of this experiment is to verify the applied identification
techniques and to ensure about its applicability in the case of data sequences
gathered on a real aircraft. In order to model real life situations, additional noises
and disturbances are added to signals. Then, filtering methods written in [1] are
used to eliminate the adverse effects of the noises. Time and frequency domain
output-error methods are then applied to determine the parameters of the Beaver
aircraft. Furthermore, given results are compared with the real parameter values.
Eventually, a summary and a conclusion about the results and the future research
plans close this MSc thesis work.
13. Nonlinear model identification of airplanes using noisy flight data
13
2 Review of time-domain and frequency domain Maximum
Likelihood identification methods
In this chapter the time domain Maximum Likelihood (ML) and the frequency domain
ML identification methods are summarized for later application. Also the fundamentals
of influential directions are summarized. Particular focus is placed on the output-error
(OE) method. The theory written in this chapter is based on the descriptions and
definitions can be found in [1] and [2].
2.1 Why the Maximum Likelihood methods
During aircraft system identification, the applied measured time series are generated
by nonlinear dynamic systems and corrupted by noises. Because of this, a very simple
idea is used: assuming a model that depends on the unknown parameters, then
minimizing a cost function in order to find the values of the parameters that make the
outputs of the identified model most likely to correlate to the measured data.
2.2 Outline of estimation theory
The parameter estimation consists in finding adequate values of unknown model
parameters θ in an assumed model, based on noisy measurements z . Since the
estimator computes approximate values of the parameter vector ˆθ based on noisy
measured data z , hence ˆθ is a random variable. In order to develop an estimator, four
specifications are required:
(i) A model structure with unknown parameters;
(ii) Measurements z ;
(iii) A mathematical model of the process;
(iv) Assumptions about the uncertainties in the measurement noise v , and in
the unknown model parameters.
Observations can be linear or nonlinear functions of the parameters. A model is called
linear in the parameters if its output y is given by
y Hθ= , (2.1)
14. Nonlinear model identification of airplanes using noisy flight data
14
where the matrix H is assumed to be known. The measurement equation then can be
expressed as
z H vθ= + . (2.2)
A model is nonlinear in the parameters, if its measurement equation is given by
( )z h vθ= + , (2.3)
where ( )h θ is assumed to be a known function. Generally, there are 0n measured
outputs, a measured data vector consisting of N data points. Three models of
uncertainties in the parameters and the observations are considered. They are known
as the Bayesian model, the Fisher model and the least-squares model. The parameters
and measurements are formed as follows:
Bayesian model
θ is a vector of random variables with probability density ( )p θ ;
v is a random noise sequence with a probability density ( )p v .
Fisher model
θ is a vector of unknown constant parameters;
v is a random noise sequence with probability density ( )p v .
Least-squares model
θ is a vector of unknown constant parameters;
v is a random vector of measurement noise.
The time domain ML and frequency domain ML estimator were developed for
the Fisher model. θ is the vector of unknown constant parameters and v has an
expected value or mean that equal to 0, and a variance R . This can be written in the
form (0, )Rℕ . The Fisher model is based on the Fisher estimation theory. Detailed
description can be found in [1]. The concept of the likelihood function is used,
where ( ; ) ( )L z p zθ θ= . The parameter vector θ is assumed to be a vector of unknown
constants. Hence, the most common estimator of the Fisher model is to maximize the
likelihood function, which is equal to the value of the parameter vector that maximizes
( ; )L z θ for given z . If ( )p z is Gaussian, the likelihood function has the form
1
12
1
( ; ) (2 ) exp ( ) ( )
2
N T
L z R z H R z Hθ π θ θ
− −
= − − −
. (2.4)
where i denotes the determinant.
15. Nonlinear model identification of airplanes using noisy flight data
15
Then the estimate
ˆ max ( ; )L z
θ
θ θ= , (2.5)
minimizes
11
( ) ( ) ( )
2
T
J z H R z Hθ θ θ−
= − − . (2.6)
Or in the case of nonlinear measurement equation
11
( ) ( ( )) ( ( ))
2
T
J z h R z hθ θ θ−
= − − . (2.7)
The Fisher information matrix M is defined as
2
ln ln ln
( ) ,
T
T
L L L
M E Eθ
θ θ θ θ
∂ ∂ ∂
= = −
∂ ∂ ∂ ∂
(2.8)
This equality is discussed in detail in [1].
2.3 Time-domain ML methods
It can be seen below that in the case of a linear measurement equation z H vθ= + the
ML estimator becomes a simple least-square estimator with weighting equal to the
inverse of the noise covariance matrix. Furthermore, in the case of a stochastic
dynamic system with process noise, the measurements are nonlinear functions of the
parameters. Thus, the general form of the measurement equation is ( )z h vθ= + .
The solution combines a state estimator and a nonlinear parameter estimator.
The models to be estimated are in state-space form. Hence, the state estimator is a
Kalman filter which is necessary because of the process noise in the dynamic equations.
This method is also known as the filter-error method. The nonlinear parameter
estimator is required because of the nonlinear measurement equation, which means
that there is nonlinear connection between model parameters and measured outputs.
However, the combined estimation of parameters and states induce a difficult nonlinear
estimation problem. For further practical implementation, three simplifications are
made:
(i) The Gauss-Newton method, also known as the modified Newton-
Raphson method is used for minimizing the cost function instead of the
Newton-Raphson method;
16. Nonlinear model identification of airplanes using noisy flight data
16
(ii) In the case of linear dynamic models, the general Kalman filter is
replaced by its steady-states form;
(iii) The unknowns are divided into three subsets: states, model parameters
and the elements of the noise covariance matrix.
In the following section, the filter-error method is introduced briefly. It is
followed by the properties of ML methods. Properties of ML estimators are also
introduced. For further practical applications, the assumption of no process noise is
made. In this case, the states can be derived by direct numerical integration. The
resulting ML estimator is known as the output-error method. This method is a
generalization of the nonlinear least squares estimator presented in [1]. Flight testing
is done preferably on a day with calm air in order to eliminate the process noise in the
model. Finally, the equation-error method is presented. If the state variables are
measured without error, the equation-error version of the ML estimator can be used
that is identical to linear regression.
2.3.1 Filter-error method
In most cases of practical system identification problems, such as the aircraft dynamic
modeling problem, discrete-time measurements made on a continuous-time dynamic
system are given. A stochastic forcing term is added to the system to represent
inadequacies of the linear model structure. The model equations then can be written
as:
( ) ( ) ( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ),
1,2,..., ,
wx t A x t B u t B w t
y t C x t D u t
z i y i v i
i N
θ θ θ
θ θ
= + +
= +
= +
=
ɺ
(2.9)
[ ]
[ ][ ]{ }
0
0 0 0
(0) ( ),
(0) ( ) (0) ( ) ( ),
T
E x x
E x x x x P
θ
θ θ θ
=
− − =
(2.10)
where ( )w t is the process noise and ( )v i is the measurement noise, and they are white
noise sequences.
17. Nonlinear model identification of airplanes using noisy flight data
17
[ ]
[ ]
( ) 0,
( ) 0,
( ) ( ) ( , ) ( ),
( ) ( ) ( , ) ,
T
i j i i j
T
ij
E w t
E v i
E w t w t Q t t t
E v i v j R i
θ δ
θ δ
=
=
= −
=
(2.11)
where θ is the unknown parameter vector.
The random vectors ( )w t and ( )v i are assumed to be white and uncorrelated. The
Q and R matrices are usually diagonal. The likelihood function for a sequence of
measurements will be denoted ( ; )NL Z θ that means [ ](1), (2),..., ( )
T
NZ z z z N= . The
expression of the likelihood function can be derived by successive applications of the
Bayes’s rule.
[ ] [ ]
[ ]
1 1
1 2 2
1
1
( ; ) (1), (2),... ( ), ( ) ; ;
( ) ; ( 1) ; ; ...
( ) ; .
N N N
N N N
N
i
i
L Z z z z N L z N Z L Z
L z N Z L z N Z L Z
L z i Z
θ θ θ θ
θ θ θ
θ
− −
− − −
−
=
= =
= − =
= ∏
(2.12)
As was mentioned below, in order to find an optimal parameter vector, the likelihood
function has to be maximized. However, for computational purposes, it is
advantageous to minimize the negative logarithm of the likelihood function instead.
Thus, the ML estimator can be written in the form of
[ ] { }1 1
11
ˆ max ; max ( ) ; min ( ) ;
N N
N i i
ii
L Z L z i Z ln L z i Z
θθ θ
θ θ θ θ− −
==
= = = − ∑∏ . (2.13)
If ( )w t and ( )v i are normally distributed and independent, then ( )z i will also have the
same properties.
The following notation will be used: ˆ( 1)x i i − is the best estimate of the state
ˆ( )x i using measurements [ ](1), (2),..., ( 1)z z z i − . Then [ ]1( ) ; ( );iL z i Z L z iθ θ− = will
be determined by the mean and its covariance matrix. These quantities can be
expressed as
[ ]
[ ] { }
ˆ( ); ( 1)
ˆ ˆ( ); ( ) ( 1) ( ) ( 1)
( ) ( ) ( ),
T
T
E z i y i i
Cov z i E z i y i i z i y i i
i i i
θ
θ
= −
= − − − −
= = v v BBBB
(2.14)
18. Nonlinear model identification of airplanes using noisy flight data
18
where
ˆ( ) ( ) ( 1)i z i y i i= − −v , (2.15)
is the vector of innovations and ( )iBBBB is the innovation covariance matrix. Hence, the
probability density of the innovation approaches a Gaussian distribution, as the
sampling rate increases. In the case of a sufficiently high sample rate, the likelihood
function has the form of
[ ]
1
1
2
1
( ); (2 ) ( ) exp ( ) ( ) ( ) .
2
N T
L z i i i i iθ π
− −
= −
v vB BB BB BB B (2.16)
Then, the negative log-likelihood function can be expressed as
( ) 1 0
1
1
; ( ) ( ) ( ) ( ) (2 ),
2 2
N
T
N
i
Nn
ln L Z i i i ln i lnθ π−
=
− = + + ∑ v vB BB BB BB B (2.17)
where 0n is the number of output variables. It can be seen that the last term on the
right side is a constant, and it has no effect on the optimization. Thus, it can be
neglected, which results in
( ) 1
1
1
; ( ) ( ) ( ) ( ) .
2
N
T
N
i
ln L Z i i i ln iθ −
=
− = + ∑ v vB BB BB BB B (2.18)
In order to determine a negative log-likelihood function the mean value and the
covariance matrix of the innovation have to be calculated. These quantities can be
derived using a Kalman filter. The filtering has two steps, consisting of prediction and
measurement update. The following equations are derived for linear time-invariant
system.
Initial condition:
[ ]
[ ][ ]{ }
0
0 0 0
(0) (0) ( ),
(0) (0) (0) ( ),
T
x E x x
P E x x x x P
θ
θ
= =
= − − =
(2.19)
Prediction:
ˆ ˆ( 1) ( ) ( 1) ( ) ( ),
( 1) ( ) ( 1) ( 1) ( ) ( ) ( ),
( 1) ,
T T
w w
d
x t i A x t i B u t
dt
d
P t i A P t i P t i A B QB
dt
i t t i t
θ θ
θ θ θ θ
− = − +
− = − + − +
− ∆ ≤ ≤ ∆
(2.20)
Measurement Update:
19. Nonlinear model identification of airplanes using noisy flight data
19
[ ]
1
ˆ ˆ( ) ( 1) ( ) ( ),
( ) ( 1) ( ) ( 1),
( ) ( ) ( ) ( 1),
T
x i i x i i K i i
K i P i i C i i
P i i I K i C P i i
θ
θ
−
= − +
= − −
= − −
v
BBBB (2.21)
where
( 1) ( ) ( 1) ( ) ( ),
ˆ( ) ( ) ( ) ( 1) ( )( ),
T
i i C P i i C R
i z i C x i i D i
θ θ θ
θ θ
− = − +
= − − −v
BBBB
(2.22)
Optimization algorithm
The ML parameter estimates are obtained by minimizing the negative log-likelihood
function
1
1 1
1 1
( ) ( ) ( ) ( ) ( ).
2 2
N N
T
i i
J i i i iθ −
= =
= +∑ ∑v vB BB BB BB B (2.23)
In order to solve this optimization problem, generally, the Newton-Raphson method is
used. To determine a solution to the optimization-problem given in (2.23), the cost
function θ is expanded in a Taylor-series around a nominal parameter estimation 0θ .
The choice of this nominal parameter estimation plays an important role in both the
convergence and computational time of the optimization. The Taylor-series expansion
is given by
0 0 0
1
( ) ( ) '( ) "( ) ...,
2
T T
J J J Jθ θ θ θ θ θ θ= + ∆ + ∆ ∆ + (2.24)
We approximate ( )J θ with the second-order expansion of its Taylor-series,
0 0 0
1
( ) ( ) '( ) "( ) ,
2
T T
J J J Jθ θ θ θ θ θ θ≈ + ∆ + ∆ ∆ (2.25)
where '( )J θ is the Jacobian, "( )J θ is the Hessian of the cost function at the nominal
parameter estimation and θ∆ is the vector of changes inθ .
( )
(1)
( )
( )
(2)'( ) ,
( )
( )p
J
J
J
J
J
n
θ
θ
θ
θ
θθ
θ
θ
θ
∂
∂
∂
∂ ∂= = ∂
∂
∂
⋮
(2.25)
20. Nonlinear model identification of airplanes using noisy flight data
20
2 2 2
2 2 2
2
2 2 2
( ) ( ) ( )
(1) (1) (1) (2) (1) ( )
( ) ( ) ( )
( )
(2) (1) (2) (2) (2) ( )"( ) .
( ) ( ) ( )
( ) (1) ( ) (2) ( ) ( )
p
pT
p p p p
J J J
n
J J J
J
nJ
J J J
n n n n
θ θ θ
θ θ θ θ θ θ
θ θ θ
θ
θ θ θ θ θ θθ
θ θ
θ θ θ
θ θ θ θ θ θ
∂ ∂ ∂
∂ ∂ ∂ ∂ ∂ ∂
∂ ∂ ∂
∂
∂ ∂ ∂ ∂ ∂ ∂= =
∂ ∂
∂ ∂ ∂
∂ ∂ ∂ ∂ ∂ ∂
⋯
⋯
⋮ ⋮ ⋱ ⋮
⋯
(2.26)
The necessary condition to minimize ( )J θ becomes
0 0'( ) "( ) 0.J Jθ θ θ+ ∆ = (2.27)
The solution of this equation gives an estimate for the vector of parameter changes,
[ ]
1
ˆ "( ) '( ).J Jθ θ θ
−
∆ = − (2.28)
We assumed that the Hessian is nonsingular. Since the first and second order gradient
of the cost function are computed around a nominal parameter estimation 0θ , the
updated parameter vector estimation ˆθ is computed by,
0
ˆ .θ θ θ= + ∆ (2.29)
Because of the approximation in the Taylor series, it is necessary to repeat the
estimation using the estimated vector ˆθ as the new nominal value 0θ . That is
important because the outputs are nonlinear functions of the parameters, thus the cost
function is more complicated than quadratic. In the case of linear least-squares
problems, which are discussed in detail in [1], the output depends linearly on the
parameters. Thus, the cost function is a quadratic function of the parameters and the
term given in (2.25) is an exact equality. Accordingly, the parameter estimates could
be derived in one single iteration. In this case, the repeated applications of the
quadratic cost to the nonlinear function on the parameters are used to iteratively
arrive to the solution. This iterative process will be arrived at when the convergence
criteria are satisfied. Convergence criteria that have been used in practice are
introduced later in this section.
21. Nonlinear model identification of airplanes using noisy flight data
21
Minimization of the negative-log likelihood function for the filter-error problem is a
very difficult optimization problem. Computing the second order gradients in the
Hessian matrix is an extremely time demanding task and is not robust enough. Hence,
for practical applications the modified Newton-Raphson method is used. Details of this
approach are introduced later. A block diagram of the filter-error method is shown
below in Figure.2.1.
Figure 2.1 Block diagram of filter-error method
Simplification possibilities
In order to obtain simplifications of this optimization problem, several solutions are
introduced in [1] and [2]. Comparisons and summaries of these simplifications are
also outlined in [1]. The ML estimation algorithm for a time-invariant stochastic
linear dynamic system can be simplified through replacing the Kalman filter by its
steady-states form.
Initial condition:
[ ]
[ ][ ]{ }
0
0 0 0
(0) (0) ( ),
(0) (0) (0) ( ),
T
x E x x
P E x x x x P
θ
θ
= =
= − − =
(2.30)
Prediction:
ˆ ˆ( 1) ( ) ( 1) ( ) ( ),
( 1) ,
d
x t i A x t i B u t
dt
i t t i t
θ θ − = − +
− ∆ ≤ ≤ ∆
(2.31)
Measurement update:
1
ˆ ˆ( ) ( 1) ( ),
( ) ,T
x i i x i i K i
K PC θ −
= − +
=
v
BBBB
(2.32)
22. Nonlinear model identification of airplanes using noisy flight data
22
where
( ) ( ) ( ),
ˆ( ) ( ) ( ) ( 1) ( ) ( ).
T
C PC R
i z i C x i i D u i
θ θ θ
θ θ
+
= − − −v
B =B =B =B =
(2.33)
In this case, the steady-state form of the Riccati equation can be solved for P.
1
( ) ,T T T T
w wP P PC CPC R CP Q−
= Φ − + Φ + Γ Γ (2.34)
Φ and wΓ can be written in the form:
1
,
( ) .
A t
A t
w w
e
A e I B
∆
− ∆
Φ =
Γ = −
(2.35)
This means that using a steady-state filter brings simplification to the equation for the
first order gradients of the cost function, because the partial derivatives of the cost
function with respect the unknown parameter vector are calculated from a linear
matrix equation. Henceforward, the estimation algorithm has some difficulties.
Further simplification to algorithm can be obtained by recasting the vector of
unknown parameters. The elements of K and BBBB are included into the parameter
vector, instead of the elements of Q and R. This leads to a new cost function in which
an approximation of the covariance matrix is used according to (2.36) that is derived in
[1].
1
1ˆ ( ) ( ).
N
T
i
i i
N =
∑B =B =B =B = v v (2.36)
The resulting cost can be minimized by using a nonlinear optimization technique, such
as the Newton-Raphson method as it was mentioned earlier. This is also an iterative
optimization procedure that continues until selected convergence criteria are satisfied.
In this case, the unknown parameters are estimated in subsets. First, the parameters
contained in A,B,C,D and K held constant while the estimation of the parameters in BBBB
is in progress, and then the parameters contained in BBBB are held constant while the
parameters in A,B,C,D and K are estimated. The estimate of the measurement
covariance matrix can be derived from (2.32-33):
ˆ ˆˆ ˆ( )R I CK= − B.B.B.B. (2.37)
This method carries also many problems in the computation of wB and Q in (2.32-33).
Because of these difficulties in the simplified algorithms a third formulation was
23. Nonlinear model identification of airplanes using noisy flight data
23
proposed. It is advantageous to recast the unknown parameters as the elements of A,
B, wB , C, D, Q and BBBB .
The resulting optimization algorithm has six steps:
(i) Assembling the system and covariance matrices A, B, wB , C, D, Q and
R using the nominal parameter values;
(ii) Computing the covariance matrix of the innovations (2.36);
(iii) Estimating of the unknown parameters in the state and covariance
matrices, using a nonlinear optimization technique;
(iv) For ˆ=B BB BB BB B , compute ˆK and ˆR from (2.32) and (2.37);
(v) Update the nominal values of the unknown parameters;
(vi) Repeat steps 1-5 until convergence criteria are satisfied.
The filter-error method is the most general estimation method for practical
aircraft system identification problems because it allows the presence of both the
measurement and process noise in the model. However, the main practical problem
with this method is that there are a lot of parameters to be estimated which often leads
to difficulties.
2.3.2 Properties of ML methods
The accuracy of the estimation concerns itself with the properties of the estimates.
Using the definitions introduced in [1].
(i) ML estimates of dynamic system parameters are asymptotically unbiased;
ˆ( ) ,
.
E
N
θ θ→
→ ∞
(ii) ML estimates are consistent;
ˆ ,
.N
θ θ→
→ ∞
(iii) ML estimates are asymptotically efficient;
1ˆ( ) ,
,
Cov M
N
θ −
→
→ ∞
where M the Fisher information matrix defined earlier by (2.8).
24. Nonlinear model identification of airplanes using noisy flight data
24
This means that the main diagonal elements of the inverse information
matrix provide the lower bounds on the parameter variances, named the
Cramer-Rao bounds. These diagonal elements represent the achievable
accuracy for the parameter estimates.
(iv) ML estimates are asymptotically normal. The distributions of the estimates
are asymptotical approaches a normal distribution with mean θ and
variance 1
M −
, namely ˆθ is 1
( , )Mθ −
ℕ .
2.3.3 Output-error method
Further simplification can be achieved when ML estimation method is applied to a
deterministic linear dynamic system. In this case, there is no process noise, and the
system can be written in the form of
( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ), 1,2,..., ,
x t A x t B u t
y t C x t D u t
z i y i v i i N
θ θ
θ θ
= +
= +
= + =
ɺ
(2.38)
where v is (0, )Rℕ and [ ]( ) ( ) ( ) .T
ijCov v i E v i v i Rδ = =
Furthermore, because of the lack of process noise, Q is zero and the state equations are
deterministic. The Kalman gain K is also zero, so the Kalman filter can be replaced by
a simple integration of the state equations. The innovations in the method become:
( ) ( ) ( ) ( ) ( ) ( ) ( ), 1,2,..., .z i y i z i C x i D u i i Nθ θ− = − − =v = (2.39)
Practically, they are equal to output errors. The negative log-Likelihood function then
can be written as:
( ) -1 0
1
1
; ( ) ( ) (2 ),
2 2 2
N
T
N
i
NnN
ln L Z i R i ln R lnθ π
=
− = + + ∑v v (2.40)
The two last terms of (2.40) can be dropped because they do not depend on the
unknown parameter vector θ . The unknown parameters are elements of state matrices
as can be seen above and the initial condition vector. Solving (2.40) with respect to R is
done by differentiating with respect to R. The result then is set equal to zero and
solved for R. That gives (2.41) which is similar to (2.36).
1
1ˆ ( ) ( ).
N
T
i
R i i
N =
= ∑v v (2.41)
25. Nonlinear model identification of airplanes using noisy flight data
25
Generally, only the diagonal elements of the R matrix are estimated from (2.40)
assuming that the measurement noises are uncorrelated with one another. For a given
ˆR the cost function can be written as:
[ ] [ ]1 1
1 1
1 1
( ) ( ) ( ) ( ) ( ) ( ) ( ) .
2 2
N N
TT
i i
J i R i z i y i R z i y iθ − −
= =
= = − −∑ ∑v v (2.42)
This cost is minimized by using a relaxation technique in which first θ held fixed
while computing ˆR from (2.41), then minimizing the cost with respect to θ for a
given fixed R, where ˆR R= . These two steps are repeated until convergence criteria
are satisfied. Optimization of the cost in (2.42) can be done using the Newton-Raphson
method as discussed earlier. The first and second order gradient can be calculated by
(2.25-26). The first order gradient has the following form:
1 1
1 1
( ) ( ) ( )ˆ ˆ( ) ( ),
T TN N
i i
J i y i
R i R i
θ
θ θ θ
− −
= =
∂ ∂ ∂
= = −
∂ ∂ ∂
∑ ∑
v
v v (2.43)
where the elements of the
( )J θ
θ
∂
∂
vector can be written as
1
1
( ) ( ) ˆ ( ), 1,2,... .
TN
p
ij j
J y i
R i j n
θ
θ θ
−
=
∂ ∂
= − =
∂ ∂
∑ v (2.44)
The elements of the second order gradient then have the form of
2 2
1 1
1 1
( ) ( ) ( ) ( )ˆ ˆ ( ), , 1,2,...
TN N
p
i ij k j k j k
J y i y i y i
R R i j k n
θ
θ θ θ θ θ θ
− −
= =
∂ ∂ ∂ ∂
= =
∂ ∂ ∂ ∂ ∂ ∂
∑ ∑- v (2.45)
The term on the far right side can be neglected. Thus, the resulting optimization
method is called Gauss-Newton method or modified Newton-Raphson method. This
simplification is made for practical reasons. Obtaining the second-order gradient is
computationally expensive. Furthermore, it is susceptible to numerical errors. The
parameter vector change then can be written using the approximate second-order
gradient:
1
1 1
1 10 0 0
( ) ( ) ( )ˆ ˆ ˆ ( ) ,
TN N
i i
y i y i y i
R R iθ
θ θ θ
−
− −
= =
∂ ∂ ∂
∆ =
∂ ∂ ∂
∑ ∑ v (2.46)
where
y
θ
∂
∂
is an 0 pn n× matrix called the output sensitivity matrix and its elements
are called the output sensitivities. The elements of this matrix quantify the changes in
the outputs due to changes in the parameters. 1ˆR−
is usually diagonal. According to
(2.46), it can be seen that output sensitivities must be linearly independent and
26. Nonlinear model identification of airplanes using noisy flight data
26
nonzero for a good matrix inversion. When this condition is held, each model
parameter has a unique and significant impact on the model outputs. Henceforward, in
the case when the approximation for the second-order gradient of the cost function is
used, the Fisher information matrix can be written as
2
1
1
ln ( , ) ( ) ( )ˆ( ) .
TN
N
T
i
L Z y i y i
M E R
θ
θ
θ θ θ θ
−
=
∂ ∂ ∂
= =
∂ ∂ ∂ ∂
∑ (2.47)
Then the ML estimator has the form of:
1 0
0 0
0
( )ˆ ( ) .
J
M
θ
θ θ θ
θ
− ∂
= −
∂
(2.48)
The parameter covariance matrix satisfies the Cramer-Rao inequality
1ˆ( ) ( ) ,Cov Mθ θ −
≥ (2.49)
which means that the inverse of the Fisher information matrix gives the lower bound
for the parameter covariance matrix. A block diagram of the output-error method can
be seen in Fig 2.2.
Figure 2.2 Block diagram of output-error method
Convergence criteria, computing sensitivities and nearly singular information
matrix
It was shown in [1] that the practical application of ML estimator to flight data
sometimes leads difficulties. For instance, the dependence in the likelihood function
can be far from quadratic. Furthermore, the information matrix can be singular or
nearly singular. The optimization method for the output-error method discussed
earlier can be summarized as:
27. Nonlinear model identification of airplanes using noisy flight data
27
0
1
0 0
1
0
1
0 0 0
1
1
0 0
1
ˆ ,
( ) ( ),
ˆ( ) ( ),
ˆ( ) ( , ) ( , ) ,
ˆ( ) ( , ) ( ) ,
( , )
( ) ,
ˆ( ) ( ) ( , ).
N
T
i
N
T
i
j
k
M g
Cov M
M S i R S i
g S i R i
y i
S i
i z i y i
θ θ θ
θ θ θ
θ θ
θ θ θ
θ θ
θ
θ
θ
−
−
−
=
−
=
= + ∆
∆ = −
≥
=
=
∂
=
∂
= −
∑
∑ v
v
(2.50)
where the information matrix M has dimensions p pn n× and the sensitivity matrix
( )S i has dimensions 0 pn n× . In order to reach at the global maximum of the likelihood
function the modified Newton-Raphson method is used, but the nominal parameter
value of θ must be near to the global minimum. The modified Newton-Raphson
method is based on this assumption. If the nominal parameter vector is far from the
optimal solution, then the result will be either convergence to a local minimum, or
divergence. There are several methods to obtain excellent starting values; for instance,
regression methods or in particular cases the subspace identification method. The
applicability of the subspace identification methods computing a nominal parameter
vector is under investigation. Furthermore, there is a method that can be used to
eliminate the need of a perfect starting value. This method will be discussed later in
this chapter. When there are problems with model structure, model structure
determination methods can be used not only to identify an adequate model structure,
but also to determine a good starting value. Also, it is necessary to have an initial
value for R that can be obtained using 0θ and (2.41). This optimization is finished
when convergence criteria are satisfied. There are criteria for both θ and ˆR .
The criteria can be:
(i) Absolute value of the elements of θ∆ are sufficiently small;
(ii) Changes in ( )J θ are sufficiently small;
(iii) The absolute values of the elements of the cost gradient are close to
zero;
(iv) Changes in the elements of ˆR are sufficiently small.
28. Nonlinear model identification of airplanes using noisy flight data
28
Some convergence criteria that worked well for aircraft parameter estimation
problems in [1] are introduced here.
5
1( ) ( ) 1 10 , 1,2,... ,j k j k pj nθ θ −
−− < × = (2.51a)
or
1
1
ˆ ˆ
0.001,
ˆ
k k
k
θ θ
θ
−
−
−
< (2.51b)
where k denotes the kth iteration and denotes the Euclidien norm. This can also
be written:
1
1
1
0,
1
( ) ( )
0.001,
( )
ˆ ˆ( ) ( )
0.05, 1,2,...
ˆ( )
k k
k
jj k jj k
jj k
J J
J
r r
j n
r
θ θ
θ
−
−
−
−
−
<
−
< =
(2.52)
where ˆjjr denotes the estimate of the jth diagonal element of ˆR . Furthermore, the
magnitude of the changes can be varied by directly applying a multiplicative term in
θ∆ :
0 0
ˆ ( ) ( ).cM gθ θ θ∆ = − (2.52)
Two methods can be used to compute the elements of the sensitivity matrix. These
two methods are the analytical approach and the numerical approach.
The analytical approach uses the output equations of the system with respect to the
unknown parameters , 1,2,...j pj nθ = . In the case of the linear system given by (2.38)
this can be written as:
, 1,2,... .p
j j j j
y x C D
C x u j n
θ θ θ θ
∂ ∂ ∂ ∂
= + + =
∂ ∂ ∂ ∂
(2.53)
The states can be derived from the state equations of the dynamic system:
0
,
(0).
x Ax Bu
x x
= +
=
ɺ
(2.54)
The state sensitivities are computed by solving the state sensitivity equations, which
are obtained by differentiating the state equations with respect to the unknown
parameters:
, 1,2,... .p
j j j j
d x x A B
A x u j n
dt θ θ θ θ
∂ ∂ ∂ ∂
= + + = ∂ ∂ ∂ ∂
(2.55)
29. Nonlinear model identification of airplanes using noisy flight data
29
In the numerical approach, an approximation is used to compute the output
sensitivities:
0 0( ) ( )
, 1,2,... .p
j j
y yy
j n
θ δθ θ
θ δθ
+ −∂
= =
∂
(2.56)
or
0 0( ) ( )
, 1,2,... .
2
p
j j
y yy
j n
θ δθ θ δθ
θ δθ
+ − −∂
= =
∂
(2.57)
where jθ denotes a perturbation vector for parameter jθ and jδθ is scalar magnitude
of jθ . The first equation (2.56) implements forward finite differences and the second
(2.57) implements central finite differences. Forward finite differences requires ( 1)pn +
steps, whereas the central finite differences requires (2 )pn steps. The sensitivities
must be calculated for every iteration of the modified Newton-Raphson method.
As was mentioned earlier, the information matrix can be singular. In other
words, it can be ill-conditioned. There are three frequent reasons for an ill-conditioned
information matrix:
(i) There are too many unknown parameters in the information matrix.
(ii) There is misspecification in the model. Changes in one or more model
parameters produce nearly equivalent change in outputs, or one or more
model parameter have little or no effect on outputs.
(iii) There is insufficient information in the data.
Hence, there are two main consequences about a nearly singular
information matrix.
(iv) The information matrix M can be negative definite that causes a cost
increase jθ for the modified Newton-Raphson step.
(v) The step size θ∆ can be large in one or more directions.
The latter problem can be seen from the decomposition of the inverse M matrix as
follows:
1
1
1
,
pn
T
j j
i j
M t t
λ
−
=
= ∑ (2.58a)
1ˆ ( ) ,j
T
j jt g tλθ
λ
∆ = − (2.58b)
30. Nonlinear model identification of airplanes using noisy flight data
30
where jλ are the eigenvalues of M corresponding to eigenvectors jt . Then the next
step in the modified Newton-Raphson method can be derived by combining (2.58b)
with the second equation in (2.50).
Thus, the step will be large for small jλ in a direction of jt . The parameter step θ∆ is
therefore dominated by inappropriate information. There are several techniques that
can be used to address this problem. Three of them are introduced here.
Rank deficient method
This method is based on the reduced inverse of M applying the singular value
decomposition (SVD).
T
M UDT= (2.59)
The reduced-order inverse then can be computed as
1
2
1
1
1
1
0
1
.
1
0
0
0
p
p
n m
T T
j j
j j
n m
M T U t u
µ
µ
µ
µ
−
−
=
−
= =
∑
⋱
⋱
(2.60)
where jt and ju are the jth column of T and U matrices, respectively. The singular
values are arranged from the largest to smallest in magnitude.
1 2 1... ...p p pn m n m nµ µ µ µ µ− − +≥ ≥ ≥ ≥ ≥ ≥ (2.61)
The smallest m singular values are then dropped. The selection criteria to drop the
singular values is
max
,
j
N
µ
ε
µ
< (2.62)
where N is the number of data points, and ε is the computing machine precision. The
rank of the reduced-order inverse of M matrix is pn m− .
Levenberg-Marquardt method
This method augments the information matrix to improve its conditioning and
produce a reasonable inverse. The augmentation term can be written as
31. Nonlinear model identification of airplanes using noisy flight data
31
1 1
0( ) ,M M kA− −
= + (2.63)
here 0M is the original information matrix, k is a positive nonzero scalar parameter
and A is positive definite matrix. Generally, A is chosen as the identity matrix,
1 1
0( ) .M M kI− −
= + (2.64)
The scalar parameter k can be obtained by an iterative procedure. An initial value for k
is recommended, as 0.01k = .
Bayes-like method
This method improves the conditioning of the information matrix by combining the
measured data with prior estimates of some or all of the parameters in the model. The
resulting cost function is similar to that for the Bayesian estimator [1].
1 1
1
1 1
( ) ( ) (i) + ( ) ( ),
2 2
N
T T
p p p
i
J i Rθ θ θ θ θ− −
=
= − ∑ −∑v v (2.65)
where pθ is the vector containing the prior parameter values, and p∑ is a positive
semidefinite covariance matrix that represents the confidence in the parameters of pθ .
θ∆ then can be computed by using the modified Newton-Raphson method:
1 1 1
0 0
ˆ ( ( ) ) ( ) ,p p pM gθ θ θ θ− − −
∆ = − + ∑ + ∑ − (2.66)
in the cases when the information matrix is nearly singular. In other words, it is
singular only at certain points in the progression towards the global optimum. In
these cases, the methods discussed above can be used temporarily. The rank deficiency
method is the easiest to use in this way. Computing the inverse of the information
matrix is always done by calculating the SVD. The singular value ratios are checked
against the criteria (2.62). If any singular values are too small, their corresponding
terms will be dropped from the inverse according to (2.60-61).
2.3.4 Equation-error method
Another parameter estimation method can be obtained by assuming that
(i) the dynamic model is in linear states-space form with process noise,
(ii) the parameters to be estimated are dimensional stability and control
derivatives,
(iii) all of the states can be measured without error.
The model then has the form of
32. Nonlinear model identification of airplanes using noisy flight data
32
0
( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ) ( ) ( ) ( ),
(0) , 1,2,... .
x t A x t B u t
z i A x i B u i v i
x x i N
θ θ
θ θ
= +
= + +
= =
ɺ
(2.67)
( )v i can include both measurement errors and process noise. Generally, the states
cannot be measured directly but instead can be derived by using smoothed numerical
differentiation of the measured states. Smoothing and filtering methods will be
discussed later in this work. The errors ( )v i in the model assumed to be Gaussian and
have the following properties:
[ ]( ) 0,
( ) ( ) .T
ij
E i
E i j Rδ
=
v
v v
(2.68)
The negative log-likelihood function then can be written in the form of
[ ] [ ]1
1
0
1
L(Z ; ) = ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )
2
(2 ).
2 2
TN
N
i
ln z i A x i B u i R z i A x i B u i
NnN
ln R ln
θ θ θ θ θ
π
−
=
− − − − −
+ +
∑
(2.69)
When ˆR is known, the cost function to be minimized has the form of
[ ] [ ]1
1
1 ˆ( ) = ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) .
2
TN
i
J z i A x i B u i R z i A x i B u iθ θ θ θ θ−
=
− − − −∑ (2.70)
In this case, the innovations are the equation errors,
( ) ( ) ( ) ( ) ( ) ( ), 1,2,... .i z i A x i B u i i Nθ θ= − − =v (2.71)
It is simple to use output equations instead of dynamic state equations. In (2.67) can be
changed to use measured output in the state-space formulation:
( ) ( ) ( ) ( ) ( ) ( ), 1,2,... .z i C x i D u i v i i Nθ θ= + + = (2.72)
As a matter of fact, the measurements are always corrupted by errors; hence, the
resulting parameters are biased estimates of the unknown model parameters in the
state matrices A,B,C and D. A block diagram of the equation-error method is shown
below Figure 2.3.
33. Nonlinear model identification of airplanes using noisy flight data
33
Figure 2.3 Block diagram of Equation-error method
2.4 Frequency domain ML methods
Switching to frequency domain has many advantages. Several methods for data
analysis and system modeling can be formulated in frequency domain. Furthermore,
frequency domain analysis requires a smaller number of data points and the results can
be applied directly to control system design. The basis for these methods is the finite
Fourier transform that is the procedure for transforming time-domain data to
frequency domain. Frequency domain ML methods are sensitive for transforming
errors. Any errors in the transformation affect the accuracy of the frequency domain
data. For parametric modeling in the frequency domain, the Fisher model is considered
similarly to time-domain analysis. The Fisher model has the following form:
(i) ( )z h θ= +ɶ ɶɶ v ;
(ii) θ is a vector of unknown constant parameters;
(iii) ɶv is a random noise sequence with probability density p( )ɶv .
where hɶ is a known complex vector function, xɶ and zɶ are functions of the
transformed states and controls, respectively. The measurement vector zɶ is the
Fourier transform of the time-domain data vector z . In the following section, the
transformation from time-domain to frequency domain is presented; then, the ML
estimator for linear dynamic model with process noise is introduced followed by the
frequency domain output-error method where there is no process noise. Finally,
equation-error method in the frequency domain is presented.
34. Nonlinear model identification of airplanes using noisy flight data
34
2.4.1 Transforming between time-domain and frequency domain
The transformation between time-domain and frequency domain is called the Fourier-
transformation that is based on the Fourier integral. For a given continuous function
in the time domain, the corresponding continuous function in the frequency domain is:
[ ]( ) ( ) ( ) ,j t
x t x x t e dtω
ω
∞
−
−∞
= = ∫ɶFFFF (2.73)
where 1j = − and ω is the angular frequency in radian per second. ( )x ωɶ is called
the Fourier transform of ( )x t . The ( )x ωɶ can be transformed back to the time-domain
by using the inverse Fourier-transformation.
1
( ) ( ) ,
2
j t
x x e dω
ω ω ω
π
∞
−∞
= ∫ɶ ɶ (2.74)
These are also known as the Fourier transform pair. The Fourier transformation of a
function on a finite time interval is called the finite Fourier transform. The expressions
of the finite Fourier transform have the form
0
( ) ( ) ,
T
j t
x x t e dtω
ω −
= ∫ɶ (2.75)
or
2
0
( ) ( ) ,
T
j ft
x f x t e dtπ−
= ∫ɶ (2.76)
where
2 fω π= (2.77)
When the function ( )x t is sampled at discrete and evenly spaced time intervals t∆ , the
finite Fourier transform can be approximated by
1
2
0
( ) ( ) ,
N
j fi t
i
x f t x i e π
−
− ∆
=
≈ ∆ ∑ɶ (2.78)
where the time length of measured data is ( 1)T N t= − ∆ and
/ ( 1),
( ) ( ) ( ),
.
i
i
t T N
x i x t x i t
t i t
∆ = −
= = ∆
= ∆
(2.79)
In the case of conventional Fourier transform, the frequencies are chosen as
35. Nonlinear model identification of airplanes using noisy flight data
35
, 0,1,2..., 1k
k
f k N
N t
= = −
∆
(2.80)
2 2 , 0,1,2,... 1k k
k
f k N
N t
ω π π= = = −
∆
(2.81)
Using these frequencies mentioned below, the approximation of the Fourier transform
can be written
1
(2 / )
0
( ) ( ) , 0,1,2,..., 1
N
j k N i
i
x k t x i e k Nπ
−
−
=
= ∆ = −∑ɶ ɶ (2.82)
and its inverse
1
(2 / )
0
1
( ) ( ) , 0,1,2,..., 1
N
j k N i
k
x i x k e i N
N t
π
−
=
= = −
∆
∑ ɶ (2.83)
When the sampling intervals in (2.82) and (2.83) are normalized, the result is called
the discrete Fourier transform (DFT).
1
(2 / )
0
( ) ( ) , 0,1,2,..., 1
N
j k N i
i
X k x i e k Nπ
−
−
=
= = −∑ (2.84)
1
(2 / )
0
1
( ) ( ) , 0,1,2,..., 1
N
j k N i
k
x i X k e i N
N
π
−
=
= = −∑ (2.85)
Computing directly the DFT using (2.84) is not economical computationally. An
efficient method to compute the DFT is the fast Fourier transform (FFT). In practical
aircraft model estimation problems, there is no need to compute the Fourier
transformation in the whole frequency band [ ]0, Nf . A method based on the chirp z-
transform that can be compute the finite Fourier transformation with very high
accuracy at arbitrarily selected frequencies is discussed in the next chapter.
2.4.1 Frequency domain ML estimator for linear dynamic model
In order to derive frequency domain ML methods, it is first necessary to transform the
linear dynamic model to the frequency domain. Model equations for linear continuous-
time dynamic system with process noise and discrete-time measurements have the
form:
[ ]
0
( ) ( ) ( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ) ( ) ( ), ( ),
(0) 0,
(0) (0) , 1,2,... .
w
T
x t A x t B u t B w t
z i C x i D u i v i
E x
E x x P i N
θ θ θ
θ θ
= + +
= + +
=
= =
ɺ
(2.86)
36. Nonlinear model identification of airplanes using noisy flight data
36
where noises ( )w t and ( )v i are assumed to be independent and white. They have the
following properties:
[ ]
[ ]
( ) 0,
( ) 0,
( ) ( ) ( ),
( ) ( ) .
T
j i
T
ij
E w t
E v i
E w t w t Q t t
E v i v i R
δ
δ
=
=
= −
=
(2.87)
The unknown parameter vector θ occurs in the system and covariance matrices. As
was shown in the previous section, estimation of all of the parameters is extremely
difficult. This problem can be simplified by replacing the Kalman filter with its steady-
state version. Using terms from (2.14) and (2.30-33), the modified filter equations can
be written in the form
ˆ ˆ( 1) ( ) ( 1) ( ) ( ), ( 1) ,
ˆ ˆ( ) ( 1) ( )
d
x t i A x t i B u t i t t i t
dt
x i i x i i K (i),
θ θ
θ
− = − + − ∆ ≤ ≤ ∆
= − + v
(2.88)
where the innovations
ˆ( 1) ( ),(i)= z(i)-Cx i i Du i− −v (2.89)
with
[ ] 0,
.T
ij
E (i)
E (i) (i) δ
=
=
v
v v BBBB
(2.90)
The elements of the unknown parameter vector are the elements of A,B,C,D,K and B.
Then, the equations are written in the form of their Fourier series expansion. The
components of ( )x i can be written by (2.78) as
1
(2 / )
0
( ) ( ) , 0,1,2,... 1
N
j k N i
i
x k t x i e k Nπ
−
−
=
= ∆ = −∑ɶ (2.91)
As was mentioned earlier, the finite Fourier transform can be approximated by (2.91)
and for practical applications it can be replaced by a high-accuracy calculation
presented in the next chapter. Dynamic equations now can be written as
( ) ( ) ( ) ( ) ( ) ( ),kj x k A x k B u k K kω θ θ= + + ɶɶ ɶ ɶ v (2.92)
or
1 1
( ) ( ( )) ( ) ( ) ( ( )) ( )
( ) ( ) ( ) , 0,1,2,... 1
k kx k j I A B u k j I A K (k),
z(k)= C( )x k D u k (k) k N
ω θ θ ω θ θ
θ θ
− −
= − + −
+ + = −
ɶɶ ɶ
ɶɶ ɶɶ
v
v
(2.93)
37. Nonlinear model identification of airplanes using noisy flight data
37
where kω is the kth frequency. The transformed innovations ( )kɶv are uncorrelated
Gaussian random variables.
[ ] 0,
,T vv
E (k)
S
E (k) (k)
N
=
=
ɶ
ɶ ɶ
v
v v
(2.94)
where vvS is a real matrix with diagonal elements equal to the power spectral densities
of the elements of ( )iv , and †
(i)ɶv is the complex conjugate transpose of ( )iv . The left
side of (2.93) requires that the trend and bias term be removed from the sequence ( )x t ,
since
[ ]
0 0
( ) ( ) ( ) ( ) (0)
( ) ( ) (0),
T T
j t j t j T
j T
x t x t e dt j x t e dt x T e x
j x x T e x
ω ω ω
ω
ω
ω ω
− − −
−
= = + −
= + −
∫ ∫ɺ ɺ ɺ
ɶ
FFFF
(2.95)
It can be written from (2.93)
1
1
1 2
( ) ( )( ( )) ( ) ( ) ( )
( )( ( )) ( )
( , ) ( ) ( , ) ),
k
k
z k C j I A B D u k
C j I A K I (k)
= G k u k G k (k
θ ω θ θ θ
θ ω θ θ
θ θ
−
−
= − +
+ − +
+
ɶɶ
ɶ
ɶɶ
v
v
(2.96)
where G1 and G2 are the system transfer matrices.
1
1
1
2
( , ) ( )( ( )) ( ) ( ) ,
( , ) ( )( ( )) ( ) .
k
k
G k C j I A B D
G k C j I A K I
θ θ ω θ θ θ
θ θ ω θ θ
−
−
= − +
= − +
(2.97)
According to the Kalman filter representation in (2.88) is invertible; thus G2 is
nonsingular, and the innovations can be written as:
1 1
2 2 1( , ) ( ) ( , ) ( , ) ( ),(k)= G k z k G k G k u kθ θ θ− −
−ɶ ɶɶv (2.98)
In order to develop the likelihood function, a NV vector that consists of all innovations
up to and including the frequency for which 1k N= − is introduced.
[ ](0) (1) ... ( 1) ,NV N= −ɶ ɶ ɶv v v (2.99)
( )kɶv has a probability density ( )p ɶɶ v , then it can be written applying the definition of
probability densities:
1 1( ) ( 1) ( ).N N Np V p N V p V− −= − ɶv (2.100)
Repeated use of (2.100) leads to the expression of the likelihood function:
38. Nonlinear model identification of airplanes using noisy flight data
38
[ ]1 2 1
( ; ) ( )
( 1) ( 2) ... (1) (0) .
N N
N N
L V p V
p N V p N V p V p
θ θ
− −
=
= − − ɶ ɶ ɶ ɶv v v v
(2.101)
The distribution of ( )kɶv is Gaussian, thus the distribution of kV is also Gaussian.
Hence, the probability density for this complex Gaussian vector is
0
0
† 1
( ) exp ( ) ( ) .
n
k vvn
vv
N
p k V N k S k
Sπ
−
= − ɶ ɶ ɶv v v (2.102)
Combining (2.101) and (2.102), the negative log-likelihood function ( ; )NL V θ is
[ ]
1
† 1
0
0
( ; ) ( ) ( ) ( ) .
N
N vv vv
k
ln L V J N k S k Nln S Nn ln
N
π
θ θ
−
−
=
− = = + +
∑ ɶ ɶv v (2.103)
The term on the far right side can be neglected, because it is unaffected by θ , the cost
function to be minimized then can be written as
1
† 1
0
( ) ( ) ( ) .
N
vv vv
k
J N k S k Nln Sθ
−
−
=
= +∑ ɶ ɶv v (2.104)
The ML parameter vector estimate is the value of θ that minimizes the (2.104). The
estimate of ˆ
vvS has the form of
1 1 †
†
0 0
ˆ ˆ ˆ( ) ( ) ( ) ( , ) ( ) ( , ) ,
N N
vv
k k
S k k z k y k z k y kθ θ
− −
= =
= = − − ∑ ∑ɶ ɶ ɶ ɶɶ ɶv v (2.105)
where ˆθ is an estimate of the parameter vector θ . The initial state of ˆ
vvS can be
computed by using 0θ that is the nominal starting value of the unknown parameter
vector θ . The estimates of the remaining parts can be done by using the modified
Newton-Raphson method. For a given ˆ
vvS the cost function is
1
† 1
0
( ) ( ) ( ),
N
vv
k
J k S kθ
−
−
=
= ∑ ɶ ɶv v (2.106)
that is minimized by iteratively computing
0
ˆ ,θ θ θ= + ∆ (2.107)
where the parameter vector update is
1
0
ˆ ( ) '( ),M Jθ θ θ−
∆ = − (2.108)
and M is the Fisher information matrix:
2 2
.N
T T
lnL(V ; ) J( )
M E E
θ θ
θ θ θ θ
∂ ∂
= − = ∂ ∂ ∂ ∂
(2.109)
39. Nonlinear model identification of airplanes using noisy flight data
39
Since, ˆθ∆ is a vector with only real elements, and the negative log-likelihood function
is also real, the first and second-order gradients of the cost function ( )J θ are also real:
1
† 1
0
1
† 1
0
( )ˆ( ) 2 Re
( )ˆ2 Re ,
N
vv
k
N
vv
k
k
J N (k)S
y k
N (k)S
θ
θ
θ
−
−
=
−
−
=
∂
= ∂
∂
= − ∂
∑
∑
ɶ
ɶ
ɶ
ɶ
v
v
v
(2.110)
2 †1
1
0
†1
1
0
( ) ( ) ( )ˆ2 Re
( ) ( )ˆ2 Re .
N
vvT
k
N
vv
k
J k k
N S
y k y k
N S
θ
θ θ θ θ
θ θ
−
−
=
−
−
=
∂ ∂ ∂
=
∂ ∂ ∂ ∂
∂ ∂
=
∂ ∂
∑
∑
ɶ ɶ
ɶ ɶ
v v
(2.111)
The elements of both cost gradients can be expressed as
† †1
† 1 1 1 † 11 2
2 2 1 2
0
( ) ˆ ˆ ˆ2Re ( ) ( ) ( ) ,
N
vv zu uu
kj j j
G GJ
Tr G S G S G S Tr G
θ
θ θ θ
−
− − − −
=
∂ ∂∂
= − − −
∂ ∂ ∂
∑ (2.112)
†2 1
† 1 1 11 1
2 2
0
†
† 1 12 2
2 2
( ) ˆ ˆ2Re ( )
( )
−
− − −
=
− −
∂ ∂∂
= =
∂ ∂ ∂ ∂
∂ ∂
+
∂ ∂
∑
N
ij vv uu
ki j j i
j i
G GJ
M Tr G S G S
G G
Tr G G
θ
θ θ θ θ
θ θ
(2.113)
where the estimates of the input spectral density matrix and the cross spectral density
matrix, are respectively
†
†
ˆ ( ) ( ) ( ),
ˆ ( ) ( ) ( ).
uu
zu
S k u k u k
S k z k u k
=
=
ɶ ɶ
ɶɶ
(2.114)
The final estimates have the same properties given in section 2.3.2.
40. Nonlinear model identification of airplanes using noisy flight data
40
2.4.2 Output-error method
As was done in the time-domain analysis, the ML in the frequency domain can be
simplified when there is no process noise. Hence, the resulting system is deterministic.
[ ]
†
( ) ( ) ( ) ( ) ( ),
( ) ( ) ( ) ( ) ( ),
( ) ( , ) ( ) ( ),
( ) 0,
( ) ( ) ,
k
vv
j x k A x k B u k
y k C x k D u k
z k G k u k k
E k
S
E k k
N
ω θ θ
θ θ
θ
= +
= +
= +
=
=
ɶ ɶ ɶ
ɶ ɶ ɶ
ɶɶɶ
ɶ
ɶ ɶ
v
v
v v
(2.115)
where
1
1( , ) ( , ) ( )( ( )) ( ) ( ),
2 / , 0,1,2,..., 1k
G k G k C j I A B D
k T k N
θ θ θ ω θ θ θ
ω π
−
= = − +
= = −
(2.116)
and vvS the spectral density matrix of ( )iv . The innovations are reduced to the output
errors
( , ) ( ) ( , ) ( ) ( , ) ( ),k z k y k z k G k u kθ θ θ= − = −ɶ ɶ ɶɶ ɶv (2.117)
The negative log-likelihood function and ˆ
vvS then can be written
1
† 1
0
( ) ( , ) ( , ) .
N
vv vv
k
J N k S k Nln Sθ θ θ
−
−
=
= +∑ ɶ ɶv v (2.118)
1 1 †
†
0 0
ˆ ˆ ˆ( , ) ( , ) ( ) ( , ) ( ) ( , ) .
N N
vv
k k
S k k z k y k z k y kθ θ θ θ
− −
= =
= = − − ∑ ∑ɶ ɶ ɶ ɶɶ ɶv v (2.119)
In order to estimate the unknown parameters, the modified Newton-Raphson method
is used. The elements of the first and second-order gradients are computed by
simplifying (2.112) and (2.113), where G2 = I and G1 = G:
†1
1
0
( ) ˆ ˆ ˆ2Re ( ) ,
N
vv zu uu
kj j
GJ
Tr S S GS
θ
θ θ
−
−
=
∂∂
= − −
∂ ∂
∑ (2.120)
†2 1
1 1
0
( ) ˆ ˆ2Re ,
N
ij vv uu
ki j j i
G GJ
M Tr S S
θ
θ θ θ θ
−
−
=
∂ ∂∂
= =
∂ ∂ ∂ ∂
∑ (2.121)
Estimates of the input spectral density matrix and the cross spectral density matrix
have the same form given in (2.114). The negative log-likelihood function, its gradient
and the information matrix can be expressed as
41. Nonlinear model identification of airplanes using noisy flight data
41
1
† 1
0
ˆ( ) ( , ) ( , ),
N
vv
k
J N k S kθ θ θ
−
−
=
= ∑ ɶ ɶv v (2.122)
1
† 1
0
( ) ˆ2 Re ( ) ( , ) ,
N
vv
k
J
N S k S k
θ
θ
θ
−
−
=
∂
= − ∂
∑ ɶv (2.123)
2 1
† 1
0
( ) ˆ( ) 2 Re ( ) ( ) ,
N
vvT
k
J
M N S k S S k
θ
θ
θ θ
−
−
=
∂
= = ∂ ∂
∑ (2.124)
where ( )S k is the output sensitivity matrix with dimensions 0 pn n× given by
( , ) ( )
( ) .
G k u k
S k
θ
θ
∂
=
∂
ɶ
(2.125)
The modified Newton-Raphson step is given by (2.107) and (2.108).
When the measured data is in the form of frequency response functions, the output-
error parameter estimation algorithm can be easily modified. In this particular case,
the cost function can be written
[ ] [ ]
1
†† 1
0
( ) ( ) ( ) ( , ) ( ) ( , ) ( ),
N
E vv E
k
J N u k G k G k S G k G k u kθ θ θ
−
−
=
= − −∑ ɶ ɶ (2.126)
where ( , )G k θ is matrix with transfer functions as elements, and ( )EG k is a matrix of
experimentally determined frequency responses. Cost functions in (2.122) or (2.126)
then can be minimized with respect to unknown parameter vector θ . When the
dynamic system has only one input, the output-error cost function can be written as
[ ] [ ]
1
†* 1
0
( ) ( ) ( ) ( , ) ( ) ( , ) ( ),
N
E vv E
k
J N u k G k G k S G k G k u kθ θ θ
−
−
=
= − −∑ ɶ ɶ (2.127)
In order to optimize the cost functions, it is not necessary to include all of the
frequencies. In the next chapter, a method that allows using arbitrary frequencies is
introduced. This method is called the high-accuracy finite Fourier transform. Using
arbitrary frequencies, automatically discards some of the power in the time-domain
data. Generally, this is equivalent to a zero-lag, low-pass filtering procedure, which
improves the convergence and accuracy of the parameter estimates. The weighting
matrix in the cost function is the spectral density matrix, which is ideally estimated as
a function of frequency index k. Nevertheless, in most practical cases, the frequencies
that correspond to the bandwidth of the dynamic system modes are used; which is also
the bandwidth where most of the residual power resides in the case of colored
residuals. Hence, using a constant vvS over frequencies used in the analysis is a good
approximation of the spectral density of the residual power. Accordingly, the assumed
42. Nonlinear model identification of airplanes using noisy flight data
42
noise model matches well to reality, and it is not necessary to compute the estimated
error bounds for colored residuals when parameter estimates are done in the frequency
domain.
2.4.4 Equation-error method
Assuming that all of the state variables can be measured without errors, the equation-
error model can be written
( ) ( ) ( ) ( ) ( ) ( ),k k k k w kj x A x B u B wω ω θ ω θ ω ω= + +ɶ ɶ ɶ ɶ (2.128)
where process noise is included. Considering the state derivatives at discrete
frequencies 2 / ,k k Tω π=
( ) ( ), 2 / .k kz k j x k k Tω ω π= =ɶɶ (2.129)
The model equation then can be written as
( ) ( ) ( ) ( ) ( ) ( ), 1,2,3,..., 1z k A x k B u k v k k Nθ θ= + + = −ɶ ɶ ɶɶ (2.130)
where ( ) ( )wv k B w k=ɶ ɶ are the equation errors, with
[ ]
†
( ) 0,
( ) ( ) .vv
E v k
S
E v k v k
N
=
=
ɶ
ɶ ɶ
(2.131)
The cost function of the equation-error method has the form
[ ] [ ]
1
† 1
0
( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ,
N
vv
k
J N z k A x k B u k S z k A x k B u kθ θ θ θ θ
−
−
=
= − + − +∑ ɶ ɶ ɶ ɶɶ ɶ (2.132)
where the innovations are equation errors:
( ) = ( ) ( ) ( ) ( ) ( ).k z k A x k B u kθ θ− +ɶ ɶ ɶɶv (2.133)
Estimation of the elements in the unknown parameter vector θ is obtained by
minimizing the cost function given in (2.132). Assuming that the errors in the
equations are mutually uncorrelated, this procedure is applied separately to each state
equation, corresponding to each row in (2.128). Similarly to the time-domain the case,
the equation-error method can be used to estimate dimensional or nondimensional
aerodynamic parameters.
Equations of the measured output can also be used to estimate aerodynamic
parameters. In that case, the vector equation has the form
( ) ( ) ( ) ( ) ( ) ( ), 0,1,2..., 1z k C x k D u k v k k Nθ θ= + + = −ɶ ɶ ɶɶ (2.134)
The innovations are
43. Nonlinear model identification of airplanes using noisy flight data
43
( ) ( ) ( ) ( ) ( ) ( ).k z k C x k D u kθ θ= − +ɶ ɶ ɶɶv (2.135)
For instance, output equations for measured accelerometer outputs can be used to
estimate aerodynamic force parameters.
2.5 Accuracy of parameter estimates
In the last two sections the time-domain and frequency domain ML parameter
estimation methods were introduced. In this section the accuracy and confidence
intervals of these methods are investigated. In the case of a nonlinear estimator, the
developing of the parameter accuracy is much more difficult then in the case of a linear
estimator. However, in order to compute the accuracy of a nonlinear ML estimator,
the Cramer-Rao lower bound can be used, which can be obtained from the main
diagonal elements of the inverse information matrix. In the development of ML
estimator, it was assumed that the measurement noise ( )v i is a random white
sequence. Hence, the power of the noise is evenly spread over the frequency range
[ ]0, Nf , where ( )1/ 2Nf t= ∆ the Nyquist-frequency. The Nyquist-frequency is a
property of the dynamic system. In other words, all of the important signal
components are within the frequency interval of [ ]0, Nf .
The relation between the one-sided power spectral density of the noise and the
covariance matrix is
,
2
N
PSD
R PSDf
t
= =
∆
(2.136)
where PSD is a diagonal matrix with the power spectral densities of the elements of
the noise vector on the main diagonal. The Cramer-Rao inequality for the parameter
covariance matrix of the output error estimator has two alternative forms
1
1
1
ˆ( ) ( ) ( ) ,
N
T
i
Cov S i R S iθ
−
−
=
≥
∑ (2.137)
1
1
1
1ˆ( ) ( )( ) ( ) .
2
N
T
i
Cov S i PSD S i
t
θ
−
−
=
≥ ∆
∑ (2.138)
In practical cases, the residuals are colored. Namely, the power spectral densities
of the residuals are concentrated in a particular frequency band which corresponds to
the rigid-body aircraft dynamics. However, in the development of the ML estimator an
assumption that the residuals are white was made, because the power spectral densities
44. Nonlinear model identification of airplanes using noisy flight data
44
of the residuals are not known a priori. To address this problem, the residuals are
approximated as a band-limited white noise sequence. This is method can be seen in
Figure 2.4. It can now be written
,
,
2 2
R PSD B
R PSD
tB t
= ⋅
=
∆ ∆
(2.139)
and
1
1
1
1ˆ( ) ( ) ( ) ,
2
N
T
i
Cov S i R S i
tB
θ
−
−
=
≥ ∆
∑ (2.140)
from (2.138). It can be seen in (2.140) that in the case of colored noise, the Cramer-Rao
bounds can be underestimated by a factor 1/ (2 ) .NtB f B∆ =
Figure 2.4 Approximation of colored noise with band-limited white noise
Cramer-Rao bounds can be improved by assuming that residuals are colored, including
an estimate of the residual coloring in the expression for the Cramer-Rao bound
estimate. This approach can be generalized for output-error parameter estimation:
1
1 1 1 1
1 1
ˆ ˆ( ) ( ) ( ) ( ) ,
N N
T
vv
i j
Cov M S i R R i j R S j Mθ
−
− − − −
= =
≥ −
∑ ∑ (2.141)
where ( )vvR i j− is the autocorrelation matrix for the output residual vector. This can
be calculated by
1
1ˆ ˆ( ) ( ) ( ) ( ), 0,1,2,...,
N k
T
vv vv
i
R k v i v i k R k k r
N
−
=
= + = − =∑ (2.142)
where the value of r determines the maximum time difference used in the computation
of the residual autocorrelation. This estimate usually calculates only the diagonal
elements, because the other elements are zero or close to zero. The elements of S, M
45. Nonlinear model identification of airplanes using noisy flight data
45
and R are from the conventional time-domain ML estimator calculations; thus, they
are the same quantities as in (2.41), (2.50) and (2.140). Accordingly, (2.141) and (2.142)
can be used as a residual postprocessor after conventional time-domain ML parameter
estimation, which corrects the parameter covariance matrix. As was discussed earlier,
in the case of the frequency domain ML estimator, there is no need to compute a
correction for the parameter covariance matrix.
In the case of linear parameter estimation, the confidence interval can easily be
computed. The confidence level associated with this interval expresses the probability
of finding the adequate parameter value within the interval. Therefore, in the case of
nonlinear parameter estimation, the confidence ellipsoid is just a quadratic
approximation of the confidence region. Furthermore, the parameter estimates in
nonlinear case do not have Gaussian distribution, the approximation of the confidence
level is based on the F-distribution. In [1] a method of computing confidence intervals
for ML estimators is presented. That method has not been widely used, because the
algorithm is very time-demanding.
46. Nonlinear model identification of airplanes using noisy flight data
46
3 Data preprocessing
In most practical aircraft identification cases, the measurements are corrupted by
noises or any other kind of disturbance, which can be caused serious problems in the
parameter estimation. Hence, it is very important to apply methods to separate
deterministic signals from random noise for a measured time series. In this chapter
some data preprocessing methods are presented. First, the global smoothing in
frequency domain is introduced followed by the numerical differentiation. Finally, a
practical method for computing the finite Fourier transform based on the chirp z-
transform is discussed. The theory presented in this chapter is based on [1].
3.1 Filtering and smoothing
Filtering is a common approach to separate deterministic parts from noise. Filters can
be implemented by a circuit using hardware elements or by a computer-implemented
transfer function. Furthermore, filters have their own dynamics; thus, they represent
an additional dynamic between the physical system and the signal of interest. Filtering
can modify phase and amplitude of the signal resulting in a false modeling result.
Filtering applications use only the current and past data. Furthermore, filtering
methods assume that the analyst knows the frequency range of the physical system.
Contrarily, in the case of identification application, it is not always clear what this
frequency range should be, and a good choice of the frequency band is the same for
different measured sequences. To address these problems, global smoothing method
based on Fourier analysis can provide information about the adequate frequency band
to be used for system identification. Global smoothing method in the frequency
domain is presented in the next section.
Smoothing applications use subsequent data; thus, these methods can only be
used post-flight.
3.2 Global smoothing in the frequency domain
As was mentioned above, global smoothing has several beneficial properties in the case
of aircraft identification problems. Contrarily with the local smoothing methods which
47. Nonlinear model identification of airplanes using noisy flight data
47
are described in [1] in detail, global smoothing concerns the smoothing problem in
the global sense. Since it works in the frequency domain, it is based on the Fourier
analysis.
Consider a noisy measured signal ( )z t sampled at constant intervals t∆ ,
( ) ( ), 0,1,2,..., 1z i z i t i N= ∆ = − (3.1)
The aim is to distinguish signal and noise, and then separate the two components. The
measured sequence then can be written
( ) ( ) ( ), 0,1,2,..., 1z i y i v i i N= + = − (3.2)
The way for determining the noise sequence ( ), 0,1,2,..., 1v i i N= − is to find the signal
components in the frequency domain, invert the transformation to get the signal in the
time domain ( )y i , then compute the noise ( )v i from (3.2).
( ) ( ) ( ), 0,1,2,..., 1v i z i y i i N= − = − (3.3)
Fourier series expansion has an assumption that the signal under investigation is
periodic. Furthermore, most measured data from flight tests have discontinuities in the
amplitude and in first and higher order derivatives of the endpoints. A typical flight
test measurement is depicted in Figure 3.1. This data sequence is from [5] and [6].
These discontinuities can cause difficulties in determining an adequate representation
of the signal in the frequency domain, because the Fourier series expansions of signals
with these discontinuities have much slower convergence than a signal with no
discontinuities. This means that the magnitudes of the Fourier coefficients decrease
asymptotically with 1
k−
in the case of signals with discontinuities, and with 3
k−
in the
case of signals with no discontinuities, where k denotes the number of terms in the
Fourier expansion. To address this problem, it is possible to remove the endpoint
discontinuities from any time series by subtracting the linear trend from the original
measured time series. That makes the amplitudes at the endpoints equal to zero.
48. Nonlinear model identification of airplanes using noisy flight data
48
Figure 3.1 Pitch rate measured time series
Let ( )g i be the new time series with ( 1) (0) ( 1) 0g N g g N− + = = − = . Then ( )g i can
be computed as
( 1) (0)
( ) ( ) (0) ,
1
( ) ( ), 0,1,2,... 1
z N z
g i z i z i
N
g i g i i N
− −
= − − −
− = − = −
(3.4)
Figure 3.2 shows the new time series using the sequence of Figure3.1.
Figure 3.2 Pitch rate measured time series with endpoints discontinuities
removed
Define the vector
[ ]( 1) ( 2) ... ( 1) (0) (1) ... ( 1) ,g g N g N g g g g N= − + − + − − (3.5)
49. Nonlinear model identification of airplanes using noisy flight data
49
and its Fourier series expansion
1
1
ˆ( ) ( )sin , 0,1,2,... 1
1
N
k
i
g i b k k i N
N
π
−
=
= = − −
∑ (3.6)
where ˆ( )g i denotes the approximation of ( )g i , and ( )b k are Fourier sine series
coefficients. Note that there are only positive values in (3.6), because those values
correspond the original measured time sequence. The Fourier sine series coefficients
for g can be computed as
2
1
2
( ) ( )sin , 0,1,2,..., 1
1 1
N
i
i
b k g i k k N
N N
π
−
=
= = − − −
∑ (3.7)
The index 1N − corresponds to the Nyquist frequency, also (0)g and ( 1)g N − are
zero. The period of the kth Fourier sine series can be computed by
2( 1)
,k
N t
T
k
− ∆
= (3.8)
and then the kth frequency is given by
,
2( 1)
k
k
f
N t
=
− ∆
(3.9)
To achieve an effectively smoothed data, it is necessary that the Nyquist frequency Nf
be much higher than the highest frequency components in the signal.
The Fourier sine series computed above contains both signal and noise
components. Note that, the Fourier series expansion of a coherent signal can be
visually distinguished from Fourier series of a noise sequence. Since the signal with
discontinuities mentioned above has Fourier series coefficient amplitudes that decrease
asymptotically, and the incoherent noise has constant power with relatively small
amplitude over the entire frequency range up to the Nyquist frequency. The contrast is
so high between components of noise and components of coherent signal that it is
often easy to find an adequate separation point visually. Visually determining the cut-
off frequency generates inaccuracies. To address this problem the Wiener filter can be
used.
Consider the Fourier transform of the measured time series given in (3.2)
( ) ( ) ( ).z f y f v f= +ɶ ɶɶ (3.10)
The aim is to develop a frequency domain filter that minimizes the squared error
between the true signal ( )y fɶ and the estimated signal ˆ( )y fɶ over the entire frequency
range of the system. This can also be written as:
50. Nonlinear model identification of airplanes using noisy flight data
50
2
0
ˆ( ) ( ) ,
Nf
y f y f df − ∫ ɶ ɶ (3.11)
where Nf is the Nyquist frequency.
The estimated signal in the frequency domain can be computed by multiplying a filter
( )fΦ with ( )z fɶ .
ˆ ˆ( ) ( ) ( ) ( ) ( ) ( ) .y f f z f f y f y f = Φ = Φ −
ɶ ɶ ɶɶ (3.12)
Then, we can substitute (3.12) to (3.11), since ( ) ( )y f v fɶ ɶ is equal to zero. Because of
the incoherence of the noise, (3.11) can be written as
{ }2 2 2 2 2
0
( ) 2 ( ) ( ) ( ) ( ) ( ) .
Nf
y f f y f f y f v f df − Φ + Φ + ∫ ɶ ɶ ɶ ɶ (3.13)
Solving the equation for ( )fΦ by taking the derivative of (2.15) with respect to ( )fΦ ,
and setting the result equal to zero gives
2
2 2
( )
( ) , 0
( ) ( )
N
y f
f f f
y f v f
Φ = ≤ ≤
+
ɶ
ɶ ɶ
(3.14)
This can be written in terms of discrete frequency index k ,
2
2 2
( )
( ) , 0 1
( ) ( )
y k
k k N
y k v k
Φ = ≤ ≤ −
+
ɶ
ɶ ɶ
(3.15)
The resulting optimal filter in the frequency domain given by (3.15) is the Wiener
filter. This optimal filter from (3.15) then multiplies the ( )b k in the inverse Fourier
transform. Hence, the smoothed signal is computed from
1
1
ˆ ( ) ( ) ( )sin , 0,1,2,..., 1
1
N
s
k
i
g i k b k k i N
N
π
−
=
= Φ = − −
∑ (3.16)
The terms where ( ) ( )k b kΦ is sufficiently small can be neglected.
Applying a Wiener filter gives room for errors caused by visual determination of
the cut-off frequency, since it is near unity at low frequencies, then decreases slowly to
zero at high frequencies, removing the power components of the noise.
Some noise components can be found in lower frequency range, but there is no
method to distinguish them from the signal of interest, which also lies in low-
frequency. However, when the signal-to-noise ratio is high, the power of the noise
relative to the power of the signal is very small, and it becomes much smaller after
removing the noise components from the higher frequency range.
51. Nonlinear model identification of airplanes using noisy flight data
51
Finally, the linear trend removed from the signal by (3.3) has to be restored to
the smoothed signal. The smoothed signal then can be written as
( 1) (0)
ˆ ˆ( ) ( ) ( ) (0) , 1,2,3,..., 1
1
s s
z N z
y i z i g i z i i N
N
− −
= = + + = − −
(3.17)
The endpoints of the original measured sequence are excluded from the computing of
the smoothed signal. It can cause serious errors in the case of very noisy data. To
address this problem, the endpoints have to be smoothed locally by using a local
smoothing method presented in details in [1]. The smoothed signal is depicted in
Figure3.3.
Eventually, the noise sequence can be computed by using (3.3). Note here, that
the noise sequence computed by applying a Wiener filter is a wideband random white
noise.
Figure 3.3 Smoothed pitch rate measured time series
3.3 Numerical differentiation
To compute an adequate numerical derivative for a measured sequence is a common
problem in system identification applications, especially in the case of aircraft system
identification, when there are no sensors to measure some signals which are very
important in model parameter determination. For instance, generally, there is no
sensor to measure body-axis angular accelerations, so the values of , ,p q rɺ ɺ ɺ must be
computed by numerically differentiating the body-axis angular rate measurements.
52. Nonlinear model identification of airplanes using noisy flight data
52
Applying the central finite differences method to compute numerical time
derivatives for a noisy measurement sequence increases the noise. A better method to
compute numerical time derivatives is the local smoothing solution. This method
involves fitting a polynomial in time to measured data at the point to be smoothed.
The polynomial to be fitted is a second-order function in terms of time that can be
written
2
0 1 2
1
.
2
y a a t a t= + + (3.18)
The parameters in (3.18) can be identified by using the following method. Let ( )z i
denotes the ith measured data point sampled at time i t∆ , then the equations can be
written as
2
0 1 2
2
0 1 2
0
2
0 2
2
0 2
1
( 2 ) ( 2 ) ( 2)
2
1
( ) ( ) ( 1)
2
( )
1
( ) ( ) ( 1)
2
1
(2 ) (2 ) ( 2)
2
a a t a t z i
a a t a t z i
a z i
a t a t z i
a t a t z i
+ − ∆ + − ∆ = −
+ −∆ + −∆ = −
=
+ ∆ + ∆ = +
+ ∆ + ∆ = +
(3.19)
There are five equations for determining three unknown parameters. These equations
can be written in matrix form as
( )
( )
( )
( )
2
2
0
1
2 2
2
1 2 2
( 2)1
1
( 1)2
1 0 0 ,( )
1 ( 1)
1
2 ( 2)
1 2 2
t t
z i
t t
a z i
a z i
a z i
t t
z i
t t
− ∆ ∆
− −∆ ∆ − = + ∆ ∆
+
∆ ∆
(3.20)
Then the resulting normal equations have the following form
( )
( )
2
2
0 2
2
2
1
2
2
2 2
0 2
2
5 5 ( ),
10 ( ),
10 17 ( ),
i
k i
i
k i
i
k i
a t a z k
ta kz k
a t a k z k
+
= −
+
= −
+
= −
+ ∆ =
∆ =
+ ∆ =
∑
∑
∑
(3.21)
53. Nonlinear model identification of airplanes using noisy flight data
53
When the local polynomial model given by (3.18) is differentiated with respect to time,
which is given by
1 2 ,y a a t= +ɺ (3.22)
then substituting zero for t , the resulting value of the local smoothed derivative is
equal to the coefficient of the linear term in (3.18). Then this method can be used for
each data point.
Smoothed numerical derivatives of a signal can also be computed by using the
global Fourier smoothing. Equations (3.16) and (3.17) are used to determine the
smoothed derivative. In order to obtain the smoothed derivative, the sine series and
the linear trend are differentiated before transforming back to time domain. The
smoothed derivative of the signal given by (3.17) then can be written as
1
1
ˆ( ) ( 1) (0)
( ) ( ) cos ,
1 1 1
0,1,2,..., 1
N
k
dy i z N z k i
k b k k
di N N N
i N
π
π
−
=
− −
= + Φ − − −
= −
∑ (3.23)
3.4 Finite Fourier Transform
In section 2.3.1 the finite Fourier transform was considered as
2
0
( ) ( ) ,
T
j ft
x f x t e dtπ−
= ∫ɶ (3.24)
and it can be approximated by
1
2
0
( ) ( ) ,
N
j fi t
i
x f t x i e π
−
− ∆
=
≈ ∆ ∑ɶ (3.25)
Another approximation for the finite Fourier transform can be given by applying
discrete frequencies defined in (2.80).
1
(2 / )
0
( ) ( ) , 0,1,2,..., 1
N
j k N i
i
x f t x i e k Nπ
−
−
=
≈ ∆ = −∑ɶ (3.26)
The summation in (3.26) is the discrete Fourier transform ( )X k , also the finite
Fourier transform can be approximated by multiplying the discrete Fourier transform
by the sampling interval t∆ .
( ) ( ),x k tX k= ∆ɶ (3.27)
where
1
(2 / )
0
( ) ( ) , 0,1,2,..., 1
N
j k N i
i
X k x i e k Nπ
−
−
=
= = −∑ (3.28)
54. Nonlinear model identification of airplanes using noisy flight data
54
In the case of flight data analysis, there are two important disadvantages to using the
approximation mentioned above:
(i) The spacing of the discrete frequencies for the discrete Fourier transform is
equal to the reciprocal of the length of data sequence. Hence, the frequencies
are fixed at values defined by N and t∆ . To achieve an efficient and fast
Fourier transformation, this particular selection of frequencies has to be
applied. Which means, that the frequencies cannot be chosen arbitrarily.
(ii) Hence, the approximation of the finite Fourier transform is a zeroth-order
Euler approximation of the integrand [ ]( ) ( ) cos( ) sin( )j t
x t e x t t j tω
ω ω−
= − . This
integrand oscillates as the time variable t changes causing inaccuracies in the
approximation. The oscillation increases as the frequency increases. There is
the same problem when t∆ gets larger.
It can be seen that using the fast Fourier transformation causes inaccuracies as the
data sequence decreases, leading to a loss of detail in the frequency domain.
Furthermore, modal frequencies for a rigid-body dynamics of a full-scale aircraft are
usually below 2Hz. For such a small frequency band, most of the processing in the
transformation rests outside the range of interest.
To address these problems in [1], the defining integrand of the Fourier
transformation given by (3.24) is approximated by using an approach based on the
chirp z-transform, where the frequencies can be chosen arbitrarily regardless of the
length of the data sequence. Applying this method for the frequencies of the frequency
band of interest, a high accuracy approximation of the Fourier transform can be
achieved with excellent computational efficiency.
The discrete Fourier transformation in (3.26-27) can be written as
1
0
( ) ( ) ,
N
ki
i
X k x i AW
−
−
=
= ∑ (3.29)
where
2
1, .
j
N
A W e
π
= = (3.30)
k
AW for 0,1,2,..., 1k N= − represents equally spaced points on the unit circle in the
complex plane. Hence, the k
AW is a complex transform variable z , the selection given
in (3.30) is a z-transform of the data in the time-domain ( ), 0,1,...,x i i N= . A and W
can be changed to achieve different contours in the complex plane. This method is
55. Nonlinear model identification of airplanes using noisy flight data
55
called the chirp z-transform. In fact, angular steps are determined by W , and the value
of A can be selected as a starting point in the complex plane. So the chirp z-transform
is a discrete Fourier transform with arbitrarily selectable frequency range and
resolution.
When the contour in the complex plane is along the unit circle, W and A have the
forms of
0
,
,
j
j
A e
W e
θ
θ∆
=
=
(3.31)
where 0 0 / tω θ= ∆ is the lower limit of the frequency band in the chirp z-transform in
rad/s and / tω θ∆ = ∆ ∆ is the frequency resolution. Values of 0θ and θ∆ can be
chosen arbitrarily. The only limitations for the resolution and the lower limit is both
must be in the range [ ]0, / tπ ∆ , where / tπ ∆ is the Nyquist angular frequency in
rad/s. This chirp z-transform can be used to calculate the finite Fourier transform
when the selected frequencies are regularly spaced in the frequency range of interest.
In the case of aircraft system identification, evenly spreading the frequencies is the
preferred approach to capture all important features in the frequency domain.
The chip z-transform evaluated at M arbitrarily frequencies kf in Hz, where
the selected frequency range is 0 k Nf f≤ ≤ yields
1
2
0
( ) ( ) ,
0 , 0,1,2,..., 1
k
N
j f i
i
k N
X k x i e
f f k M
π
−
−
=
=
≤ ≤ = −
∑ (3.32)
The number of frequencies can be chosen with the limitation that M cannot be larger
then 2N to avoid numerical problems:
2 .k kt f tθ ω π= ∆ = ∆ (3.33)
The expression for the high-accuracy calculation can be written as
{
]}
0 1 2 3
/ * *
0 1
* *
2 3
( ) ( ) ( )
( ) (0) ( ) (1) ( ) (2) ( ) (3)
( ) ( 1) ( ) ( 2)
( ) ( 3) ( ) ( 4) ,
j T t
x t W X k
x x x x
e x N x N
x N x N
θ
θ θ
γ θ γ θ γ θ γ θ
γ θ γ θ
γ θ γ θ
∆
≈ ∆
+ + + +
+ − + −
+ − + −
ɶ
(3.34)
where 0 1 2( ), ( ), ( ), ( )W θ γ θ γ θ γ θ and 3 ( )γ θ are the weights calculated by analytically
evaluating the finite Fourier transform integral in (3.34) using cubic Lagrange
56. Nonlinear model identification of airplanes using noisy flight data
56
interpolation applied to the time-domain data. According to [1], the resulting
expressions for the weights have the form:
4 6
2 4 6
0
2 4 6
11 23
( ) 1 ,
720 15120
2 1 103 169
( )
3 45 15120 226800
2 2 8 86
,
45 105 2835 467775
W
j
θ θ θ
γ θ θ θ θ
θ θ θ θ
≈ − +
≈ − + + −
− + + +
(3.35a)
2 4 6
1
2 4 6
2 4 6
2
2 4 6
2 4 6
3
2
7 7 5 7
( )
24 180 3456 259200
7 1 11 13
,
72 168 72576 5987520
1 1 5 1
( )
6 45 6048 64800
7 1 11 13
,
90 210 90720 7484400
1 1 5 1
( )
24 180 24192 259200
7 1
360 840
j
j
j
γ θ θ θ θ
θ θ θ θ
γ θ θ θ θ
θ θ θ θ
γ θ θ θ θ
θ θ
≈ − + −
− − + −
≈ − + − +
− − + − +
≈ − + −
− − 4 611 13
.
362880 29937600
θ θ
+ −
(3.35b)
Furthermore, it is advantageous to select small distance between frequencies in the
frequency range of interest, to ensure that all details of the time-domain data are
captured.
The terms to compute the finite Fourier transform applying the chirp z-transform
have the form:
0 , 0,1,2,..., 1kf f k f k M= + ∆ = − (3.36)
1 0( )
.
( 1)
f f
f
M
−
∆ =
−
(3.37)
The steps of the procedure now can be written
(i) Choose three of the four values in (3.37) and then compute the
remaining value. This determines the frequencies for the analysis.
(ii) Calculate the M values of θ from (3.33).
(iii) Use the chirp z-transform to compute the discrete Fourier transform
for the selected frequencies applying (3.29-30).
(iv) Compute the high accuracy finite Fourier transform by using (3.34-
35).