Linearization OpenFAST
Linearization OpenFAST
Suggested Citation
Jonkman, Jason, Alan Wright, Greg Hayman, and Amy Robertson. 2018. Full-System
Linearization for Floating Offshore Wind Turbines in OpenFAST: Preprint. Golden, CO:
National Renewable Energy Laboratory. NREL/CP-5000-71865.
https://www.nrel.gov/docs/fy19osti/71865.pdf
This report is available at no cost from the National Renewable Energy National Renewable Energy Laboratory
Laboratory (NREL) at www.nrel.gov/publications. 15013 Denver West Parkway
Golden, CO 80401
Contract No. DE-AC36-08GO28308 303-275-3000 • www.nrel.gov
NOTICE
This work was authored by the National Renewable Energy Laboratory, operated by Alliance for Sustainable
Energy, LLC, for the U.S. Department of Energy (DOE) under Contract No. DE-AC36-08GO28308. Funding
provided by U.S. Department of Energy Office of Energy Efficiency and Renewable Energy Wind Energy
Technologies Office. The views expressed herein do not necessarily represent the views of the DOE or the U.S.
Government. The U.S. Government retains and the publisher, by accepting the article for publication, acknowledges
that the U.S. Government retains a nonexclusive, paid-up, irrevocable, worldwide license to publish or reproduce
the published form of this work, or allow others to do so, for U.S. Government purposes.
Cover Photos by Dennis Schroeder: (clockwise, left to right) NREL 51934, NREL 45897, NREL 42160, NREL 45891, NREL 48097,
NREL 46526.
1
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
The overall linearization approach that the FAST The number of states, inputs, and outputs (i.e., the size of the
modularization framework was designed to support is vectors x , x d , z , u , and y ) depend on the features enabled
explained in [4] and is consistent with the present in OpenFAST.
implementation. Details on the linearization of the land-based
modules and their coupling, including mesh mapping, is MODULE LINEARIZATION
explained in [2,3]. Without replicating most of the information, As explained in [4], the FAST modularization framework
this paper uses the same approach and nomenclature of [2,3,4], supports a very general (need not be linear) state-space
adding details about the linearization of the floating offshore formulation, with any combination of continuous-time-state,
modules HydroDyn and MAP++ and their coupling, including discrete-time-state, constraint- (algebraic-) state, other- (e.g.,
mesh mapping. logical) state, and output equations. However, for a module to
The mathematical background presented in this paper is support linearization, the formulation is limited to a hybrid
currently being implemented in the OpenFAST source code. semiexplicit differential-algebraic equation (DAE) of index 1, 2
Unfortunately, the implementation at the time of this writing which has the following limitations: 1) the continuous-time-
has not yet been completed enough to produce results. Results state derivatives and discrete-time-state updates must be written
will be presented in future work to highlight the functionality as an explicit function of the states, inputs, and parameters; 2)
and verify the implementation (e.g., for a sample case whereby the constraints must be of index 1; and 3) other states are used
the natural frequencies and damping of the NREL 5-MW only for time-integration or when acting as parameters in the
baseline wind turbine atop a spar buoy will be calculated as a linearization process.
function of rotational speed and presented in Campbell-diagram To support linearization, a module must also be able to
form). export Jacobian matrices for the state and output equations with
The linearization of OpenFAST involves: 1) finding an respect to the states and inputs. The OpenFAST module states,
operating point (OP), 2) linearizing the underlying nonlinear inputs, and outputs kept in the linearization process for the
equations of each module about the OP, 3) linearizing the features linearized to date are summarized in Table 1. The
module-to-module input-output coupling relationships in the OpenFAST module features linearized to date include only
OpenFAST glue code about the OP, and 4) combining all continuous-time and constraint states (no features with discrete-
linearized matrices into the full-system linear state-space model time states have yet been linearized).
and exporting those matrices and the OP to a file. Each step is The linearized form of a general module is given by Eqs.
highlighted in the following sections. (12) and (13) from [4]; the simplified forms for the land-based
modules InflowWind, AeroDyn, ServoDyn, ElastoDyn, and
OPERATING-POINT DETERMINATION BeamDyn are given in [2,3]. The simplified forms for the
OP (or fixed-point) determination is an important first step newly linearized offshore modules HydroDyn and MAP++ are
in the linearization process because a linear representation of a given next, along with a description of how each module is
nonlinear system is only valid for small deviations linearized.
(perturbations) from an OP. In the current release of
OpenFAST, an OP can be defined by given initial conditions
(time zero) or a given time (or times) in the nonlinear time-
marching process. It is usually important for the OP to be a
static-equilibrium condition (for parked/idling turbines) or
steady-state condition (for operating turbines); otherwise, it
may have an undesirable effect on the linear system matrices.
An OP is defined by given values for the continuous-time
states, x op , discrete-time states, x d , inputs, u op , and time,
op
t op , for each module. Equations (1a), (1c), and (1d) from [4]
can then be used to calculate the OP values of the first time
derivative of the continuous-time states, x op , constraint
(algebraic) states, z op , and outputs, y op , for each module.
Each of these variables can be perturbed (represented by ∆ )
about their respective OP values as given by Eq. (11) from [4]
u u op + ∆u ). References [2,3] clarify
(e.g., for module inputs = 2
Indeed, linearization is not possible or desirable for all models, but only
those limited to this restricted form. Most models are simplifications of this
how this operation is extended to rotations (orientations) in most general form (e.g., for a module without discrete-time and constraint
three dimensions (3D), which do not reside in a linear space. states, the continuous-time-state equations form ordinary differential
equations).
2
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
TABLE 1. MODULE STATES, INPUTS, AND OUTPUTS KEPT IN THE OPENFAST LINEARIZATION PROCESS TO DATE.
Module States Inputs Outputs
InflowWind • None • Positions where the undisturbed (inflow) wind will be • Undisturbed (inflow) wind velocity at input positions
(IfW) output • User-selected wind-inflow outputs
• Disturbances of horizontal wind speed, power-law shear
exponent, and wind-propagation direction
ElastoDyn • Position and orientation and • Applied point forces and moments distributed along the • Translational displacements, orientations,
(ED) translational and rotational blades and tower translational and rotational velocities, and
velocities of the floating • Applied point forces and moments lumped on the hub, translational and rotation accelerations of analysis
platform (continuous states) nacelle, and platform nodes along the blades and tower
• Relative bending-mode • Blade-pitch-angle command (both independent and rotor- • Translational displacements, orientations,
degrees of freedom of the collective) translational and rotational velocities, and
blades and tower and their • Nacelle-yaw moment translational and rotation accelerations of the blade-
first-time derivatives • Generator torque root, nacelle, and platform reference points
(continuous states) • Translational displacement, orientation, and
• Relative rotational rotational velocity of the hub reference point
displacement and velocity of • Nacelle-yaw angle and rate
the nacelle-yaw, generator • Generator speed
azimuth, shaft torsion, and • User-selected structural outputs
rotor-teeter (continuous
states)
BeamDyn • Positions and orientations • Translational displacements, orientations, translational • Reaction point forces and moments lumped at each
(BD) and translational and and rotational velocities, and translational and rotational blade root
rotational velocities of nodes accelerations of each blade root • Translational displacements, orientations,
distributed along each blade • Applied point forces and moments distributed along each translational and rotational velocities, and
(continuous states) blade translational and rotation accelerations of nodes
• Applied line (per-unit length) forces and moments along each blade
distributed along each blade • User-selected structural outputs
AeroDyn • Inflow angle at each blade • Translational displacements, orientations, and • Aerodynamic-applied line (per-unit length) forces
(AD) analysis node/airfoil translational velocities of analysis nodes along the blades and moments distributed along the blades and tower
(constraint states) and tower • User-selected aerodynamic outputs
• Orientation of the blade-root reference point
• Translational displacement, orientation, and rotational
velocity of the hub reference point
• Undisturbed (inflow) wind velocities at analysis nodes
along the blades and tower
HydroDyn • State-space-based wave- • Translational displacements, orientations, translational • Hydrodynamic-applied point forces and moments
(HD) excitation states (continuous and rotational velocities, and translational and rotational distributed along the floating platform
states) accelerations of analysis nodes distributed along the • Hydrodynamic-applied line (per-unit length) forces
• State-space-based wave- floating platform and moments distributed along the floating platform
radiation states (continuous • Translational displacement, orientation, translation and • Hydrodynamic-applied point force and moment at
states) rotational velocities, and translational and rotational the platform reference point
accelerations of the platform reference point • User-selected hydrodynamic outputs
• Disturbance of wave elevation at the platform reference
point
MAP++ • Horizontal and vertical • Translational displacements of each fairlead • Reaction point forces (tensions) lumped at each
(MAP) tensions at the fairlead of fairlead
each mooring line (constraint • User-selected mooring outputs
states)
• Positions of each connect
node (constraint states for
multi-segmented mooring
The linearization of the HydroDyn (HD) module applies to The linear state-space-based wave-radiation model was
both the strip-theory solution, potential-flow solution, or a previously available in HydroDyn within FAST v8. As shown
hybrid combination of the two. Linear state-space-based wave- in [5], the model approximates the convolution term in the
excitation and wave-radiation models have been added to Cummins equation as shown in Eq. (1), with a linear state-
HydroDyn to enable linearization of the potential-flow space model as shown in Eq. (2), where FRdtn is the wave-
solution, including wave-excitation loads (with diffraction) radiation loads; K Rdtn is the wave-radiation-retardation
from disturbances of wave elevation and wave-radiation loads
kernels; q Ptfm is the floating platform translation and rotational
with free-surface memory effects.
velocities; xRdtn are the wave-radiation states; and ARdtn ,
3
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
BRdtn , and CRdtn are the matrices of the linear state-space Fourier-transform-based wave-excitation, convolution-based
wave-radiation model. The more wave-radiation states there wave-radiation, wave directional spreading, second-order wave
are, the better the state-space model can approximate the kinematics, or second-order potential-flow loads are enabled.
convolution. Within HydroDyn, the user can select either the The linearized form of the HydroDyn state and output
convolution-based wave-radiation model, which is ∆ x
equations is given by Eq. (5), where ∆ x( HD ) = Exctn ,
implemented via numerical convolution using discrete-time ∆ xRdtn
states (which, if linearized, would overly complicate
application of the linear state-space model), or the linear state- ∆u ( HD ) includes contributions from ∆ζ and ∆q Ptfm , and
space-based wave-radiation model, which is implemented using
matrices derived from the SS_Fitting preprocessor [6] or ∆ y ( HD ) includes contributions from ∆ FExctn and ∆ FRdtn .
equivalent.
∆ x ( HD ) A( HD ) ∆ x( HD ) + B( HD ) ∆u ( HD )
= (5a)
t
∆ y ( HD ) C ( HD ) ∆ x( HD ) + D( HD ) ∆u ( HD )
FRdtn ( t ) = ∫
− K Rdtn ( t − τ ) q Ptfm (τ ) dτ
0
(1) = (5b)
( ),
excitation states; and AExctn , BExctn , and CExctn are the ( HD ) ( HD ) ( HD )
Λ op f ∆Λ −∆θ and 2 ∆θ , respectively. In Eq.
matrices of the linear state-space wave-excitation model.
Further details on this new linear state-space-based wave- (6b), the column order is dictated by the order of HydroDyn
excitation model are provided in Annex A. Within HydroDyn, inputs, and 0 are appropriately sized zero matrices. For the
the user can now select either a Fourier-transform-based wave- numerically computed Jacobians, the default perturbation sizes
excitation model, which is implemented with discrete Fourier are hard-coded within HydroDyn (but can be customized by
transforms (which is not conducive to linearization), or the new recompiling) and are ≈0.035 m for translational states, 2˚ for
linear state-space-based wave-excitation model. rotational states and inputs, and fractions of the water depth for
translational inputs. The Jacobians contain the linearized
∞ contributions from 1) state-space-based wave excitation, 2)
FExctn ( t )
= ∫K
−∞
Exctn ( t − τ ) ζ (τ ) dτ (3) hydrodynamic added mass, 3) state-space-based wave-radiation
damping, 4) hydrostatic restoring, and 5) linearized viscous
x Exctn AExctn xExctn + BExctnζ c
= (4a) drag. The latter is found by numerically linearizing the viscous-
FExctn ≅ CExctn xExctn (4b) drag term from the relative form of Morison’s equation in the
strip-theory solution (plus member-end effects) as in Eq. (6),
not based on a stochastic linearization method (e.g., [7]).
When linear state-space-based wave excitation or wave
radiation are enabled in the potential-flow solution, continuous-
time states associated with the excitation and radiation damping
are included in the linearized HydroDyn model. Linearization
time-domain solution could not reach a static-equilibrium or steady-state
is permitted only in still water condition if waves were present). This implies that the OP values of the wave
( ζ c op x=
= Exctn op F=
Exctn op 0 ) 3
and is not permitted when elevation, wave-excitation states, and wave-excitation loads are zero. That said,
when linear state-space-based wave-excitation is enabled in the potential-flow
solution, the linear system matrices calculated and output by OpenFAST
3 include the contributions from perturbations of the wave elevation (i.e., ∆ζ
The restriction that linearization is permitted only in still water is in place
to ensure that a static-equilibrium condition (for parked/idling turbines) or need not be zero), and so, even though the OP is determined in still water, the
steady-state condition (for operating turbines) can be found for the OP (the influence of wave-excitation may still be included.
4
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
∂X
( HD )
A 0 (6a) shown in Eqs. (6) and (7) of [2]. This difference in
A( )
HD
= = Exctn
∂x op 0 ARdtn implementation was needed in MAP++ because the residual of
constraint equations, Z ( )
( HD ) MAP
∂X 0 0 0 BExctn (6b) , is not readily available internally
B( )
HD
= =
∂u op 0 BRdtn 0 0 within MAP++. The default perturbation sizes are hard-coded
( HD ) within MAP++— but can be customized by recompiling—and
C
=
∂Y
=
( HD ) Y x + ∆ x,u ,t
( HD ) op op op (
− Y x op − ∆ x,u op ,t op ) ( ) (6c) are fractions of the water depth for the inputs. To obtain an
∂x op 2∆ x accurate Jacobian, it is important that the perturbation sizes are
( HD ) not too large to make a taut mooring line go slack or a slack
=
HD ∂Y
D( ) =
( HD ) Y x ,u + ∆u,t
op op op (
− Y x op ,u op − ∆u,t op ) ( ) (6d) line go taut, but not too small to prevent the tolerance used to
∂u op 2 ∆u solve the implicit constraint equations from effecting the
numerically computed derivative.
The MAP++ (MAP) module has constraint (algebraic) MODULE-TO-MODULE, INPUT-OUTPUT COUPLING
states, there are no restrictions to linearization, and the RELATIONSHIPS LINEARIZATION
linearized form is given by ∆ y ( ) = D( ) ∆u ( ) . The MAP MAP MAP
Most module inputs and outputs in OpenFAST reside on
input-transmission matrix is the Jacobian of the output spatial boundaries, which in the FAST modularization
equations relative to the inputs about the OP, computed framework are defined in terms of a mesh. The module-to-
numerically via a central-difference perturbation technique as module, input-output coupling relationships in the OpenFAST
glue code are algebraic, and include spatial mesh-to-mesh
shown in Eq. (7), where Y ( ) is the output functions of MAP
mapping. The general approach to linearizing the mesh
MAP++. For inputs that are rotations in 3D (i.e., u = Λ and mapping within the module-to-module, input-output coupling
( MAP )
+ ∆u (
MAP ) relationships within OpenFAST, including rotations, is detailed
∆u = ∆θ ), it is implied that u op ,
in [2].
( MAP )
− ∆u (
MAP )
2 ∆u (
MAP )
u op , and are written as The linearized input-output transformation functions, U ,
are given by Eq. (8) from [2] or Eq. (15) from [4], repeated in
( ) ( )
( MAP ) ( MAP ) ( MAP ) ( MAP )
Λ op f ∆Λ ∆θ , Λ op f ∆Λ −∆θ , and Eq. (8) for convenience.
MAP )
2 ∆θ ( , respectively. The Jacobian contains the linearized
∂U ∂U ∂U
contribution from mooring restoring. =0 ∆u + ∆ y with ≠0 (8)
∂u op ∂y op
∂u op
( MAP )
( MAP ) dY op op (
( MAP ) Y z + ∆ z,u + ∆u,t
op ) (
− Y z op − ∆ z,u op − ∆u,t op ) (7)
=D =
du op 2 ∆u As is evident from Table 1, the InflowWind, ServoDyn,
ElastoDyn, AeroDyn, BeamDyn, HydroDyn, and MAP++
modules were developed so that for the most part—other than
While MAP++ and AeroDyn are both modules with mapping between independent spatial discretizations—the
constraint states, their numerical linearization approach differs. input of one module equals the output of another. It follows
Equation (7) involves the total derivative of the MAP++ output
U ( IfW ) ∆u ( IfW )
equations relative to the inputs about the OP, where it is
implied that the constraint perturbations, ∆ z ( MAP ) and U ( SrvD ) ∆u ( SrvD )
−∆ z (
MAP )
, are tied to the input perturbations, ∆u (
MAP )
and U ( ED ) ∆u ( ED )
( MAP ) , by solving the implicit constraint equations,
−∆u that with U = U ( BD ) , ∆u = ∆u ( BD ) , and
( MAP ) ( AD ) ( AD )
(
0 = Z z op + ∆ z,u op + ∆u,t op ) and U
( HD )
∆u
( HD )
( MAP ) U ∆u
0 =Z ( z op
− ∆ z,u op − ∆u,t op ) , respectively, essentially ( MAP )
U
( MAP )
∆u
internally eliminating the constraint states within MAP++
during the linearization process. This is in contrast to the
approach taken to linearize AeroDyn, whereby the Jacobians
( AD ) ( AD ) ( AD ) ( AD )
∂Z ∂Z ∂Y ∂Y
, , , and are computed
∂z op ∂u op ∂z op ∂u op
5
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
∆ y ( IfW ) expresses that the applied point force and moment
perturbations distributed along the blades and tower as
∆ y ( SrvD ) input to ElastoDyn are derived from the aerodynamic-
applied line (per-unit length) force and moment
∆ y ( ED )
perturbations distributed along the blades and tower as
∆ y = ∆ y ( BD ) , the Jacobian matrices evaluated at the OP output from AeroDyn. This linearized load-mapping
( AD ) transfer also depends on the translational-displacement
∆y perturbations of analysis nodes along the blades and
( HD ) tower output from ElastoDyn. And when BeamDyn is
∆y
( MAP ) enabled, point force and moment perturbations on the
∆ y hub as input to ElastoDyn are derived from the blade-
from Eq. (8) for these seven modules are given by Eq. (9), root reaction point force and moment output from
where I and 0 are appropriately sized identity and zero BeamDyn, which also depends on the translational-
displacement perturbation of the hub reference point
matrices and the sub-Jacobian matrices are composed of I s,
output from ElastoDyn. Additionally, the blade-pitch-
0 s, and the linearized matrices from the mapping transfers
angle-commands, nacelle-yaw-moment, and
given in [2].
generator-torque perturbations as input to ElastoDyn
are derived from the equivalent outputs from
∂U (
IfW )
I 0 0 0 0 0 ServoDyn. For the floating offshore functionality,
∂u ( )
AD
0 I 0 0 0 0 0 (9a) point force and moment perturbations on the platform
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U ( ED ) as input to ElastoDyn are derived from the
0 0 I
∂u (
BD )
∂u (
AD )
∂u (
HD )
∂u (
MAP )
hydrodynamic-applied line (per-unit length) and point
∂U
= 0 0 0
∂U (
BD )
∂U (
BD )
0 0
force and moment perturbations distributed along the
∂u op
∂u ( )
BD
∂u ( )
AD
floating platform as output from HydroDyn and the
∂U (
AD )
0 0 0 0 0 0 reaction point forces (tensions) lumped at each
∂u (
AD )
fairlead as output from MAP++, which also depends
∂U (
HD )
0
0 0 0 0 0
on the translational-displacement perturbation of the
∂u ( )
HD
0 0 0 0 0 0 I
op
platform reference point output from ElastoDyn.
0 0 0 0 0 0 0
• The sixth equation of Eq. (8) for HydroDyn inputs,
0 =U( ) ,
HD
∂U (
SrvD )
0 0 0 0 0 0
(9b) expresses that the translational
∂y (
ED )
ED )
displacement, orientation, translational and rotational
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED ) (
∂U
0
∂y (
SrvD )
∂y ( )
ED
∂y ( )
BD
∂y ( )
AD
∂y ( )
HD
∂y (
MAP )
velocity, and translational and rotational acceleration
∂U (
BD )
∂U (
BD )
∂U (
BD )
perturbations of analysis nodes distributed along the
∂U 0
=
0
∂y (
ED )
∂y (
BD )
∂y (
AD )
0 0
floating platform as input to HydroDyn are derived
∂y op
∂U ( )
AD
∂U (
AD )
∂U (
AD )
from motion outputs from ElastoDyn at the platform
0 0 0 0
( IfW )
∂y ∂y (
ED )
∂y (
BD )
reference point.
0 0
∂U ( HD )
0 0 0 0
• The seventh equation of Eq. (8) for MAP++ inputs,
∂y (
ED )
0 =U( ) , expresses that the translational
MAP
∂U (
MAP )
0
0
∂y (
ED )
0 0 0 0
displacement perturbations of each fairlead as input to
MAP++ are derived from the motion outputs from
op
6
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
on the system response and outputs. The general linearized matrix of ElastoDyn, A( ) , contains mass, stiffness, and
ED
form of the complete coupled system is given by Eqs. (18) and damping only directly associated with the structural model, the
{ }
T
(19) from [4]. With ∆ x = ∆ x( ED )
T
∆ x( BD )
T
∆ x( HD )
T
, the full-system continuous state matrix, A , contains mass,
stiffness, and damping associated with coupled aero-hydro-
form for the OpenFAST features linearized to date (without servo-elastics, including hydrodynamic added mass, wave-
discrete-time states and with ElastoDyn, BeamDyn, and radiation and viscous damping, and hydrostatic and mooring
HydroDyn as the only modules with continuous-time states) is restoring for FOWTs.
given by Eq. (10), where ∆u + is the additional input When the linearized full-system matrices A , B , C , and
perturbations (explained further in [4]). D are exported to a file by OpenFAST, the additional input
perturbations, ∆u + , can be chosen by the user to be: 1) the
∆ x A∆ x + B∆u +
= (10a) inputs of all modules, 2) none of the module inputs (removing
B and D from the file), or 3) a standard subset of these
∆ y C ∆ x + D∆u +
= (10b) inputs, which include the standard wind turbine control inputs
of nacelle-yaw moment, generator torque, and blade-pitch-
The full-system state-space matrices are given in Eq. (11), angle commands (both independent and rotor-collective); the
where G op —explained more in [4] for the general case—for standard wind-inflow disturbances of horizontal wind speed,
the OpenFAST linearization to date is given by Eq. (12). The power-law shear exponent, and wind-propagation direction;
and the standard incident-wave disturbance of wave elevation.
matrix G op has ones along its entire diagonal and it is easily
Likewise, the output perturbations, ∆ y , can be chosen by the
shown that its determinant from Eq. (12) is nonzero, which user to be: 1) the outputs of all modules, 2) none of the module
−1
means that the matrix inverse, G op from Eq. (11), exists outputs (removing C and D from the file), or 3) only the
subset of output variables selected by the user through the
and is bounded in the neighborhood around the OP. OpenFAST module input file(s). Regardless of what the user
The input-transmission matrices impact all matrices of the selects to be exported to a file, all of the module inputs and
linearized coupled system, highlighting the important role outputs are used to form the linearized full-system matrices in
played by direct feedthrough of input to output in the coupled Eq. (11), but only a subset of these matrices are exported based
system response. For example, while the continuous-state on the user selection.
0 0 0 (11a)
0 0 0
A( ED ) 0 0 B( ED ) 0 C ( ED )
0 0
0 0 0
0 0
−1 ∂U
( BD )
0 0 − 0 0 B( ) 0 0 G op
BD
A
A
0 0
∂y 0 C ( BD )
0
0 ( HD ) ( HD ) op
0 A 0 0 0 0 0 B 0 0 0 0
C( )
HD
0 0
0 0 0
0 0 B( ED ) 0 0 0 0 (11b)
−1 ∂U
B = 0 0 B( ) 0 0 G op
BD
0 0
∂u op
0 B( ) 0
0 0 HD
0 0
D( IfW ) 0 0 0 0 0 0 (11c)
0 0 0 0 0 0
0 0 0 0 D ( SrvD )
0 0 0 0 0 0 0 0
C ( ED ) 0 0 0 0 D )
( ED
0 0 0 0 C ( ED ) 0 0
−1 ∂U
0 ( 0 − 0 0 G op 0 0
BD )
D( C( )
C BD ) BD
C 0 0 0 0
∂y op
D(
0 0 0 0 AD ) 0 0 0
0 0 0 0 0
C( ) 0 C( )
HD HD
0 0 D( ) 0 0
HD
0 0 0 0 0
0 0 0
0 0 0
D(
MAP )
0 0 0 0 0 0
7
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
D( IfW ) 0 0 0 0 0 0 (11d)
D(
0 SrvD )
0 0 0 0 0
D( )
0 ED
0 0 0 0 0
−1 ∂U
D( ) 0 G op
D= 0 BD
0 0 0 0
∂u op
D( )
AD
0 0 0 0 0 0
D(
HD )
0 0 0 0 0 0
D(
MAP )
0 0 0 0 0 0
I 0 0 0
∂U (
IfW )
0 0
(12)
∂u (
AD )
∂U (
SrvD ) with G op ≠ 0
0 I D(
ED )
0 0 0 0
∂y (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U (
ED )
∂U ( ED )
∂U ( ED )
D(
SrvD )
D(
ED )
D(
BD )
D(
AD )
D(
HD )
D(
MAP )
0 I+ + + + +
∂y (
SrvD )
∂y (
ED )
∂u (
BD )
∂y (
BD )
∂u (
AD )
∂y (
AD )
∂u (
HD )
∂y (
HD ) ( MAP ) ( MAP )
∂u ∂y
∂U (
BD )
∂U (
BD )
∂U (
BD )
∂U (
BD )
∂U (
BD )
D(
ED )
D(
BD )
D(
AD )
G op = 0 0 + + 0 0
∂y (
ED )
∂u (
BD )
∂y (
BD )
∂u (
AD )
∂y (
AD )
( AD )
∂U ( ) ∂U ( ) ∂U ( )
AD AD AD
∂U ( IfW )
D(
ED )
D(
BD )
( IfW ) D 0 0 0
∂y (
ED )
∂y (
BD )
∂u (
AD )
∂y
( HD )
∂U (
HD )
∂U
D(
ED )
0 0 0 0 0
∂y ( ) ∂u ( )
ED HD
∂U (
MAP )
D(
ED )
0 0 0 0 0 I
∂y (
ED )
op
8
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
[2] Jonkman, J. M. and Jonkman, B. J. “FAST wave-excitation loads on the floating platform normalized per
modularization framework for wind turbine simulation: unit wave amplitude (derived, e.g., from a potential-flow-based
full-system linearization.” Journal of Physics: Conference wave-body interaction solver WAMIT) and ζ (ω ) is the wave-
Series, The Science of Making Torque from Wind
elevation spectrum for waves propagating in direction β (both
(TORQUE 2016), 5–7 October 2016, Munich, Germany
[online journal]. 082010. Vol. 753, 2016. URL: are complex-valued to include phases). For time-domain
http://iopscience.iop.org/article/10.1088/1742- simulations, the spectral wave data and wave direction are
6596/753/8/082010/pdf; NREL/CP-5000-67015. Golden, model inputs and the phases of the various wave components
CO: National Renewable Energy Laboratory. are selected randomly. The time-domain wave-excitation loads,
[3] Jonkman, J. M.; Jonkman, B. J.; and Platt, A. “Full- FExctn ( t ) , are usually precomputed at model initialization by
System Linearization for Wind Turbines with calculating the inverse Fourier transform shown in Eq. (A.2),
Aeroelastically Tailored Rotor Blades in OpenFAST.” (in where j= −1 is the imaginary number (HydroDyn uses a
preparation).
[4] Jonkman, J. M. “The New Modularization Framework for discrete Fourier transform in place of the continuous-time
the FAST Wind Turbine CAE Tool.” 51st AIAA Aerospace transform shown).
Sciences Meeting including the New Horizons Forum and
Aerospace Exposition, 7–10 January 2013, Grapevine FExctn (ω ) = X (ω , β ) ζ (ω ) (A.1)
(Dallas/Ft. Worth Region), TX [online proceedings]. ∞
1
FExctn ( t ) = ∫ X (ω , β ) ζ (ω )e
jωt
URL: http://arc.aiaa.org/doi/pdf/10.2514/6.2013-202. dω (A.2)
AIAA-2013-0202. Reston, VA: American Institute of 2π
−∞
Aeronautics and Astronautics, January 2013; NREL/CP-
5000-57228. Golden, CO: National Renewable Energy Equivalently, as shown in [A.1], the wave-excitation load
Laboratory. components can be calculated through the infinite convolution
[5] Duarte, T.; Alves, M.; Jonkman, J.; and Sarmento, A. integral given by Eq. (3), where the incident wave-excitation
“State-Space Realization of the Wave-Radiation Force kernels derived from Eq. (A.3), represent the incident wave-
within FAST.” 32nd International Conference on Ocean, excitation impulse-response functions (IRF) that depend only
Offshore, and Arctic Engineering (OMAE2013), 9–14 on platform parameters. The goal is to use a linear state-space
June 2013, Nantes, France [DVD-ROM]. OMAE2013- equation to approximate Eq. (3), with the time-domain wave
10375. Houston, TX: The American Society of elevation, ζ ( t ) , acting as the input, and the time-domain
Mechanical Engineers (ASME International) Ocean,
Offshore and Arctic Engineering (OOAE) Division, June wave-excitation loads, FExctn ( t ) , as the output.
2013; ISBN 978-0-7918-5542-3; NREL/CP-5000-58099.
Golden, CO: National Renewable Energy Laboratory. ∞
1
K Exctn ( t ) = ∫ X (ω , β )e
[6] Web page https://nwtc.nrel.gov/SS_Fitting (accessed May jωt
dω (A.3)
7, 2018). 2π
−∞
[7] Borgman, L. E. “Spectral Analysis of Ocean Wave Forces
on Piling.” Journal of the Waterways and Harbors Fitting a linear state-space model to the infinite
Division, Vol. 93, Issue 2, pp. 129-156, 1967. convolution integral is complicated by the noncausality of this
[8] Hansen, M. H.; Guanaa, M.; and Madsen, H. A. A system. This issue has been studied extensively in [A.2] and
Beddoes-Leishman type dynamic stall model in state- [A.3], where a time-shifting method is used to arrive at a causal
space and indicial formulations. Risø-R-1354 (EN). transfer function between wave elevation and wave-excitation
Roskilde, Denmark: Risø National Laboratory. 2004. loads. We follow the same method used in [A.2] and [A.3]
here. Figure A.1 shows an example platform-pitch response
(blue curve) resulting from a wave-elevation impulse at time
t = 0 s. Clearly, the system is noncausal because its response is
ANNEX A nonzero for negative time even though the impulse acts at
t = 0 s. The system response for negative time is as large as the
LINEAR STATE-SPACE-BASED WAVE-EXCITATION response for positive time, so it cannot be ignored.
MODEL
9
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.
10
10
10
5
5 Impulse
Impulse Response
Response Functions:
Functions: original
original and and
causalized causalized discrete values of K Exctnc are assumed to be known either from
10
8
8 theory or experiment.
K Exctn ( t ) K Exctnc ( t )
6
6
4 m 2
∑ G (t
4
2
2
=Q k ) K Exctn ( tk ) − CExctn
c
e AExctnt BExctn
(A.5)
0 k =1
0
-2
-2
tc ≈ 12 s
-4
-4
Several methods exist for performing this system-
-6
-6
identification step. For this work, we rely on the use of a linear
-8
-8-40
state-space realization of the impulse response using Hankel
-30 -20 -10 0 10 20 30 40 50 60
singular value decomposition and MATLAB’s System-
FIGURE A.1. NONCAUSAL AND CAUSAL IMPULSE- Identification-Toolbox command imp2ss [A.5]. The state-space
RESPONSE FUNCTIONS. model structure is selected so that the infinite-frequency limit
of the identified model in the frequency domain is zero, forcing
the output transmission ( D ) matrix in the general state-space
An approximately causal IRF is obtained through a time- description to be equal to the zero matrix [A.5]. A balanced
shifting method. Figure A.1 shows that for all times less than model-truncation method is used to arrive at a low-order state-
−tc ( tc ≈ 12 s for this example), the IRF is approximately space approximation for the wave-excitation loads.
zero. A time delay, tc , is introduced to shift the original IRF to This general method for generating a linear state-space
K Exctnc ( t − tc ) . Figure model of the wave excitation for inclusion into OpenFAST is
Exctnc ( t )
obtain a “causalised” IRF, K =
being developed and programmed into a MATLAB script.
A.1 shows that this time-shifted IRF (red) is approximately Further details, with example cases and a user’s guide for this
zero for negative time. Equation (A.4), in terms of K Exctnc ( t ) script will be described in a future publication.
and ζ c ( t ) , follows directly from Eq. (3) and the time-shift
[A.1] Jonkman, J. M. Dynamics Modeling and Loads Analysis
t ) ζ ( t + tc ) is
properties of Fourier transforms, where ζ c (= of an Offshore Floating Wind Turbine. Ph.D. Thesis.
the wave elevation predicted at time tc into the future. To Department of Aerospace Engineering Sciences,
implement this approach, a wave-prediction model must be University of Colorado, Boulder, CO, 2007; NREL/TP-
used to predict the wave elevation for future times. Within 500-41958. Golden, CO: National Renewable Energy
OpenFAST simulations, this is not an issue because the wave Laboratory.
elevation is precalculated at model initialization, so the future [A.2] Yu, Z. and Falnes, J. “State-space Modeling of a Vertical
wave elevations are already available. In practice, the future Cylinder in Heave.” Applied Ocean Research, Vol. 17,
wave evaluation could be estimated (e.g., by measuring the Issue 5, pp. 265-275, 1995.
wave elevation with a buoy and approximating the wave [A.3] Lemmer, F., Raach, S., Schlipf, D., and Cheng, P.
evolution). “Parametric Wave Excitation Model for Floating Wind
Turbines.” Energy Procedia, Vol. 94, 2016, pp. 290-305;
∞ 13th Deep Sea Offshore Wind R&D Conference, EERA
DeepWind’2016, 20-22 January 2016, Trondheim,
FExctn ( t )
= ∫K
−∞
Exctn c ( t − τ ) ζ c (τ ) dτ (A.4)
Norway; DOI: 10.1016/j.egypro.2016.09.186.
[A.4] Ogata, K. Modern Control Engineering, Englewood
Now the goal is to fit a linear state-space model to the Cliffs, NJ: Prentice-Hall Inc., 1990.
[A.5] Ljung, L. and Singh, R. “Version 8 of the MATLAB
causalised IRF, K Exctnc ( t ) , based on input ζ c ( t ) . For a state-
System Identification Toolbox.” 16th IFAC Symposium on
space system of the form shown in Eq. (4), it can be shown that System Identification, Brussels, Belgium. ISBN
the IRF is CExctn e AExctnt BExctn , where e AExctnt is the matrix- 9783902823069; pp. 1826-1832, 2012;
exponential function [A.4]. The goal is to determine AExctn , doi:10.3182/20120711-3-BE-2027.00061.
10
This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.