NREL is a national laboratory of the U.S. Department of Energy

Office of Energy Efficiency & Renewable Energy

Operated by the Alliance for Sustainable Energy, LLC

This report is available at no cost from the National Renewable Energy

Laboratory (NREL) at www.nrel.gov/publications.

Contract No. DE-AC36-08GO28308

Conference Paper

NREL/CP-5000-71865

December 2018

Full-System Linearization for Floating 

Offshore Wind Turbines in OpenFAST

Preprint

Jason M. Jonkman, Alan D. Wright, Greg J. Hayman, 

and Amy N. Robertson

National Renewable Energy Laboratory

Presented at the ASME 2018 1st International 

Offshore Wind Technical Conference

San Francisco, California

November 4-7, 2018
NREL is a national laboratory of the U.S. Department of Energy

Office of Energy Efficiency & Renewable Energy

Operated by the Alliance for Sustainable Energy, LLC

This report is available at no cost from the National Renewable Energy

Laboratory (NREL) at www.nrel.gov/publications.

Contract No. DE-AC36-08GO28308

National Renewable Energy Laboratory

15013 Denver West Parkway

Golden, CO 80401

303-275-3000 • www.nrel.gov

Conference Paper

NREL/CP-5000-71865

December 2018

Full-System Linearization for Floating 

Offshore Wind Turbines in OpenFAST

Preprint

Jason M. Jonkman, Alan D. Wright, Greg J. Hayman, 

and Amy N. Robertson

National Renewable Energy Laboratory

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
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.

This report is available at no cost from the National Renewable 

Energy Laboratory (NREL) at www.nrel.gov/publications.

U.S. Department of Energy (DOE) reports produced after 1991 

and a growing number of pre-1991 documents are available 

free via www.OSTI.gov.

Cover Photos by Dennis Schroeder: (clockwise, left to right) NREL 51934, NREL 45897, NREL 42160, NREL 45891, NREL 48097, 

NREL 46526.

NREL prints on paper that contains recycled content.
1

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

FULL-SYSTEM LINEARIZATION FOR FLOATING OFFSHORE WIND TURBINES IN 

OPENFAST

Jason M Jonkman, Alan D Wright, Greg J Hayman, Amy N Robertson

National Renewable Energy Laboratory

15013 Denver West Parkway

Golden, Colorado 80401 (USA)

ABSTRACT

The wind engineering community relies on multiphysics 

engineering software to run nonlinear time-domain simulations

(e.g., for design-standards-based loads analysis). Although 

most physics involved in wind energy are nonlinear, 

linearization of the underlying nonlinear system equations is 

often advantageous to understand the system properties and 

exploit well-established methods and tools for analyzing linear 

systems. This paper presents the development of the new 

linearization functionality of the open-source engineering tool 

OpenFAST for floating offshore wind turbines, as well as the 

concepts and mathematical background needed to understand 

and apply it.

INTRODUCTION

To support design and analysis—so that wind turbines are 

innovative, optimized, reliable, and cost-effective—the wind 

industry and research communities rely on engineering 

software (i.e., design tools) capable of predicting the coupled 

dynamic loads and responses of the wind system. OpenFAST

(formerly known as FAST), developed by the National 

Renewable Energy Laboratory (NREL) via support from the

U.S. Department of Energy, is an open-source multiphysics tool 

that enables the design of wind turbines [1]. OpenFAST models 

the important physical phenomena and system couplings, 

including the environmental excitation (wind, waves, and 

current) and full-system dynamic response (rotor, drivetrain, 

nacelle, support structure, and controller) under both normal 

(for fatigue) and extreme (for ultimate) loading conditions. The 

OpenFAST model enables the analysis of a range of wind 

turbine configurations, including two- or three-bladed

horizontal-axis rotors, pitch or stall regulation, rigid or 

teetering hub, upwind or downwind rotor, and lattice or tubular 

towers. The wind turbine can be modeled on land or offshore 

on bottom-fixed or floating substructures.

The primary use of OpenFAST is to run nonlinear timedomain simulations (e.g., for design-standards-based loads 

analysis). Although most physics involved in wind energy are 

nonlinear, linearization of the underlying nonlinear system 

equations is often advantageous to understand the system 

response and exploit well-established methods and tools for 

analyzing linear systems. For example, linear state-space 

models can be transformed to transfer functions, impulseresponse functions, or frequency-response functions. The 

ability to generate linearized models is important for 

eigenanalysis (to derive structural natural frequencies, damping 

ratios, and mode shapes), controls design (based on linear statespace models), stability analysis, gradients for optimization 

problems, and support for the development of reduced-order 

models.

Previous FAST linearization work focused on 1) 

structuring the FAST v8 source code to enable linearization 

(FAST v8 is the predecessor of OpenFAST); 2) developing the 

general approach to linearizing the mesh mapping within the 

module-to-module, input-output coupling relationships, 

including rotations; 3) linearizing core (but not all) features of 

the land-based modules of FAST (InflowWind, AeroDyn, 

ServoDyn, and ElastoDyn) and their coupling; and 4) verifying 

this implementation by applying the tool to sample cases [2]. 

More recently, the ability to linearize OpenFAST models with 

advanced structural dynamics for aeroelastically tailored blades 

using the BeamDyn module was introduced and verified [3]. 

This work extends these efforts to linearizing core (but not all) 

features of the floating offshore wind turbine (FOWT) modules 

in OpenFAST and their coupling, including the hydrodynamics 

in HydroDyn and moorings in MAP++, and verifying the 

updated implementation.1

The HydroDyn hydrodynamics module of OpenFAST [1] 

allows for multiple approaches for calculating the 

hydrodynamic loads on floating platforms, including a 

potential-flow theory solution, a strip-theory solution, or a 

hybrid combination of the two. Waves may be regular 

(periodic) or irregular (stochastic), and long crested 

(unidirectional) or short crested (with wave energy spread 

across a range of directions). Second-order terms in the wave 

