Академический Документы
Профессиональный Документы
Культура Документы
1
Centre for Complex Dynamic Systems and Control (CDSC), The University of Newcastle, Callaghan, NSW-2308,
AUSTRALIA. E-mail: Tristan.Perez@newcastle.edu.au
2
Department of Engineering Cybernetics, Norwegian University of Science and Technology, N-7491 Trondheim,
Norway. E-mail: Fossen@ieee.org
3
Centre for Ships and Ocean Structures (CeSOS) Norwegian University of Science and Technology, N-7491 Trond-
heim, Norway.
Abstract
This article describes a Matlab toolbox for parametric identification of fluid-memory models associated
with the radiation forces ships and offshore structures. Radiation forces are a key component of force-
to-motion models used in simulators, motion control designs, and also for initial performance evaluation
of wave-energy converters. The software described provides tools for preparing non-parmatric data and
for identification with automatic model-order detection. The identification problem is considered in the
frequency domain.
doi:10.4173/mic.2009.1.1
c 2009 Norwegian Society of Automatic Control
Modeling, Identification and Control
Hydrodynamic
Iden/fica/on
Cummins
Equa/on
Code
Model
with
Viscous
Experiments
&
CFD
Correc/on
Hull geometry
and loading
condition
2
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
By combining terms and adding the linearised restor- for a finite set of frequencies of interest—see, for exam-
ing forces τ res = −Gξ, the Cummins Equation (Cum- ple, Beck and Reed (2001) and Bertram (2004). Hy-
mins, 1962) is obtained: drodynamic codes based on 3D-potential theory usu-
ally solve, the boundary-value problem associated with
Z t
infinite-frequency that gives A∞ , whereas codes based
(MRB +A∞ )ξ̈+ K(t−t0 )ξ̇(t0 ) dt0 +Gξ = τ exc , (4)
0 on 2D-potential theory do not normally solve this prob-
lem.
Equation (4) describes the motion of ships and offshore
structures in an ideal fluid provided the linearity as-
sumption is satisfied. This model can then be embel-
lished with non-linear components taking into account,
4 Identification of Radiation-force
for example, viscous effects and mooring lines–see Fig- Models
ure 1.
To implement simulations models based on the Cum-
mins equation (4), non-parametric fluid-memory mod-
3 Frequency-domain Models els can be used. This method requires a discrete-time
approximation of the convolution integral and saving
When the radiation forces (3) are considered in the fre- enough past data to evaluate the convolution at each
quency domain, they can be expressed as follows (New- step of the simulation. This approach can be time con-
man, 1977; Faltinsen, 1990): suming and may require significant amounts of com-
puter memory as illustrated in Taghipour et al. (2008).
τ rad (jω) = −A(ω)ξ̈(jω) − B(ω)ξ̇(jω). (5) In addition, the non-parametric models are not amica-
ble the analysis and design of vessel motion control
The parameters A(ω) and B(ω) are the frequency- systems.
dependent added mass and potential damping respec- One way to overcome these difficulties consists of
tively. This representation leads to the following approximating the fluid-memory models by a linear-
frequency-domain relationship between the excitation time-invariant parametric model:
forces and the displacements:
Z t
[−ω 2 [M+A(ω)]+jωB(ω)+G]ξ(jω) = τ exc (jω). (6) ẋ = Â x + B̂ ξ̇
µ= K(t − t0 )ξ̇(t0 ) dt0 ≈
0 µ̂ = Ĉ x,
Ogilvie (1964) showed the relationship between the pa- (10)
rameters of the time-domain model (4) and frequency- where the number of components of the state vector x
domain model (6) using the Fourier Transform of (4): corresponds to the order of the approximating system
and the matrices Â, B̂, and Ĉ are constants. Note that
1 ∞ the above state-space approximation does not have a
Z
A(ω) = A∞ − K(t) sin(ωt) dt, (7) feed-through term D̂ ξ̇ in the output equation. The
ω 0
Z ∞ reason for this is that the mapping ξ̇ 7→ µ has relative
B(ω) = K(t) cos(ωt) dt. (8) degree 1—see Perez and Fossen (2008b) and references
0
therein.
From expression (7) and the application of the The approximation problem (10) can be re-casted in
Riemann-Lebesgue lemma, it follows that A∞ = the frequency domain:
limω→∞ A(ω), and hence the name infinite-frequency
added mass. K(jω) ≈ K̂(jω) = Ĉ(jωI − Â)−1 B̂, (11)
From the Fourier transform, it also follows the
frequency-domain representation of the retardation where K̂(s) is matrix of rational transfer functions with
functions: entries
3
Modeling, Identification and Control
4
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
(ii) If Re{λi } > 0, then set Re{λi } = - Re{λi }, On the other hand, taking the Laplace transform of (3),
and assuming a rational approximation for the convo-
(iii) Reconstruct the polynomial: lution term we obtain
Qik (s) = (s − λ1 )(s − λ2 ) · · · (s − λn ). h
Pik (s) ˙
i
τ̂rad,i (s) = − A∞,ik s + Q ik (s)
ξk (s), (28)
0
h i
P (s) ¨
= − A∞,ik + Qik
ik (s)
ξk (s) (29)
5
Modeling, Identification and Control
identification and to compute the estimates. The tool- The option value 2 gives a good trade-off
box also includes two demos which show how to use between computational speed and accuracy.
the main function. The first demo considers the es- • FDIopt.Iterations – Maximum number of
timation with infinite-frequency added mass available iterations to be used in the iterative linear
(WA), and the second demo considers the estimation LS solution.
when infinite-frequency added mass is not available • FDIopt.PlotFlag – Logic flag. If set to 1, it
(NA). plots the identification results correspond-
The functionality of the main components is de- ing to each iteration of auto order detection
scribed in the following. identification process. A typical value is 0.
• FDIopt.LogLin – Logic flag. If set to 1, all
5.1 FDIRadMod.m the data is plotted in logarithmic scale and
the magnitude of the transfer functions in
Purpose: This function processes the input hydrody-
dB. If set to 0, all the data is plotted in
namic data and estimates the order and the pa-
linear scale.
rameters of a transfer function approximation of
• FDIopt.wsFactor – This is a sampling factor
the fluid-memory model. The function processes
for plotting the data of the parametric ap-
only single-input-single-output models. Hence,
proximation. The sample frequency used to
for a multiple degree of freedom vessel or marine
plot the data is this factor times the mini-
structure, this function should be used for each
mum difference of frequencies in the input
relevant coupling i, k.
vector W. A typical value is 0.1.
Syntax: • FDIopt.wminFactor – The minimum fre-
[KrNum,KrDen,Ainf hat]= quency to be used in the plots is
FDIRadMod(W,A,Ainf,B,FDIopt,Dof) FDIopt.wminFactor*Wmin, where Wmin is the
minimum frequency of the dataset used for
Input Data: identification. Typical value 0.1.
• W – Vector of frequencies. • FDIopt.wmaxFactor – The maximum fre-
• A – Vector of frequency-dependent added quency to be used in the plots is
mass. FDIopt.wmaxFactor*Wmax, where Wmax is the
• Ainf – Infinite-frequency added mass. maximum frequency of the dataset used for
identification. Typical value 2 to 5.
• B – Vector of frequency-dependent potential
damping. Output Data:
• FDIopt – Structure with computation op-
tions. • KrNum,KrDen – Vectors with the numera-
• Dof = [i,k] – Coupling of degrees of free- tor and demoninator coefficients of the es-
dom (this is used to label the plots). timated single-input-single-output transfer
The structure FDIopt has the following fields: function.
• Ainf hat – Estimate of the infinite-frequency
• FDIopt.OrdMax – Maximum order to be used
added mass coeffieicient. If the op-
in automatic order detection. Typical value
tion FDIopt.AinfFlag is set to 1, then
20.
Ainf hat=Ainf, which is part of the input
• FDIopt.AinfFlag – Logic flag. If set to 1, the data. If the option FDIopt.AinfFlag is set
value Ainf is used in the calculations. If set to 0, the input value Ainf is ignored and es-
to 0, the infinite- frequency added mass is timated, so the user can enter any value in
estimated, and the value in the argument of the function argument.
the function is ignored.
• FDIopt.Method – This refers to the methods Description: The function FDIRadMod.m first calls
used to solve the parameter optimisation EditAB.m to prepare the data for identification.
problem. If set to 1, a linearised model is Then, depending on the option FDIopt.AinfFlag,
used and a linear LS problem is solved. If set the function calls the appropriate computation
to 2, an iterative linear LS problem is solved. routine—see Figure 2.
If set to 3, the linear LS solution is used The function FDIRadMod.m also makes an auto-
to initialise a nonlinear LS problem, which matic order estimate by increasing the order of
is solved using the Gauss-Newton method. the approximation and computing the coefficient
6
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
ω,A(ω),B(ω),A∞
Krad(s),
FDIRadMod.m
FDIopt
[A∞]
Demo_FDIRadMod_WA.m
Fit_siso_fresp.m
Demo_FDIRadMod_NA.m
Figure 2: Frequency-domain Identification of Radiation Models (FDIRadMod): Software organisation and de-
pendability.
of determination related to the fitting of both damping. The low-frequency data point should
added mass and damping. When both these coef- be selected first, then the high-frequency point,
ficients reach a value greater or equal to 0.99, the and finally the user should press the return key.
function stops increasing the order, and the re- The data is then re-plotted within the selected
constructued added mass and damping are plot- range.
ted together with the non-parametric data used After selecting the frequency range, the function
for identification. At this point, the function allows the elimination of data wild points. A mes-
prompts the user to either adjust the order of the sage on the workspace prompts the user to opt
approximation manually via a keyboard input or for wild point elimination. If required, this elim-
leave the model as it is and exit the function. ination is done by clicking with the mouse on all
The user can make as many changes in order as the points that are to be eliminated (either on
required, and every time there is a change in the the plot of the added mass or damping), and fi-
order, the model is re-estimted and the data re- nally the user should press the return key. The
plotted. function allows the user to re-start the process in
case a point is deleted accidentally.
5.2 EditAB.m
Purpose: This function allows the user to select the 5.3 Ident retardation FD.m
frequency range to be used for identification and
to eliminate data wild points1 . Purpose: This function estimates the parameters of
a specified order approximation for the fluid-
Description: This is a support function for memory transfer function given the frequency re-
FDIRadMod.m, so the user may not need to sponse K(jωl ).
call it directly. The function first plots the
added mass and potential damping as a function Description: This is a support function for
of the frequency, and then prompts the user to FDIRadMod.m, so the user may not need to
select the range of frequencies for identification. call it directly. This function performs the
This range selection is done by clicking with the estimation for the problem in which the infinite
mouse on the plot of either the added mass or frequency added mass is available to compute
1 Wild points in the data computed using hydrodynamic codes
K(jωl ). This problem is described in Sec-
are due to ill-conditioned numerical problems, which often
tion 4.1. The function performs data scaling
arise at high-frequencies if inappropriate panel sizes are used and enforces the model structure constraints
to discretise the hull–see Faltinsen (1990) for details. (16)–(19). A summary of the algorithm is given
7
Modeling, Identification and Control
8
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
9
Modeling, Identification and Control
Sanathanan, C. and Koerner, J. Transfer function syn- 7. Estimate the added-mass and damping based on
thesis as a ratio of two complex polynomials. IEEE the identified parametric approximation via
Trans. of Autom. Control, 1963.
Âik (ω) = Im{ω −1 K̂ik (jω)} + A∞,ik (39)
Taghipour, R., Perez, T., and Moan, T. Hybrid
frequency–time domain models for dynamic response B̂ik (ω) = Re{K̂ik (jω)}, (40)
analysis of marine structures. Ocean Engineering,
and compare with the Aik (ω) and Bik (ω) given
2008. doi:10.1016/j.oceaneng.2007.11.002.
by the hydrodynamic code. If the fitting is not
Unneland, K. and Perez, T. MIMO and SISO identifi- satisfactory increase the order of the approxima-
cation of radiation force terms for models of marine tion and go back to step (iii).
structures in waves. In IFAC Conference on Con-
8. Check for passivity if required B̂ik (jω) > 0.
trol Applications in Marine Systems (CAMS). Bol,
Croatia, Sept. 2007 .
10
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
8
x 10
2
A(w) 1
−1
0 0.5 1 1.5 2 2.5
Frequency [rad/s]
7
x 10
10
5
B(w)
−5
0 0.5 1 1.5 2 2.5
Frequency [rad/s]
Figure 3: Raw added mass and damping data of a FPSO vessel computed by a hydrodynamic code. Coupling
5-3 (pitch-heave).
8
x 10
2
1
A(w)
−1
0 0.5 1 1.5 2 2.5
Frequency [rad/s]
7
x 10
10
B(w)
0
0 0.5 1 1.5 2 2.5
Frequency [rad/s]
Figure 4: Added mass and damping of a FPSO vessel after eliminating wildpoints. Coupling 5-3 (pitch-heave).
11
Modeling, Identification and Control
Added Mass
1 A
|K(jw)|
145
0.5 Aest FD indet, order 5
140 Ainf
0
135 K(jw)
K (jw) order 5 −0.5
130 hat
125 −2 −1 0 1
−1 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
8
Phase K(jw) [deg]
50
Damping
6 B
0
Best FD ident, order 5
4
−50
2
−100 −2 −1 0 1
0 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
Figure 5: Identification results for the coupling 5-3 (pitch-heave) using information of the infinite-frequency
added mass. The left-hand-side plots show the fluid-memory frequency response data and the response
of the identified model. The right-hand-side plots show the added mass and potential damping and
their re-construction from the estimated model.
2.5 A
|K(jw)|
140
Aest FD indet, order 4
135 2 Ainf
130
K(jw) 1.5
125 Khat(jw) order 4
120 −2 −1 0 1
1 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
4
Phase K(jw) [deg]
50 B
3 Best FD ident, order 4
Damping
0 2
1
−50
0
−100 −2 −1 0 1
−1 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
Figure 6: Identification results for the coupling 3-3 (heave-heave) using information of the infinite-frequency
added mass. The left-hand-side plots show the fluid-memory frequency response data and the response
of the identified model. The right-hand-side plots show the added mass and potential damping and
their re-construction based the estimated model.
12
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
210 5
Added Mass
A
200 4.5
|K(jw)|
Aest FD indet, order 4
Ainf
190 4
K(jw)
180 K (jw) order 4 3.5
hat
170 −2 −1 0 1
3 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
8
Phase K(jw) [deg]
50
6 B
Damping
0 4 Best FD ident, order 4
2
−50
0
−100 −2 −1 0 1
−2 −2 −1 0 1
10 10 10 10 10 10 10 10
Frequency [rad/s] Frequency [rad/s]
Figure 7: Identification results for the coupling 5-5 (pitch-pitch) using information of the infinite-frequency
added mass. The left-hand-side plots show the fluid-memory frequency response data and the response
of the identified model. The right-hand-side plots show the added mass and potential damping and
their re-construction based on the estimated model.
x 10
8 DoF 53 8
x 10 DoF 53
2.5 2
A
2 1.5 Aest
Added Mass
1
1.5
|Ac(jw)|
0.5
1
0
0.5 Ac(jw)
Achat(jw) order 5 −0.5
0 −2 0
−1 −2 0
10 10 10 10
Freq. [rad/s] Frequency [rad/s]
7
x 10
0 10
B
8
Phase Ac(jw) [deg]
−50 Best
Damping
6
−100
4
−150
2
−200 −2 0
0 −2 0
10 10 10 10
Frequency [rad/s] Frequency [rad/s]
Figure 8: Identification results for the coupling 5-3 (pitch-heave) without using information of the infinite-
frequency added mass. The left-hand-side plots show the complex coefficient Ã(jω) data and the
response of the identified model. The right-hand-side plots show the added mass and potential damp-
ing and their re-construction based on the estimated model.
13
Modeling, Identification and Control
150
|K(jw)| 140
130
120
110 −2 −1 0 1
10 10 10 10
Frequency [rad/s]
100
Phase K(jw) [deg]
50
−50
−100 −2 −1 0 1
10 10 10 10
Frequency [rad/s]
Figure 9: Frequency response of the identified fluid-memory model for the coupling 5-3 (pitch-heave) without
using information of the infinite-frequency added mass.
8
x 10 DoF 53 8
x 10 DoF 53
3.5 2
3 Ac(jw) 1.5
Achat(jw) order 10
2.5 1
Added Mass
A
|Ac(jw)|
2 0.5 Aest
1.5 0
1 −0.5
0.5 −1
0 −2 0
−1.5 −2 0
10 10 10 10
Freq. [rad/s] Frequency [rad/s]
8
x 10
200 5
4
B
Phase Ac(jw) [deg]
100
3 Best
Damping
0 2
1
−100
0
−200 −2 0
−1 −2 0
10 10 10 10
Frequency [rad/s] Frequency [rad/s]
Figure 10: Identification results for the coupling 5-3 (pitch-heave) without using information of the infinite-
frequency added mass and without eliminating wild points. The left-hand-side plots show the complex
coefficient Ã(jω) data and the response of the identified model. The right-hand-side plots show the
added mass and potential damping and their re-construction based on the estimated model.
14
Perez and Fossen, “A Matlab Toolbox for Identification of Radiation Force Models”
160
|K(jw)|
140
100 −2 −1 0 1
10 10 10 10
Frequency [rad/s]
100
Phase K(jw) [deg]
50
−50
−100 −2 −1 0 1
10 10 10 10
Frequency [rad/s]
Figure 11: Frequency response of the identified fluid-memory model for the coupling 5-3 (pitch-heave) without
using information of the infinite-frequency added mass and without eliminating wild points.
15