kinematics and/or potential-flow solution are available options. 

The MAP++ module of OpenFAST [1] models mooring 

systems quasi-statically, considering geometric nonlinearities of 

catenary or taut lines, elastic stretching, line weight, and 

buoyancy as well as clump weights and buoyancy tanks, lineto-line interconnections, and seabed friction.

 1

The offshore linearization functionality of older versions of FAST (v6 

through v7) was limited to structural linearization only, requiring disabling or 

assuming a quasi-static treatment of other physics, and linearization of waveexcitation and wave-radiation loads was not possible.
2

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 

modularization framework was designed to support is 

explained in [4] and is consistent with the present 

implementation. Details on the linearization of the land-based 

modules and their coupling, including mesh mapping, is 

explained in [2,3]. Without replicating most of the information, 

this paper uses the same approach and nomenclature of [2,3,4], 

adding details about the linearization of the floating offshore 

modules HydroDyn and MAP++ and their coupling, including 

mesh mapping.

The mathematical background presented in this paper is 

currently being implemented in the OpenFAST source code. 

Unfortunately, the implementation at the time of this writing 

has not yet been completed enough to produce results. Results 

will be presented in future work to highlight the functionality 

and verify the implementation (e.g., for a sample case whereby 

the natural frequencies and damping of the NREL 5-MW 

baseline wind turbine atop a spar buoy will be calculated as a 

function of rotational speed and presented in Campbell-diagram 

form).

The linearization of OpenFAST involves: 1) finding an 

operating point (OP), 2) linearizing the underlying nonlinear 

equations of each module about the OP, 3) linearizing the 

module-to-module input-output coupling relationships in the 

OpenFAST glue code about the OP, and 4) combining all 

linearized matrices into the full-system linear state-space model 

and exporting those matrices and the OP to a file. Each step is 

highlighted in the following sections.

OPERATING-POINT DETERMINATION

OP (or fixed-point) determination is an important first step 

in the linearization process because a linear representation of a 

nonlinear system is only valid for small deviations 

(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 timemarching 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, op x , discrete-time states, d

op x , inputs, op u , and time, 

op t , 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, op x , constraint 

(algebraic) states, op z , and outputs, op y , for each module. 

Each of these variables can be perturbed (represented by ∆ ) 

about their respective OP values as given by Eq. (11) from [4]

(e.g., for module inputs op uu u = +∆ ). References [2,3] clarify

how this operation is extended to rotations (orientations) in 

three dimensions (3D), which do not reside in a linear space.

The number of states, inputs, and outputs (i.e., the size of the 

vectors x , d x , z , u , and y ) depend on the features enabled

in OpenFAST.

MODULE LINEARIZATION

As explained in [4], the FAST modularization framework 

supports a very general (need not be linear) state-space 

formulation, with any combination of continuous-time-state, 

discrete-time-state, constraint- (algebraic-) state, other- (e.g.,

logical) state, and output equations. However, for a module to 

support linearization, the formulation is limited to a hybrid 

semiexplicit differential-algebraic equation (DAE) of index 1,2

which has the following limitations: 1) the continuous-timestate derivatives and discrete-time-state updates must be written 

as an explicit function of the states, inputs, and parameters; 2) 

the constraints must be of index 1; and 3) other states are used 

only for time-integration or when acting as parameters in the 

linearization process.

To support linearization, a module must also be able to 

export Jacobian matrices for the state and output equations with 

respect to the states and inputs. The OpenFAST module states, 

inputs, and outputs kept in the linearization process for the 

features linearized to date are summarized in Table 1. The 

OpenFAST module features linearized to date include only 

continuous-time and constraint states (no features with discretetime states have yet been linearized).

The linearized form of a general module is given by Eqs. 

(12) and (13) from [4]; the simplified forms for the land-based 

modules InflowWind, AeroDyn, ServoDyn, ElastoDyn, and 

BeamDyn are given in [2,3]. The simplified forms for the 

newly linearized offshore modules HydroDyn and MAP++ are 

given next, along with a description of how each module is

linearized.

 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 

most general form (e.g., for a module without discrete-time and constraint 

states, the continuous-time-state equations form ordinary differential 

equations).
3

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

The linearization of the HydroDyn (HD) module applies to 

both the strip-theory solution, potential-flow solution, or a 

hybrid combination of the two. Linear state-space-based waveexcitation and wave-radiation models have been added to 

HydroDyn to enable linearization of the potential-flow 

solution, including wave-excitation loads (with diffraction) 

from disturbances of wave elevation and wave-radiation loads 

with free-surface memory effects.

The linear state-space-based wave-radiation model was 

previously available in HydroDyn within FAST v8. As shown 

in [5], the model approximates the convolution term in the 

Cummins equation as shown in Eq. (1), with a linear statespace model as shown in Eq. (2), where FRdtn is the waveradiation loads; KRdtn is the wave-radiation-retardation 

kernels; Ptfm q is the floating platform translation and rotational 

velocities; Rdtn x are the wave-radiation states; and ARdtn , 

TABLE 1. MODULE STATES, INPUTS, AND OUTPUTS KEPT IN THE OPENFAST LINEARIZATION PROCESS TO DATE.

Module States Inputs Outputs

InflowWind 

(IfW)

• None • Positions where the undisturbed (inflow) wind will be 

output

• Disturbances of horizontal wind speed, power-law shear 

exponent, and wind-propagation direction

• Undisturbed (inflow) wind velocity at input positions

• User-selected wind-inflow outputs

ServoDyn 

(SrvD)

• None • Nacelle-yaw angle and rate

• Generator speed

• Blade-pitch-angle command (independent)

• Nacelle-yaw moment

• Generator torque and electrical power

• User-selected control and electrical-drive outputs

ElastoDyn 

(ED)

• Position and orientation and 

translational and rotational

velocities of the floating 

platform (continuous states)

• Relative bending-mode 

degrees of freedom of the 

blades and tower and their 

first-time derivatives 

(continuous states)

• Relative rotational 

displacement and velocity of 

the nacelle-yaw, generator 

azimuth, shaft torsion, and 

rotor-teeter (continuous 

states)

• Applied point forces and moments distributed along the 

blades and tower

• Applied point forces and moments lumped on the hub, 

nacelle, and platform

• Blade-pitch-angle command (both independent and rotorcollective)

• Nacelle-yaw moment

• Generator torque

• Translational displacements, orientations, 

translational and rotational velocities, and 

translational and rotation accelerations of analysis 

nodes along the blades and tower

• Translational displacements, orientations, 

translational and rotational velocities, and 

translational and rotation accelerations of the bladeroot, nacelle, and platform reference points

• Translational displacement, orientation, and 

rotational velocity of the hub reference point

• Nacelle-yaw angle and rate

• Generator speed

• User-selected structural outputs

BeamDyn 

(BD)

• Positions and orientations 

and translational and 

rotational velocities of nodes 

distributed along each blade 

(continuous states)

• Translational displacements, orientations, translational 

and rotational velocities, and translational and rotational 

accelerations of each blade root

• Applied point forces and moments distributed along each 

blade

• Applied line (per-unit length) forces and moments 

distributed along each blade

• Reaction point forces and moments lumped at each 

blade root

• Translational displacements, orientations, 

translational and rotational velocities, and 

translational and rotation accelerations of nodes 

along each blade

• User-selected structural outputs

AeroDyn 

(AD)

• Inflow angle at each blade 

analysis node/airfoil 

(constraint states)

• Translational displacements, orientations, and 

translational velocities of analysis nodes along the blades 

and tower

• 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

• Aerodynamic-applied line (per-unit length) forces 

and moments distributed along the blades and tower

• User-selected aerodynamic outputs

HydroDyn 

(HD)

• State-space-based waveexcitation states (continuous 

states)

• State-space-based waveradiation states (continuous 

states)

• Translational displacements, orientations, translational 

and rotational velocities, and translational and rotational 

accelerations of analysis nodes distributed along the 

floating platform

• Translational displacement, orientation, translation and 

rotational velocities, and translational and rotational 

accelerations of the platform reference point

• Disturbance of wave elevation at the platform reference 

point

• Hydrodynamic-applied point forces and moments 

distributed along the floating platform

• Hydrodynamic-applied line (per-unit length) forces 

and moments distributed along the floating platform

• Hydrodynamic-applied point force and moment at 

the platform reference point

• User-selected hydrodynamic outputs

MAP++ 

(MAP)

• Horizontal and vertical

tensions at the fairlead of 

each mooring line (constraint 

states)

• Positions of each connect 

node (constraint states for

multi-segmented mooring 

• Translational displacements of each fairlead • Reaction point forces (tensions) lumped at each 

fairlead

• User-selected mooring outputs
4

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 

wave-radiation model. The more wave-radiation states there 

are, the better the state-space model can approximate the 

convolution. Within HydroDyn, the user can select either the 

convolution-based wave-radiation model, which is 

implemented via numerical convolution using discrete-time 

states (which, if linearized, would overly complicate 

application of the linear state-space model), or the linear statespace-based wave-radiation model, which is implemented using 

matrices derived from the SS_Fitting preprocessor [6] or 

equivalent.

( ) ( ) ( )

t

Rdtn Rdtn Ptfm

0

Ft K tq d =− −τ ττ ∫  (1)

Rdtn Rdtn Rdtn Rdtn Ptfm x Ax Bq   = + (2a)

F Cx Rdtn Rdtn Rdtn ≅ (2b)

The linear state-space-based wave-excitation model was 

newly introduced in HydroDyn within OpenFAST with the 

addition of the linearization functionality for FOWTs. Similar 

to the linear state-space-based wave-radiation model, the model 

approximates the infinite integral shown in Eq. (3) with a linear 

state-space model as shown in Eq. (4), where FExctn is the 

wave-excitation loads under unidirectional waves; KExctn is 

the incident wave-excitation kernels; ζ is the wave elevation; 

c ζ is a time-shifted wave elevation; Exctn x is the waveexcitation states; and AExctn , BExctn , and CExctn are the 

matrices of the linear state-space wave-excitation model.

Further details on this new linear state-space-based waveexcitation model are provided in Annex A. Within HydroDyn, 

the user can now select either a Fourier-transform-based waveexcitation model, which is implemented with discrete Fourier 

transforms (which is not conducive to linearization), or the new 

linear state-space-based wave-excitation model.

Ft K t d Exctn ( ) Exctn ( τζτ τ ) ( )

∞

−∞

= − ∫ (3)

Exctn Exctn Exctn Exctn c x Ax B  = + ζ (4a)

F Cx Exctn Exctn Exctn ≅ (4b)

When linear state-space-based wave excitation or wave

radiation are enabled in the potential-flow solution, continuoustime states associated with the excitation and radiation damping 

are included in the linearized HydroDyn model. Linearization 

is permitted only in still water 

( c Exctn Exctn op op op ζ = = = x F0 )3 and is not permitted when 

 3

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 

steady-state condition (for operating turbines) can be found for the OP (the 

Fourier-transform-based wave-excitation, convolution-based 

wave-radiation, wave directional spreading, second-order wave 

kinematics, or second-order potential-flow loads are enabled. 

The linearized form of the HydroDyn state and output 

equations is given by Eq. (5), where (HD) Exctn

Rdtn

x x x

∆

∆

∆

  =    

,

(HD) ∆u includes contributions from ∆ζ and Ptfm ∆q , and 

(HD) ∆y includes contributions from ∆FExctn and ∆FRdtn .

(HD HD HD HD HD ) ( ) ( ) ( ) ( ) ∆ ∆∆ x Ax Bu  = + (5a)

(HD HD HD HD HD ) ( ) ( ) ( ) ( ) ∆∆∆ y Cx Du = + (5b)

The continuous-state matrix, input matrix, continuous-state 

output matrix, and the input-transmission matrix are the 

Jacobians of the state and output equations relative to the states 

and inputs about the OP, computed analytically for the 

Jacobians of the state equations and numerically via a centraldifference perturbation technique for the Jacobians of the 

output equations as shown in Eq. (6), where (HD) X is the 

continuous-state functions and (HD) Y is the output functions of 

HydroDyn. For inputs that are rotations in 3D (i.e., u = Λ and 

∆ ∆θ u = 

), it is implied that (HD) (HD)

op

u u + ∆ , (HD) (HD)

op

u u − ∆ ,

and (HD) 2 u∆ are written as ( ) ( ) ( ) HD HD

op f Λ ∆θ ∆Λ

 , 

( ) ( ) ( ) HD HD

op f Λ ∆θ ∆Λ −  , and (HD) 2∆θ

 , respectively. In Eq. 

(6b), the column order is dictated by the order of HydroDyn 

inputs, and 0 are appropriately sized zero matrices. For the 

numerically computed Jacobians, the default perturbation sizes 

are hard-coded within HydroDyn (but can be customized by 

recompiling) and are ≈0.035 m for translational states, 2 ̊ for 

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) 

hydrodynamic added mass, 3) state-space-based wave-radiation 

damping, 4) hydrostatic restoring, and 5) linearized viscous 

drag. The latter is found by numerically linearizing the viscousdrag 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]).

 time-domain solution could not reach a static-equilibrium or steady-state 

condition if waves were present). This implies that the OP values of the wave 

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 

include the contributions from perturbations of the wave elevation (i.e., ∆ζ

need not be zero), and so, even though the OP is determined in still water, the 

influence of wave-excitation may still be included.
5

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

( ) (HD) HD Exctn

op Rdtn

X A 0

A x 0 A

∂   = =   ∂  

(6a)

( ) (HD) HD Exctn

op Rdtn

X 0 0 0B

B u 0B 0 0

∂   = =   ∂  

(6b)

( ) ( ) ( ) ( ) (HD) HD

HD op op op op op op

op

Y x x,u ,t Y x x,u ,t Y C x 2 x

∆ ∆

∆

+ −− ∂ = = ∂

(6c)

( ) ( ) ( ) ( ) (HD) HD

HD op op op op op op

op

Y x ,u u,t Y x ,u u,t Y D u 2 u

∆ ∆

∆

+− − ∂ = = ∂

(6d)

The MAP++ (MAP) module has constraint (algebraic) 

states, there are no restrictions to linearization, and the 

linearized form is given by (MAP MAP MAP ) ( ) ( ) ∆ ∆ y Du = . The 

input-transmission matrix is the Jacobian of the output 

equations relative to the inputs about the OP, computed 

numerically via a central-difference perturbation technique as 

shown in Eq. (7), where (MAP) Y is the output functions of 

MAP++. For inputs that are rotations in 3D (i.e., u = Λ and 

∆ ∆θ u = 

), it is implied that (MAP) (MAP)

op

u u + ∆ , 

(MAP) (MAP)

op

u u − ∆ , and (MAP) 2 u∆ are written as 

( ) ( ) ( ) MAP MAP

op f Λ ∆θ ∆Λ

 , ( ) ( ) ( ) MAP MAP

op f Λ ∆Λ −∆θ

 , and 

(MAP) 2∆θ

 , respectively. The Jacobian contains the linearized 

contribution from mooring restoring.

( ) ( ) ( ) ( ) (MAP) MAP

MAP op op op op op op

op

Y z z,u u,t Y z z,u u,t dY D du 2 u∆∆ ∆∆

∆

+ + −− −

= =

(7)

While MAP++ and AeroDyn are both modules with 

constraint states, their numerical linearization approach differs. 

Equation (7) involves the total derivative of the MAP++ output 

equations relative to the inputs about the OP, where it is 

implied that the constraint perturbations, (MAP) ∆z and 

(MAP) −∆z , are tied to the input perturbations, (MAP) ∆u and 

(MAP) −∆u , by solving the implicit constraint equations, 

( )

(MAP)

op op op

0 Z z z,u u,t =+ + ∆ ∆ and 

( )

(MAP)

op op op

0 Z z z,u u,t =− − ∆ ∆ , respectively, essentially 

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)

op

Z

z

∂

∂ , 

( AD)

op

Z

u

∂

∂ , 

( AD)

op

Y

z

∂

∂ , and 

( AD)

op

Y

u

∂

∂ are computed 

separately and algebraically manipulated to compute ( AD) D as 

shown in Eqs. (6) and (7) of [2]. This difference in 

implementation was needed in MAP++ because the residual of 

constraint equations, (MAP) Z , is not readily available internally 

within MAP++. The default perturbation sizes are hard-coded 

within MAP++— but can be customized by recompiling—and 

are fractions of the water depth for the inputs. To obtain an 

accurate Jacobian, it is important that the perturbation sizes are 

not too large to make a taut mooring line go slack or a slack 

line go taut, but not too small to prevent the tolerance used to 

solve the implicit constraint equations from effecting the 

numerically computed derivative.

MODULE-TO-MODULE, INPUT-OUTPUT COUPLING

RELATIONSHIPS LINEARIZATION

Most module inputs and outputs in OpenFAST reside on 

spatial boundaries, which in the FAST modularization 

framework are defined in terms of a mesh. The module-tomodule, input-output coupling relationships in the OpenFAST 

glue code are algebraic, and include spatial mesh-to-mesh 

mapping. The general approach to linearizing the mesh

mapping within the module-to-module, input-output coupling 

relationships within OpenFAST, including rotations, is detailed 

in [2].

The linearized input-output transformation functions, U , 

are given by Eq. (8) from [2] or Eq. (15) from [4], repeated in 

Eq. (8) for convenience.

op op

U U 0uy

u y

∆ ∆ ∂ ∂= +

∂ ∂  with 

op

U 0

u

∂

≠

∂  (8)

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 

mapping between independent spatial discretizations—the 

input of one module equals the output of another. It follows 

that with 

( )

( )

( )

( )

( )

( )

( )

IfW

SrvD

ED

BD

AD

HD

MAP

U

U

U

U U

U

U

U

 

 

 

 

 

 

=  

 

 

 

 

 

   

, 

( )

( )

( )

( )

( )

( )

( )

IfW

SrvD

ED

BD

AD

HD

MAP

u

u

u

u u

u

u

u

∆

∆

∆

∆ ∆

∆

∆

∆

 

 

 

 

 

 

=  

 

 

 

 

 

   

, and 
6

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

( )

( )

( )

( )

( )

( )

( )

IfW

SrvD

ED

BD

AD

HD

MAP

y

y

y

y y

y

y

y

∆

∆

∆

∆ ∆

∆

∆

∆

 

 

 

 

 

 

=  

 

 

 

 

 

   

, the Jacobian matrices evaluated at the OP 

from Eq. (8) for these seven modules are given by Eq. (9), 

where I and 0 are appropriately sized identity and zero 

matrices and the sub-Jacobian matrices are composed of I s, 

0 s, and the linearized matrices from the mapping transfers

given in [2].

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

IfW

AD

ED ED ED ED

BD AD HD MAP

BD BD

BD AD op

AD

AD

HD

HD

op

U I00 0 0 0

u

0I0 0 0 0 0

UUUU 00I

u u uu

U U U 000 0 0 u u u

U 000 0 0 0

u

U 000 0 0 0

u

000 0 0 0 I

  ∂  

∂

∂∂∂∂

∂ ∂ ∂∂

∂ ∂ ∂ = ∂ ∂ ∂

∂

∂

∂

∂

 



  

  





(9a)

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

SrvD

ED

ED ED ED ED ED ED

SrvD ED BD AD HD MAP

BD BD BD

ED BD AD

op AD AD AD

IfW ED BD

HD

ED

MAP

ED

00 0 0000

U 00 0000

y

U U UUUU 0

y y y y yy

U UU U 0 0 0 0

y yy y

U UU 0 000

y yy

U 00 0000

y

U 00 0000

y

 

  ∂

∂

∂ ∂ ∂∂∂∂

 ∂ ∂ ∂ ∂ ∂∂ 

 ∂ ∂∂  ∂ =  ∂ ∂∂ ∂ 

 ∂ ∂∂



 ∂ ∂∂

 ∂ 

 ∂ 

 ∂ 



  ∂ op

































(9b)

Because of their large size, the sub-Jacobian matrices are 

not shown here, but are described qualitatively instead:

• The first, second, fourth, and fifth equations of Eq. (8) 

for InflowWind inputs, (IfW ) 0 U= , ServoDyn inputs, 

(SrvD) 0 U= , BeamDyn inputs, (BD) 0 U= , and 

AeroDyn inputs, ( AD) 0 U= , are described in [2,3].

• The third equation of Eq. (8) for ElastoDyn inputs, 

(ED) 0 U= , are also described in [2,3], except that the 

new floating offshore linearization functionality now 

also includes terms expressing the contributions of 

HydroDyn and MAP++. That is, this equation 

expresses that the applied point force and moment 

perturbations distributed along the blades and tower as 

input to ElastoDyn are derived from the aerodynamicapplied line (per-unit length) force and moment 

perturbations distributed along the blades and tower as 

output from AeroDyn. This linearized load-mapping 

transfer also depends on the translational-displacement 

perturbations of analysis nodes along the blades and 

tower output from ElastoDyn. And when BeamDyn is 

enabled, point force and moment perturbations on the 

hub as input to ElastoDyn are derived from the bladeroot reaction point force and moment output from 

BeamDyn, which also depends on the translationaldisplacement perturbation of the hub reference point 

output from ElastoDyn. Additionally, the blade-pitchangle-commands, nacelle-yaw-moment, and 

generator-torque perturbations as input to ElastoDyn 

are derived from the equivalent outputs from 

ServoDyn. For the floating offshore functionality, 

point force and moment perturbations on the platform 

as input to ElastoDyn are derived from the 

hydrodynamic-applied line (per-unit length) and point 

force and moment perturbations distributed along the 

floating platform as output from HydroDyn and the 

reaction point forces (tensions) lumped at each 

fairlead as output from MAP++, which also depends 

on the translational-displacement perturbation of the 

platform reference point output from ElastoDyn.

• The sixth equation of Eq. (8) for HydroDyn inputs, 

(HD) 0 U= , expresses that the translational 

displacement, orientation, translational and rotational 

velocity, and translational and rotational acceleration

perturbations of analysis nodes distributed along the 

floating platform as input to HydroDyn are derived 

from motion outputs from ElastoDyn at the platform 

reference point.

• The seventh equation of Eq. (8) for MAP++ inputs, 

(MAP) 0 U= , expresses that the translational 

displacement perturbations of each fairlead as input to 

MAP++ are derived from the motion outputs from 

ElastoDyn at the platform reference point.

The Jacobian,

op

U

u

∂

∂  , has ones along its entire diagonal 

and it is easily shown that its determinant from Eq. (8) is 

nonzero.

FINAL MATRIX ASSEMBLY

Once all individual modules and input-output relationships

are linearized about the OP, the linearized model of the 

complete coupled system can be assembled. Linearization of 

the full-system model produces a linear state-space model 

representation of the complete nonlinear system about the OP, 

including the influence of system state and input perturbations 
7

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 

form of the complete coupled system is given by Eqs. (18) and 

(19) from [4]. With ( ) ( ) ( ) { } TT T T

ED BD HD ∆∆ ∆ ∆ xx x x = , the 

form for the OpenFAST features linearized to date (without 

discrete-time states and with ElastoDyn, BeamDyn, and 

HydroDyn as the only modules with continuous-time states) is

given by Eq. (10), where ∆u+ is the additional input 

perturbations (explained further in [4]).

∆ ∆∆ x Ax Bu+  = + (10a)

∆∆∆ y Cx Du+ = + (10b)

The full-system state-space matrices are given in Eq. (11), 

where op G —explained more in [4] for the general case—for 

the OpenFAST linearization to date is given by Eq. (12). The 

matrix 

op

G has ones along its entire diagonal and it is easily 

shown that its determinant from Eq. (12) is nonzero, which 

means that the matrix inverse, 

1

op

G −     from Eq. (11), exists 

and is bounded in the neighborhood around the OP.

The input-transmission matrices impact all matrices of the 

linearized coupled system, highlighting the important role 

played by direct feedthrough of input to output in the coupled 

system response. For example, while the continuous-state 

matrix of ElastoDyn, (ED) A , contains mass, stiffness, and 

damping only directly associated with the structural model, the 

full-system continuous state matrix, A , contains mass, 

stiffness, and damping associated with coupled aero-hydroservo-elastics, including hydrodynamic added mass, waveradiation and viscous damping, and hydrostatic and mooring 

restoring for FOWTs.

When the linearized full-system matrices A , B , C , and 

D are exported to a file by OpenFAST, the additional input 

perturbations, ∆u+ , can be chosen by the user to be: 1) the 

inputs of all modules, 2) none of the module inputs (removing 

B and D from the file), or 3) a standard subset of these 

inputs, which include the standard wind turbine control inputs 

of nacelle-yaw moment, generator torque, and blade-pitchangle commands (both independent and rotor-collective); the 

standard wind-inflow disturbances of horizontal wind speed, 

power-law shear exponent, and wind-propagation direction; 

and the standard incident-wave disturbance of wave elevation. 

Likewise, the output perturbations, ∆y , can be chosen by the 

user to be: 1) the outputs of all modules, 2) none of the module 

outputs (removing C and D from the file), or 3) only the 

subset of output variables selected by the user through the 

OpenFAST module input file(s). Regardless of what the user 

selects to be exported to a file, all of the module inputs and 

outputs are used to form the linearized full-system matrices in 

Eq. (11), but only a subset of these matrices are exported based 

on the user selection.

( )

( )

( )

( )

( )

( )

( )

( )

( )

ED ED ED

1 BD BD BD

op

HD HD op

HD

000

000

A 0 0 00B 0 0 0 0 C 00

U A 0 A 0 00 0 B 0 0 0G 0C 0

y

0 0 A 00 0 0 0B 0 000

0 0C

000

−

 

 

        ∂ =    −          ∂          

 

(11a)

( )

( )

( )

ED

1 BD

op op HD

00B 0 0 0 0

U B 00 0 B 0 0 0G u

00 0 0 0B 0

−

 

  ∂   =   ∂

 



(11b)

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

IfW

SrvD

ED ED ED

1 BD BD BD

op

op AD

HD HD HD

MAP

D 0 0000 0 000 000

0 0 0 0D 0 0 0 0 0 000

C 0 0 0 0D 0 0 0 0 C 00

U C G 0C 0 0 0 0D 0 0 0 0C 0

y

000 000 0 0 0 0D 0 0

0 0C 0 0C 0 0 0 0 0D 0

000 000

0 0 0 0 0 0D

−

         





 ∂ = −          ∂ 



    















  



(11c)
8

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

( )

( )

( )

( )

( )

( )

( )

IfW

SrvD

ED

1 BD

op op AD

HD

MAP

D 0 0000 0

0D 0 0 0 0 0

0 0D 0 0 0 0

U D G 0 0 0D 0 0 0 u

0 0 0 0D 0 0

0 0 0 0 0D 0

0 0 0 0 0 0D

−

 

 

∂ =     ∂

 



(11d)

( )

( )

( )

( )

( )

( )

( )

( ) ( )

( )

( ) ( )

( )

( )

( )

( ) ( )

( )

( )

( )

( ) ( )

( )

( )

( )

( ) ( )

( )

( )

( )

( )

( )

( )

( ) ( )

( )

( )

( )

( ) ( )

( )

IfW

AD

SrvD ED

ED

ED ED ED ED ED ED ED ED ED ED SrvD ED BD AD HD MAP

SrvD ED BD BD AD AD HD HD MAP MAP

BD BD BD BD ED BD

op ED BD BD AD

U I0 0 0 0 0

u

U 0I D 0 0 0 0

y

U U UU UU UU U U 0 D I DDDD D

y y uy uy uy u y

U UU U G 00 D D

y uy u

∂

∂

∂

∂

∂ ∂ ∂∂ ∂∂ ∂∂ ∂ ∂ ++++ +

∂ ∂ ∂∂ ∂∂ ∂∂ ∂ ∂

∂ ∂∂ ∂∂ = + +

∂ ∂∂ ∂





 

( )

( )

( )

( )

( )

( ) ( )

( )

( ) ( )

( )

( ) ( )

( )

( )

( )

( ) ( )

( )

( )

( )

( )

BD AD

AD

AD AD AD AD IfW ED BD

IfW ED BD AD

HD HD ED

ED HD

MAP ED

ED

op

U D0 0

y

U UU U D0 D D 0 0

y yy u

U U 00 D 0 0 0

y u

U 00 D 0 0 0 I

y

 

 

∂

∂ ∂∂ ∂

∂ ∂∂ ∂

∂ ∂

∂ ∂

∂

  ∂





with op G 0 ≠

(12)

CONCLUSIONS

Linearization of the underlying nonlinear wind-system 

equations is often important for understanding the system 

response and exploiting well-established methods and tools for 

analyzing linear systems. This paper has presented the 

development of the new linearization functionality of the opensource engineering tool OpenFAST for FOWTs, as well as the 

concepts and mathematical background needed to understand 

and apply it. Details have been presented on finding an OP, 

linearizing the underlying nonlinear equations of each module 

about the OP, linearizing the module-to-module input-output 

coupling relationships about the OP, and combining all 

linearized matrices into the full-system linear state-space 

model. The new linearization functionality enables the

contributions from state-space-based wave excitation, 

hydrodynamic added mass, state-space-based wave-radiation 

damping, hydrostatic restoring, linearized viscous drag, and 

linearized mooring restoring for FOWTs to be included in the 

full linearized system. 

Unfortunately, the implementation at the time of this 

writing has not yet been completed enough to produce results. 

Results will be presented in future work to highlight the 

functionality and verify the implementation (e.g., for a sample 

case whereby the natural frequencies and damping of the 

NREL 5-MW baseline wind turbine atop the OC3-Hywind spar 

buoy will be calculated as a function of rotational speed and 

presented in Campbell-diagram form).

Beyond the developments implemented here, potential 

future OpenFAST linearization enhancements include: 1) 

introducing routines to find a static equilibrium, steady-state, or 

periodic steady-state condition for improved OP determination; 

2) enabling the linearization of the tuned-mass-damper (TMD)

models and external user-specified controllers within ServoDyn 

for improved controls development and analysis; 3) 

implementing a form of unsteady airfoil aerodynamics, 

including dynamic stall, within AeroDyn amendable to 

linearization (e.g., from [8]) and including that model within 

the linearization of AeroDyn for advanced aerodynamic and 

stability analysis; 4) linearizing the offshore functionality of 

OpenFAST for bottom-fixed offshore wind systems; and 5) 

linearizing new features as the OpenFAST models are further 

developed in the future going forward.

ACKNOWLEDGMENTS

The authors would like to thank Bonnie Jonkman of 

Envision Energy USA, Ltd. for her contributions to the 

development of the FAST modularization framework and to 

implementation of the land-based linearization functionality.

This work was authored by the National Renewable 

Energy Laboratory, operated by the Alliance for Sustainable 

Energy, LLC, for the U. S. Department of Energy (DOE) under 

Contract No. DE-AC36-08GO28308. Funding was provided by 

the U.S. Department of Energy Office of Energy Efficiency and 

Renewable Energy. The views expressed in the article do not 

necessarily represent the views of the U.S. Department of 

Energy 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.

REFERENCES

[1] Web page https://nwtc.nrel.gov/OpenFAST (accessed 

May 7, 2018).
9

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 

modularization framework for wind turbine simulation: 

full-system linearization.” Journal of Physics: Conference 

Series, The Science of Making Torque from Wind 

(TORQUE 2016), 5–7 October 2016, Munich, Germany 

[online journal]. 082010. Vol. 753, 2016. URL: 

http://iopscience.iop.org/article/10.1088/1742-

6596/753/8/082010/pdf; NREL/CP-5000-67015. Golden, 

CO: National Renewable Energy Laboratory.

[3] Jonkman, J. M.; Jonkman, B. J.; and Platt, A. “FullSystem Linearization for Wind Turbines with 

Aeroelastically Tailored Rotor Blades in OpenFAST.” (in 

preparation).

[4] Jonkman, J. M. “The New Modularization Framework for 

the FAST Wind Turbine CAE Tool.” 51st AIAA Aerospace 

Sciences Meeting including the New Horizons Forum and 

Aerospace Exposition, 7–10 January 2013, Grapevine 

(Dallas/Ft. Worth Region), TX [online proceedings]. 

URL: http://arc.aiaa.org/doi/pdf/10.2514/6.2013-202.

AIAA-2013-0202. Reston, VA: American Institute of 

Aeronautics and Astronautics, January 2013; NREL/CP5000-57228. Golden, CO: National Renewable Energy 

Laboratory.

[5] Duarte, T.; Alves, M.; Jonkman, J.; and Sarmento, A. 

“State-Space Realization of the Wave-Radiation Force 

within FAST.” 32nd International Conference on Ocean, 

Offshore, and Arctic Engineering (OMAE2013), 9–14 

June 2013, Nantes, France [DVD-ROM]. OMAE2013-

10375. Houston, TX: The American Society of 

Mechanical Engineers (ASME International) Ocean, 

Offshore and Arctic Engineering (OOAE) Division, June 

2013; ISBN 978-0-7918-5542-3; NREL/CP-5000-58099. 

Golden, CO: National Renewable Energy Laboratory.

[6] Web page https://nwtc.nrel.gov/SS_Fitting (accessed May 

7, 2018).

[7] Borgman, L. E. “Spectral Analysis of Ocean Wave Forces 

on Piling.” Journal of the Waterways and Harbors 

Division, Vol. 93, Issue 2, pp. 129-156, 1967.

[8] Hansen, M. H.; Guanaa, M.; and Madsen, H. A. A 

Beddoes-Leishman type dynamic stall model in statespace and indicial formulations. Risø-R-1354 (EN). 

Roskilde, Denmark: Risø National Laboratory. 2004.

ANNEX A

LINEAR STATE-SPACE-BASED WAVE-EXCITATION 

MODEL

In the frequency domain, the potential-flow-based waveexcitation loads (three forces and three moments) can be 

expressed for unidirectional waves by Eq. (A.1), where 

X , (ω β ) is the frequency- (ω ) and direction- ( β ) dependent 

wave-excitation loads on the floating platform normalized per 

unit wave amplitude (derived, e.g., from a potential-flow-based 

wave-body interaction solver WAMIT) and ζ ω( ) is the waveelevation spectrum for waves propagating in direction β (both 

are complex-valued to include phases). For time-domain 

simulations, the spectral wave data and wave direction are

model inputs and the phases of the various wave components 

are selected randomly. The time-domain wave-excitation loads, 

F t Exctn ( ) , are usually precomputed at model initialization by 

calculating the inverse Fourier transform shown in Eq. (A.2), 

where j 1 = − is the imaginary number (HydroDyn uses a 

discrete Fourier transform in place of the continuous-time 

transform shown).

F X, Exctn (ω ωβ ζ ω ) = ( ) ( ) (A.1)

( ) ( ) ( ) j t

Exctn

1 F t X , ed 2

ω ωβ ζ ω ω

π

∞

−∞

= ∫ (A.2)

Equivalently, as shown in [A.1], the wave-excitation load 

components can be calculated through the infinite convolution 

integral given by Eq. (3), where the incident wave-excitation 

kernels derived from Eq. (A.3), represent the incident waveexcitation impulse-response functions (IRF) that depend only 

on platform parameters. The goal is to use a linear state-space 

equation to approximate Eq. (3), with the time-domain wave 

elevation, ζ (t), acting as the input, and the time-domain 

wave-excitation loads, F t Exctn ( ) , as the output.

( ) ( ) j t

Exctn

1 K t X ,ed 2

ω ωβ ω

π

∞

−∞

= ∫ (A.3)

Fitting a linear state-space model to the infinite 

convolution integral is complicated by the noncausality of this 

system. This issue has been studied extensively in [A.2] and 

[A.3], where a time-shifting method is used to arrive at a causal 

transfer function between wave elevation and wave-excitation 

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 

nonzero for negative time even though the impulse acts at 

t 0 = s. The system response for negative time is as large as the 

response for positive time, so it cannot be ignored.
10

This report is available at no cost from the National Renewable Energy Laboratory (NREL) at www.nrel.gov/publications.

An approximately causal IRF is obtained through a timeshifting method. Figure A.1 shows that for all times less than 

c −t ( ct 12 ≈ s for this example), the IRF is approximately 

zero. A time delay, ct , is introduced to shift the original IRF to 

obtain a “causalised” IRF, ( ) ( ) Exctn Exctn c c c K t K tt = − . Figure 

A.1 shows that this time-shifted IRF (red) is approximately 

zero for negative time. Equation (A.4), in terms of ( ) Exctnc K t

and ζ c (t) , follows directly from Eq. (3) and the time-shift 

properties of Fourier transforms, where ζ ζ c c (t tt ) = + ( ) is 

the wave elevation predicted at time ct into the future. To 

implement this approach, a wave-prediction model must be 

used to predict the wave elevation for future times. Within 

OpenFAST simulations, this is not an issue because the wave 

elevation is precalculated at model initialization, so the future 

wave elevations are already available. In practice, the future 

wave evaluation could be estimated (e.g., by measuring the 

wave elevation with a buoy and approximating the wave 

evolution).

( ) ( ) ( ) Exctn Exctn c Ft K t d c τζ τ τ

∞

−∞

= − ∫ (A.4)

Now the goal is to fit a linear state-space model to the 

causalised IRF, ( ) Exctnc K t , based on input ζ c (t) . For a statespace system of the form shown in Eq. (4), it can be shown that 

the IRF is A t Exctn C e B Exctn Exctn , where A t Exctn e is the matrixexponential function [A.4]. The goal is to determine AExctn , 

BExctn , and CExctn so that A t Exctn C e B Exctn Exctn approximates 

( ) Exctnc K t in terms of some error norm. This is usually done 

by minimizing a cost function, such as given by Eq. (A.5), 

where G t( k ) is a weighting function to be chosen, evaluated 

at specific sampling times, kt , for k 1,2, ,m =  . At least m

discrete values of Exctnc K are assumed to be known either from 

theory or experiment.

( ) ( ) Exctn

c

m 2 A t

k Exctn k Exctn Exctn

k 1

Q Gt K t C e B

=

=   − ∑   (A.5)

Several methods exist for performing this systemidentification step. For this work, we rely on the use of a linear

state-space realization of the impulse response using Hankel 

singular value decomposition and MATLAB’s SystemIdentification-Toolbox command imp2ss [A.5]. The state-space 

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 

description to be equal to the zero matrix [A.5]. A balanced 

model-truncation method is used to arrive at a low-order statespace approximation for the wave-excitation loads.

This general method for generating a linear state-space 

model of the wave excitation for inclusion into OpenFAST is 

being developed and programmed into a MATLAB script. 

Further details, with example cases and a user’s guide for this 

script will be described in a future publication.

[A.1]Jonkman, J. M. Dynamics Modeling and Loads Analysis 

of an Offshore Floating Wind Turbine. Ph.D. Thesis. 

Department of Aerospace Engineering Sciences, 

University of Colorado, Boulder, CO, 2007; NREL/TP500-41958. Golden, CO: National Renewable Energy 

Laboratory.

[A.2]Yu, Z. and Falnes, J. “State-space Modeling of a Vertical 

Cylinder in Heave.” Applied Ocean Research, Vol. 17, 

Issue 5, pp. 265-275, 1995.

[A.3]Lemmer, F., Raach, S., Schlipf, D., and Cheng, P. 

“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, 

Norway; DOI: 10.1016/j.egypro.2016.09.186.

[A.4]Ogata, K. Modern Control Engineering, Englewood 

Cliffs, NJ: Prentice-Hall Inc., 1990.

[A.5]Ljung, L. and Singh, R. “Version 8 of the MATLAB

System Identification Toolbox.” 16th IFAC Symposium on 

System Identification, Brussels, Belgium. ISBN 

9783902823069; pp. 1826-1832, 2012;

doi:10.3182/20120711-3-BE-2027.00061.

-40 -30 -20 -10 0 10 20 30 40 50 60

-8

-6

-4

-2

0

2

4

6

8

10 10 5 Impulse Response Functions: original and causalized

-8

-6

-4

-2

0

2

4

6

8

10 105 Impulse Response Functions: original and causalized

12 ct s ≈

( ) Exctnc ( ) K t K t Exctn

FIGURE A.1. NONCAUSAL AND CAUSAL IMPULSERESPONSE FUNCTIONS.