Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
CFD-based Methodology for Wind Farm Layout Optimization
by
Enrico Giuseppe Agostino Antonini
A thesis submitted in conformity with the requirementsfor the degree of Doctor of Philosophy
Department of Mechanical and Industrial EngineeringUniversity of Toronto
c© Copyright 2018 by Enrico Giuseppe Agostino Antonini
Abstract
CFD-based Methodology for Wind Farm Layout Optimization
Enrico Giuseppe Agostino Antonini
Doctor of Philosophy
Department of Mechanical and Industrial Engineering
University of Toronto
2018
Driven by concerns on climate change and global warming, increasing oil prices, government support
and public receptiveness, wind energy harvesting is emerging as one of the fastest growing renewable
energy technologies. Most wind energy is nowadays produced by wind farms, which consist of hundreds
of turbines to take advantage of economies of scale. Wind farm performance is however affected by
the wakes generated by the turbines which can significantly diminish their annual energy production.
Accurate wake effect predictions and reliable wind farm layout design become therefore critical aspects
to the economic success of a wind farm project. The present research project aims therefore to define an
innovative design framework that integrates accurate wake effect predictions for the development of the
next generation wind farms as part of the strategy for promoting the transition to a renewable energy
generation.
Computational fluid dynamics (CFD) provides a unique tool to simulate wind turbine wakes because
of its capability to provide a complete solution for the flow field in complex configurations. Nevertheless,
CFD simulations are strongly influenced by the choice of the turbulence model used to close the Reynolds-
averaged Navier-Stokes (RANS) equations. We therefore conducted an analysis of different turbulence
models and their influence on the results of CFD wind turbine simulations to suggest the most suitable
for such applications. Even though proper turbulence modeling is adopted, several studies showed
however that the effectiveness of RANS models in wind farm simulations has not always been consistent.
We therefore hypothesized this limitation to arise from uncertainties generated by the wind direction
variability and proposed a modeling framework that, by accounting for such uncertainties, consistently
improved the agreement of the CFD predictions with the experimental observations. To integrate the
CFD models in a design methodology, we developed an innovative continuous adjoint formulation for
gradient calculations within the framework of a gradient-based wind farm layout optimization. By testing
this optimization methodology under different wind farm configurations, wind resource distributions and
terrain topography, we showed that this unique CFD-based design framework effectively improved the
annual energy production of a proposed wind farm by optimally siting its turbines.
ii
Acknowledgements
With this short note, I would like to express my sincere gratitude to all people and institutions that
supported me during this 4-year-long research at the University of Toronto.
First, I would like to thank my advisor, Professor Cristina Amon, for the opportunity that she gave
me to be part of her research group and for her guidance and inspiration during my studies. Under her
supervision, I could fully dedicate to my own path and have the freedom and independence of pursuing my
research interests. I would also like to thank the other members of my supervisory committee, Professor
Pierre Sullivan and Professor Jim Wallace, for their comments and recommendations to develop and
improve the quality of my research project. I am also grateful to Professor Amy Bilton and Professor
Peter Hamlington for their willingness to be my thesis examiners and for their feedback on my thesis.
At the University of Toronto, I have had the pleasure of being part of a wonderful research group
at the ATOMS lab, without which my research experience would not have been so enjoyable. Very
special thanks go to Dr. David Romero, who was a supportive mentor and provided me with insightful
comments and advice during the course of this research. I thank all the lab members with whom I
have had the chance to develop a profound professional and personal relationship: Aditya, Alba, Armin,
Carlos, Daniela, Danyal, David G., Elyar, Hank, Harmit, Helen, Jim, Jonathan, Juan, Khash, Leslie,
Matthew, Omri, Patrick, Ruslan, Ryan, Sami, Sean, Summer, Tij.
This research would not have been possible without the support from several institutions. The
Department of Mechanical and Industrial Engineering at the University of Toronto provided the funding,
the material and the courses through which I gained a precious knowledge for this project, and a
stimulating environment where I could explore the work of other brilliant researchers. This research
was also funded in part by the Hatch Graduate Scholarship for Sustainable Energy Research and the
Metcalfe Family Graduate Fellowship for Sustainable Energy Research.
The most important acknowledgement goes to my wife, Miriam Dal Bosco, for her immense love and
unconditional support throughout this entire life experience. She always believed in me and was a great
source of encouragement. I would also like to thank my family and, particularly, my parents for their
support from back home.
Enrico G. A. Antonini
Toronto, Canada
Summer of 2018
iii
Contents
Acknowledgements iii
Table of Contents iv
List of Tables vii
List of Figures ix
1 Introduction 1
1.1 State of the art in wind farm wake modeling and layout optimization . . . . . . . . . . . . 4
1.1.1 Wake modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.2 Layout optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.3 Research gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2 Thesis objective and proposed investigations . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3 Thesis outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2 Analysis of Turbulence Models for Wind Turbine Wake Simulations 16
2.1 Case studies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.1 Sexbierum wind farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.2 Nibe wind farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 CFD methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.1 Turbulence modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.2 Actuator disk modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.3 Surface boundary layer modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 Turbulence model constants for SBL and wind turbine simulations . . . . . . . . . . . . . 24
2.4 Numerical setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.1 Boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
iv
2.4.2 Wall functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.3 Mesh sensitivity analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3 Wind Farm Simulations incorporating Wind Direction Uncertainty 40
3.1 Case studies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.1 Sexbierum wind farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.2 Nibe wind farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.1.3 Horns Rev wind farm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2 CFD modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2.1 Turbulence modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.3 Wind turbine and surface boundary layer modeling . . . . . . . . . . . . . . . . . . . . . . 46
3.3.1 Wind turbine modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3.2 Surface boundary layer modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.4 Numerical setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.4.1 Boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.4.2 Wall functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.5 Modeling uncertainty with simulation ensembles (MUSE) . . . . . . . . . . . . . . . . . . 51
3.6 Results and discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.6.1 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.6.2 Results with MUSE Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4 Continuous Adjoint Formulation for WFLO: A 2D Implementation 61
4.1 The adjoint method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.2 Continuous adjoint formulation for the wind farm layout optimization problem . . . . . . 63
4.2.1 Adjoint equations for the laminar and frozen-turbulence cases . . . . . . . . . . . . 69
4.2.2 Adjoint equations for the turbulent case . . . . . . . . . . . . . . . . . . . . . . . . 70
4.3 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.1 Boundary conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.3.2 Verification results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.4 Optimization methodology for the WFLO problem . . . . . . . . . . . . . . . . . . . . . . 79
4.5 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
v
5 Toward WFLO in Complex Terrain 87
5.1 Wind turbine and surface boundary layer modeling . . . . . . . . . . . . . . . . . . . . . . 87
5.1.1 Wind turbine modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.1.2 Surface boundary layer modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
5.2 Verification of the 3D continuous adjoint formulation for WFLO . . . . . . . . . . . . . . 89
5.3 Optimization methodology for the WFLO problem in complex terrains . . . . . . . . . . . 92
5.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6 Conclusions and Future Directions 97
6.1 Outcomes and their impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
6.2 Future directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Bibliography 101
vi
List of Tables
2.1 Wind turbine characteristics and wind conditions of Sexbierum and Nibe wind farms . . . 17
2.2 Baseline turbulence model constants derived for a turbulence decay exponent of 1.2 . . . . 27
2.3 Modified turbulence model constants derived for a turbulence decay exponent of 0.9 . . . 27
2.4 Modified turbulence model constants derived for a turbulence decay exponent of 0.6 . . . 27
2.5 Mesh sensitivity analysis for the Sexbierum case. The monitored values reported in the
table are the rotor normal average velocity and the streamwise velocity at 2.5D down-
stream. For each of these two quantities, the value obtained with each of the turbulence
models is reported. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6 Mesh sensitivity analysis for the Nibe case. The monitored values reported in the table
are the rotor normal average velocity and the streamwise velocity at 2.5D downstream.
For each of these two quantities, the value obtained with each of the turbulence models
is reported. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.7 Root-mean-square errors (RMSE) between the experimental data and the simulations
results when considering the wind direction range between -30 and 30. The RMSEs are
classified by case (Sexbierum and Nibe), by quantity of interest (normalized wind speed
(NWS), normalized turbulence kinetic energy (NTKE), and turbulence intensity (TI)),
by downstream distance, and by turbulence model. . . . . . . . . . . . . . . . . . . . . . . 33
3.1 Wind turbine characteristics and wind conditions of Sexbierum and Nibe wind farms . . . 42
3.2 Turbulence model constants for SBL and wind turbine simulations [6, 7] . . . . . . . . . . 46
3.3 Root-mean-square errors (RMSE) between the experimental data and the simulations
results when considering the wind direction range ±30 for the Sexbierum and Nibe cases,
and ±15 for the Horns Rev case. The RMSEs are classified by case (Sexbierum, Nibe,
and Horns Rev), by quantity of interest (normalized wind speed (NWS) and normalized
power (NP)), by downstream distance, and by turbulence model. . . . . . . . . . . . . . . 54
vii
3.4 Coefficients of the fitting function of Eq. 3.18 for each of the normalized power distribu-
tions plotted in Fig. 3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.1 Percentage difference in the absolute value and angular difference in the direction of the
gradients computed by the central difference approach and the adjoint method in the
laminar case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.2 Percentage difference in the absolute value and angular difference in the direction of the
gradients computed by the central difference approach and the adjoint method in the
frozen-turbulence case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.3 Percentage difference in the absolute value and angular difference in the direction of the
gradients computed by the central difference approach and the adjoint method in the
turbulent case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.4 Normalized AEP and improvement with respect to the initial configuration obtained at
the end of the optimization for each of the initial wind farm layouts and for each of the
wind roses (WR) used. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.1 Relative magnitude of the gradient computed with the adjoint method, ‖∇Jrel‖, and
errors in magnitude, err∇J , and direction, errθ, between the gradient calculated with the
adjoint method and the central difference approach on a grid of locations downstream of
the turbine for the frozen-turbulence case. . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.2 Relative magnitude of the gradient computed with the adjoint method, ‖∇Jrel‖, and
errors in magnitude, err∇J , and direction, errθ, between the gradient calculated with the
adjoint method and the central difference approach on a grid of locations downstream of
the turbine for the turbulent case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.3 Normalized AEP and improvement with respect to the initial configuration obtained at
the end of the optimization for each of the initial wind farm layouts and for each of the
cases tested. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
viii
List of Figures
1.1 Energy balance in 2015 [83]. The figure on the left shows the world primary energy supply
by fuel, which is then transformed/refined into the final energy consumption, shown on
the right. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 World electricity generation by fuel in 2015 [83]. . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Global distribution of annual average onshore wind power potential [106]. . . . . . . . . . 4
1.4 Wake generated by a single turbine. V0 = 10 m/s, CT = 0.7. Distances are non-
dimensional, normalized by the diameter of the turbine rotor. [131] . . . . . . . . . . . . . 7
2.1 Performance curves of the Sexbierum and Nibe wind turbines . . . . . . . . . . . . . . . . 18
2.2 Schematic layouts of the domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.3 Schematic of the boundary conditions used in the simulations. . . . . . . . . . . . . . . . . 29
2.4 Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as
a function of wind direction for the k − ε model with the baseline and modified sets of
coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.5 Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as
a function of wind direction for the k − ω model with the baseline and modified sets of
coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.6 Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as a
function of wind direction for the SST k − ω model with the baseline and modified sets
of coefficients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.7 Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as a
function of wind direction for the RSM with the baseline and modified sets of coefficients 35
2.8 Wind speed and turbulence intensity downstream the Nibe wind turbine as a function of
wind direction for the k − ε model with the baseline and modified sets of coefficients . . . 37
ix
2.9 Wind speed and turbulence intensity downstream the Nibe wind turbine as a function of
wind direction for the k − ω model with the baseline and modified sets of coefficients . . . 37
2.10 Wind speed and turbulence intensity downstream the Nibe wind turbine as a function of
wind direction for the SST k − ω model with the baseline and modified sets of coefficients 38
2.11 Wind speed and turbulence intensity downstream the Nibe wind turbine as a function of
wind direction for the RSM with the baseline and modified sets of coefficients . . . . . . . 38
3.1 Performance curves of the Sexbierum, Nibe, and Horns Rev wind turbines . . . . . . . . . 43
3.2 Schematic layouts of the domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.3 Example of weighted averaging. A moving weighted averaging process based on a Gaussian
distribution is applied to all wind directions . A Gaussian distribution centered at θ = 0
with σθ = 5 is plotted for clarification purposes. . . . . . . . . . . . . . . . . . . . . . . . 53
3.4 Normalized wind speed downstream the Sexbierum wind turbine as a function of wind
direction for the different turbulence models and for different downstream distance. . . . . 56
3.5 Normalized wind speed downstream the Nibe wind turbine as a function of wind direction
for the different turbulence models and for different downstream distance. . . . . . . . . . 56
3.6 Normalized power production of turbine 17 operating in the wake of turbine 07 at the
Horns Rev wind farm as a function of wind direction for different turbulence models. The
continuous lines correspond to Eq. 3.18 fitted to the normalized power data for each of
the turbulence models. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.7 Normalized averaged wind speed downstream the Sexbierum wind turbine as a function
of wind direction for the different turbulence models and for different downstream distance. 59
3.8 Normalized averaged wind speed downstream the Nibe wind turbine as a function of wind
direction for the different turbulence models and for different downstream distance. . . . . 59
3.9 Normalized averaged power production of turbine 17 operating in the wake of turbine 07
at the Horns Rev wind farm as a function of wind direction for different turbulence models. 59
4.1 Schematic illustrating the calculation of material partial derivatives. . . . . . . . . . . . . 67
4.2 Schematic of the layout for the verification case. The two grey areas represent the volumes
where the wind turbine momentum sources are applied. The black dots indicate the
different positions where the second wind turbine is placed when the gradient is calculated. 74
4.3 Gradient computation for the laminar case. The figures show the results obtained by the
adjoint method compared to a central difference discretization approach for the different
lateral positions of the second wind turbine at 10D and 15D downstream. . . . . . . . . . 76
x
4.4 Gradient computation for the frozen-turbulence case. The figures show the results ob-
tained by the adjoint method compared to a central difference discretization approach for
the different lateral positions of the second wind turbine at 10D and 15D downstream. . . 77
4.5 Gradient computation for the frozen-turbulence case. The figures show the results ob-
tained by the adjoint method compared to a central difference discretization approach for
the different lateral positions of the second wind turbine at 10D and 15D downstream. . . 77
4.6 Flow chart reproducing the optimization methodology used to solve the wind farm layout
optimization problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.7 Schamatic of the 2D domain used to test the optimzation methodology. . . . . . . . . . . 80
4.8 Initial layouts used as inputs for the optimization process. . . . . . . . . . . . . . . . . . . 81
4.9 Optimization results obtained from a regular initial layout. For each wind rose on the
left, the final optimal layout is shown in the center along with the value of the normalized
annual energy production (AEP) through the iterations on the right. . . . . . . . . . . . . 82
4.10 Optimization results obtained from a random initial layout. For each wind rose on the
left, the final optimal layout is shown in the center along with the value of the normalized
annual energy production (AEP) through the iterations on the right. . . . . . . . . . . . . 83
5.1 Schematic of the layout for the verification case. The two grey areas represent the volumes
where the wind turbine momentum sources are applied. The black dots indicate the
different positions where the second wind turbine is placed when the gradient is calculated. 89
5.2 Gradient computation for the frozen-turbulence case. The figures show the results ob-
tained by the adjoint method compared to a central difference discretization approach for
the different lateral positions of the second wind turbine at 4D and 6D downstream. . . . 90
5.3 Gradient computation for the turbulent case. The figures show the results obtained by the
adjoint method compared to a central difference discretization approach for the different
lateral positions of the second wind turbine at 4D and 6D downstream. . . . . . . . . . . 91
5.4 Flow chart reproducing the optimization methodology used to solve the wind farm layout
optimization problem in complex terrians . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.5 Illustration of the domains used for the application of the 2D and 3D methodologies. . . . 93
5.6 Wind rose and initial layouts used as inputs for the optimization process. . . . . . . . . . 94
5.7 Optimal layouts obtained at the end of the optimization process starting from a regular
initial layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
xi
5.8 Optimal layouts obtained at the end of the optimization process starting from a random
initial layout. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
xii
Chapter 1
Introduction
In recent years, there has been a growing interest on renewable energy resources, such as solar, geother-
mal, wave, and wind. These resources provide energy derived from natural processes that are replenished
constantly over human timescales. Since they are not direct sources of pollution and greenhouse gases,
they can be considered the ideal candidates to tackle one of the most concerning problems of our time:
global warming. This is defined as the observed century-scale increase in planet’s average surface tem-
perature. The Intergovernmental Panel on Climate Change (IPCC) Fifth Assessment Report concluded
in 2013 that “it is extremely likely that human influence has been the dominant cause of the observed
warming since the mid-20th century” [148]. The largest human influence has been identified in the car-
bon dioxide and other human-made emissions into the atmosphere. To take action against this problem,
most of world governments (195 as of June 2018) have signed the Paris Agreement [156] by which the
signing countries aim to limit the increase of the global average temperature to below 1.5 C above
pre-industrial levels.
The current energy scenario, which can be visualized in Fig. 1.1 and 1.2, indicates that many efforts,
technological advancements, and regulations are still pending for a transition to a sustainable energy
generation future. Based on the International Energy Agency’s 2017 report [83], renewables contributed
to 18.8% of the global energy consumption and 23% of the global electricity generation in 2015. On the
other hand, fossil fuels, which are responsible for most of the greenhouse gas emissions, contributed to
79.3% and 66.4% of the global energy consumption and electricity generation, respectively.
Concerns on climate change and global warming, coupled with growing oil prices and government
support, are however driving increasing renewable energy legislation, incentives and commercialization
[14, 22, 135]. According to the International Renewable Energy Agency [84], renewable energies are
1
Chapter 1. Introduction 2
Figure 1.1: Energy balance in 2015 [83]. The figure on the left shows the world primary energy supplyby fuel, which is then transformed/refined into the final energy consumption, shown on the right.
Figure 1.2: World electricity generation by fuel in 2015 [83].
Chapter 1. Introduction 3
projected to reach a 36% share in the global energy consumption by 2030, doubling the renewable
energy use with respect to 2010. This scenario envisions wind energy as one of the fastest growing
renewable technologies with an grow rate of about 8% per year for the foreseeable future [62]. This
growing trend can already be observed in markets such as North America, Asia, Africa and Europe [82].
For example, Europe is set to have 20% of its energy demand met by renewables by 2020, where wind
is expected to supply about 12%-13% of total demand [51]. This has created a huge market for wind-
energy-related products and services, and has led to significant developments in wind energy science,
technology and policy [26].
Beside the positive consequences that wind energy generation would have on the environment, other
effects are commonly seen as positive on the social and political scenes. By observing the global map of
wind energy resource, shown in Fig. 1.3, it is possible to notice that wind energy is a resource widely
distributed on the planet. Higher wind power potentials are seen near coastal regions and over large flat
lands. As opposed to fossil-fuel reserves that are concentrated in few territories, the wide distribution
and accessibility that characterize wind energy as well as other renewable energies is certainly going to
promote a transition towards a decentralization of energy provision and systems. A growing consensus
now views this transition as a key strategy to address energy security issues in terms of availability,
affordability, and resilience [21, 22, 157]. In fact, energy independence and security could have a strong
impact on geopolitical tensions and armed conflicts that have tragically occurred in modern times.
Figure 1.3 also shows that wind power potential is quite variable from region to region. This potential
is the most important factor in determining the future success of a wind energy project [120]. Therefore,
the first step in the design of a wind energy project is the definition of the site thanks to scientific
forecasting methods and by considering the proximity to population centers. To consider is also that, as
more wind capacity is developed on-shore, both land use and environmental impact become increasingly
important constraints during the design process [136]. Given current trends, it is expected that new
installations would be increasingly likely to be close to human dwellings, thus stressing the importance
of environmental and public policy aspects of the design of wind energy systems [136, 163, 169, 171].
Most wind energy is nowadays produced by wind farms, which consist of hundreds of turbines and
take advantage of economies of scale to reduce procurement, permit issuance and project development
costs. Wind farm performance is however affected by the wakes generated by the turbines [159] which
can diminish their annual energy production by 10%-20% [72]. The wakes are regions of low wind speed
that are the result of the kinetic energy extracted by the turbines. The wakes lower the speed of the wind
entering the turbines placed downstream and, consequently, reduce their power production. Accurate
wake effect predictions and reliable wind farm layout design become therefore critical aspects to the
Chapter 1. Introduction 4
Figure 1.3: Global distribution of annual average onshore wind power potential [106].
economic success of a wind farm project.
The present research project aims therefore to define an innovative design framework that integrates
accurate wake effect predictions for the development of the next generation wind farms as part of
the strategy for promoting the transition to a renewable energy generation and reducing greenhouse
emissions. A review of the state of the art in wind farm wake modeling and layout optimization is
conducted and current research gaps are identified. Based on the literature review, a project plan is
defined which has the potential to advance our knowledge of wind farm modeling and simulation and to
create new and reliable design frameworks for the wind turbine industry.
1.1 State of the art in wind farm wake modeling and layout
optimization
This section aims to give an overview of the currently used models to simulate the wake effects in wind
farms, the algorithms to solve the wind farm layout optimization problem, and how they are combined.
1.1.1 Wake modeling
One important phenomenon that has to be investigated with regards to wind farms is the wake generated
by wind turbines, which lowers the wind speed experience by the turbines placed downstream and, as
a consequence, reduces their power production [11, 13, 15, 147]. Accurate modeling of wake effects is
therefore crucial for a correct estimation of the annual energy production and for an optimal design of
the wind turbines placement. Different approaches exist to model wind turbine wakes, namely analytical
Chapter 1. Introduction 5
and numerical models [159]. Whereas analytical wake models have the advantage of being simple and
computationally efficient, numerical models, which rely on Computational Fluid Dynamics (CFD), offer
higher accuracy and flexibility to handle different ambient conditions.
The wakes generated by wind turbines can be generally divided in two distinct regions: the near
wake, where the influence of the rotor blades on the flow field can be clearly distinguished, and the far
wake, where the effect of rotor blades is diminished by the mixing of undisturbed flow and the flow inside
the wake. The near-wake effects are usually restricted to a region up to 2-5 diameters downstream the
wind turbine, even though the transition from one region to the other is gradual and not well defined.
The near-wake models are used for predicting performance and loads of wind turbines. Typical
models describing the near wake are the Blade Element-Momentum (BEM) models [16, 74], vortex wake
models [5, 152] and CFD models [63, 75]. While some of these methods have been applied to study
the flow through wind turbines, they are computationally expensive or, in some cases, inadequate for
wind farm calculations. Far-wake models can be divided in analytical models, which are based on self-
similar velocity deficit profiles obtained from experimental and theoretical work, and CFD models, which
calculate the flow magnitudes at every point of the flow field [137]. From the viewpoint of wind farm
simulations, the far-wake models are the most suitable for this kind of simulations where the local effects
of rotor blades are no longer important due to the distance between wind turbines, and these will be
analyzed in the following sections.
Analytical models
Analytical wake models are based on self-similar velocity deficit profiles obtained from experimental and
theoretical work and have the advantage of being simple and computationally efficient. Among the most
used analytical wake models are the ones developed by Jensen [87], Larsen [103], and Frandsen et al. [56].
The constitutive equations use empirical constants that have to be tuned on experimental data [37, 118].
Ad hoc models for wakes overlapping from multiple turbines need also to be introduced for wind farm
power calculations [93, 99]: they usually assume simple superimposition of turbine wakes and neglect the
complex turbulent mixing occurring in wind farms. Because of these simplifications, the analytical wake
models are not capable of accurately dealing with flow structures introduced by atmospheric conditions,
changes in terrain roughness, speed-up effects around turbines or terrain features, and complex flow
phenomena such as wake meandering [9, 12, 18, 38, 102, 139, 150].
Jensen model In the development of his model, Jensen assumed a linearly expanding wake with
a velocity deficit that is only dependent of the distance behind the rotor [87]. The following expressions
Chapter 1. Introduction 6
are derived to describe the wake radius and center-line velocity:
R = R0 + αx;V
V0= 1− 1−
√1− CT
(1 + αx/R0)2
where R and R0 are the wake and rotor radius, respectively, V and V0 are the center-line wake velocity
and undisturbed wind speed, respectively, and x is the distance downstream the rotor. The value of α
is generally taken to be 0.075, which is adequate for land cases, whereas for offshore applications a value
of 0.04 is recommended.
Larsen model The Larsen model is based upon the assumption that Prandtl’s turbulent boundary
layer equations can be used to describe the wake behind a turbine, considering the flow incompressible,
stationary and axisymmetric [103]. The equation used to determine the velocity deficit at the position
x downstream (obtained with a first-order approximation) and the radius of the wake are:
V
V0= 1− 1
9
(CTA (x+ x0)
−2)1/3
R3/2
(3c21CTA (x+ x0)
)−1/2 −(
35
2π
)3/10 (3c21)−1/5
2
R =
(35
2π
)1/5 (3c21)1/5
(CTA (x+ x0))1/3
where A is the rotor area, c1 is the non-dimensional mixing length and x0 is another constant that
denotes the turbine’s position with respect to the applied coordinate system. The equations used to
estimate these two constants were given in Ref. [121] and were determined empirically.
Frandsen model A more recent analytical model has been proposed by Frandsen et al. [56] to
predict the wind speed deficit in wind farms with a regular layout, i.e. with straight rows of wind
turbines and equidistant spacing between units in each row and equidistant spacing between rows. The
model includes three different wake regimes. In the first regime single or multiple wake flow is present
without interaction between wakes, the second regime takes into account the mixing of different wakes,
and the third regime models the interaction between wake flow and the planetary boundary layer. The
wake radius, the wake expansion parameter β, and the wake velocity were given for the case without
wake interaction by:
R = R0
(βk/2 + α
x
2R0
)1/k
; β =1 +√
1− CT2√
1− CT=
(ReffR
)2
;V
V0= 1− 1
2
(1−
√1− 2
A0
ACT
)
where the values of k and α are 2 and 0.7, respectively.
Chapter 1. Introduction 7
(a) Jensen model (b) Larsen model (c) Frandsen model
Figure 1.4: Wake generated by a single turbine. V0 = 10 m/s, CT = 0.7. Distances are non-dimensional,normalized by the diameter of the turbine rotor. [131]
CFD models
The use of CFD wake models in wind farm investigations has been undergoing a rapid growth thanks
to improvements of computational technologies and resources. The first CFD study dates back to 1985,
when Crespo et al. [43] developed a CFD code to analyze the wake of wind turbines in the atmospheric
surface layer. Since then, especially in the last 15 years, many works have been proposed in literature
that covered numerical, modeling, and accuracy issues of CFD wind turbine simulations [137].
The CFD models calculate the flow magnitudes at every point of the flow field: they are based on
the solution of the Navier-Stokes (NS) equations. Two different approaches are commonly used to solve
the NS equations. The first one uses a time-averaging procedure for the solution, producing the so-called
Reynolds-averaged Navier-Stokes (RANS) equations, which require additional turbulence modeling to
close the system of equations. The second approach aims to reduce the range of time- and length-scales
of turbulence via a high-pass filtering, producing the so-called large eddy simulations (LES), which
also require additional modeling for small turbulence scales. CFD models require a substantially larger
computer capacity than analytical models, although their requirements are well within the capabilities
of modern computers, not only in the case of single wakes but also for multiple wakes occurring in a wind
farm. On the other hand, the solution of the entire flow field allows these models to be more accurate
and to take into account also terrain topography and atmospheric conditions.
RANS models RANS models used in wind farm simulation can be divided in two groups based
on the assumptions they use to consider the pressure gradient in the turbine region, namely parabolic
and elliptic models [23]. The parabolic models are obtained by neglecting both the diffusion term and
the pressure gradient in the stream-wise direction, which allows to shift the solution technique from
time marching to space marching, reducing the computational time required to converge to the final
solution. The solution of the flow field starts downstream the wind turbine where the pressure gradient
Chapter 1. Introduction 8
no longer dominates the flow by prescribing a velocity profile. Due to this assumption, the parabolic
models cannot solve the near-wake region where pressure gradient dominates the flow, and they can be
used only when there is a predominant flow direction in the simulation. One of the first parabolic models
was developed by Ainslie [2], who assumed axial symmetry for the flow and an eddy viscosity method
for turbulence. A different model that does not assume axial symmetry is UPMWAKE, developed by
Crespo and Hernandez [41]. The UPMWAKE model was the foundation for the WAKEFARM model
of the Energy Research Centre of the Netherlands (ECN) [138]. The UPMWAKE model was extended
to UPMPARK to calculate parks with many turbines, using a sequence of single-wake computations,
where the outflow of one wake forms the inflow condition on the next one [40]. The elliptic models are
based on the full solution of RANS equations, which allows to solve the flow field also in the near-wake
region. One of the first elliptic codes was developed by Crespo and Hernandez [42], who extended the
original parabolic code to an elliptic version. Other implementations of elliptic RANS models can be
found in Ref. [18, 27, 28, 29, 73, 90, 107, 111, 113, 143, 144] where these models are shown to be
capable of simulating different wind farm configurations, atmospheric conditions, terrain roughness and
topography.
Many RANS studies in literature focus on the turbulence modeling and how it affects the wake
velocity and energy predictions. One of the most used turbulence models is the k−ε model, which found
implementation in many works, e.g. [24, 41, 123, 133]. The results of the simulations using the k−ε model
showed quite good agreement with experimental measurements when the CFD codes used the parabolic
RANS equations (i.e., the pressure gradient is neglected and the velocity profile is prescribed behind the
wind turbine), whereas the agreement was poor when the full RANS equations was employed (elliptic
equations). This limitation was first observed by Rethore [132], who suggested that the cause may lie
in the limited validity of the eddy viscosity assumption (Boussinesq approximation) in the near-wake
region. Another turbulence model widely used is the k−ω model, whose most notable implementations
were conducted by Prospathopoulos et al. [127, 128]. Similarly to the k − ε model, the results of the
simulations using the k − ω model showed poor agreement with experimental observations. A different
approach that does not make use of the Boussinesq hypothesis and computes directly the Reynolds
stresses is the Reynolds stress model (RSM), which was tested by Cabezon et al. [24] in comparison
with the standard k − ε model.
Due to the aforementioned limitations, several authors have proposed modifications of the original
models to improve agreement with experimental data. El Kasmi and Masson [48] modified the k − ε
model adding a source term to the transport equation for the turbulent energy dissipation in a region in
close proximity to the rotor. Other modified versions use a realizable eddy viscosity formulation model
Chapter 1. Introduction 9
[24] or flow-dependent turbulent coefficients [158]. Prospathopoulos et al. [128] proposed a modification
of the k − ω model adjusting the turbulence model coefficients according to a lower turbulence decay.
Furthermore, the realizability constraint was applied to the k − ω model and its results were compared
to the standard model in Ref. [128].
LES models LES methods are based on filtered NS equations: they resolve the large energy-
containing eddies whereas they introduce mathematical models for smaller eddies that are strongly
affected by molecular viscosity and dissipation. Although LES models currently represent the simulation
tool with the highest fidelity, they are computationally too expensive for a design perspective. In fact,
they are mainly used to provide valuable and detailed information about the dynamics of wind turbine
wakes, to develop, test, and improve less expensive models, or to parametrize wind farm effects in weather
and climate models [20, 108].
Most LES studies on wind farm wakes have been conducted over the last 15 years, when sufficient
computational resources became available to the research community. LESs for wind farms were first
applied by Jimenez et al. [88] who showed the potential of using such simulations to capture the details
of wake flows. Subsequent studies have focused on the characterization of the wake flow dynamics for
different ambient and operating conditions [1, 33, 34, 35, 39, 44, 55, 81, 89, 161, 167]. More recent
works have instead focused on the hypothetical case of infinite wind farms to study the effect that these
would have on the atmospheric boundary layer and to understand the mechanisms of energy extraction
[25, 170, 168].
1.1.2 Layout optimization
The wind farm layout optimization (WFLO) has become a significant topic as a consequence of the
installation of an increasing number of wind farms. The main objective of a wind farm is to maximize
power production while minimizing costs, subject to constraints such as inter-turbine spacing constraints,
environmental setbacks, noise emissions, among others [94]. In this optimization process the decision
variables are the turbine locations and the objective is commonly the maximization of the annual energy
production of the farm or the minimization of its cost (i.e. initial investment and net present value
during the entire wind-farm life span) [77]. As regards to the domain representation, there have been
two approaches: continuous (the turbines can be placed anywhere in the domain) and discrete (the
domain is partitioned into a set of cells, at the center of which the turbines can be placed) [140]. The
last approach allows to lower considerably the possible locations for the wind turbines and therefore all
the interactions between turbines can be pre-calculated.
Chapter 1. Introduction 10
Common approaches found in the WFLO literature have focused on minimizing turbine wake in-
teractions based on analytical wake models to estimate the losses generated by the wakes. This is
because optimization methodologies that are integrated with CFD models face practical limits in terms
of computer requirements: optimization processes require a large number of evaluations, and each CFD
evaluation will usually have a significant computational cost. The number of required evaluations strictly
depends on the particular problem being solved as well as the optimization algorithm being used, but
it scales with the number of optimization variables (i.e., the number of turbines), and generally ranges
from hundreds to hundreds of thousands. A clear consequence is that a CFD-based optimization is only
possible when the number of required evaluations is relatively low and, moreover, when the duration of
a single CFD computation does not exceed a few hours at most [154]. These constraints have prevented
the use of CFD models in the WFLO problem.
The first studies on the coupling of CFD models with optimization to tackle the WFLO problem have
been recently conducted. Kuo et al. [100] proposed an algorithm that couples CFD with mixed-integer
programming (MIP) to optimize layouts on complex terrains. Thanks to the proposed methodology,
the study achieved a convenient trade-off between computational cost and solution quality. King et
al. [95, 96] developed a gradient-based approach to solve the WFLO problem which used an adjoint
method in its discrete formulation. A similar study was conducted by Funke et al. [57] on tidal turbine
array optimisation using a discrete adjoint approach. The adjoint method is a means to compute the
gradient required by gradient-based optimization methods when the objective function depends on a set
of state variables (for this case, the NS equations) [61]. Adjoint methods can generally be divided into
discrete and continuous methods [154]. Their main characteristic is that the total cost for the gradient
computation does not depend on the number of design variables but is approximately equal to that of a
single CFD evaluation. Thanks to this feature, the adjoint methods have been widely and successfully
used in aerodynamic shape optimization and geophysical tomography (e.g., [4, 85, 86, 114, 116, 122]).
Due to the complexity of the turbine wake interactions, heuristic methods, such as genetic algorithm
(GA), particle swarm optimization (PSO), and simulated annealing (SA), are widely used for layout
optimization [142]. Nonetheless, mathematical programming approaches have also been applied to the
layout problem. These two main approaches to solve the WFLO problem will be analyzed briefly.
Heuristic methods Genetic algorithm is a common and effective optimization algorithm, which
emulates the natural process of evolution as a means of progressing toward an optimum. The foundation
of GA is based on the theory of natural selection, where individuals having certain positive characteristics
(parents) have a better chance to survive and reproduce, and hence transfer their characteristics to their
Chapter 1. Introduction 11
offspring. Random modification of solutions (mutation) is also applied to introduce new features into
the population which might have been left out at the beginning of the optimization process. Among all
optimization methods reported in the literature, GA has been the most utilized algorithm to solve the
wind farm layout design problem. Applications can be found in Ref. [31, 49, 68, 101, 112, 141, 169, 171].
The idea of PSO originated from the concept of social model simulations that came from a swarm
of birds flocking. This simple idea of particles swarming towards a set of possible good solutions is also
suitable for wind farm layout design. The application of PSO to the WFLO problem is relatively new
and recent publications [32, 78, 79, 80, 124, 130, 162] have shown that PSO has comparable performance
to GA.
Simulated annealing is a well-known optimization algorithm that has been successfully applied to
a number of complex optimization problems. This algorithm draws from the idea of heat treatments
in metallurgy that allow a material to reach its equilibrium state. As opposed to GA and PSO, which
maintain a population of solutions in each iteration, SA maintains a single solution which is perturbed
throughout the execution of the algorithm. Successful applications of this algorithm to the WFLO
problem can be found in Ref. [17, 76].
Mathematical programming Many authors have proposed mathematical programming approaches
to tackle the WFLO problem. The most commonly used approach is to formulate mixed integer pro-
gramming (MIP) problem, which consists of an objective function and a mix of integer and continuous
variables and constraints. Examples of this applications have been proposed by Zhang et al. [172] and
Turner et al. [155]. Other mathematical programming approaches applied to the WFLO are pattern
search [45], random search [52], and interior-point method [119]. Recently, non-linear mathematical
programming that uses exact gradient information has showed great potential in tackling this prob-
lem. In particular, gradient-based methodologies using the exact derivatives of the objective function
and constraints were demonstrated to outperform genetic algorithms in terms of solution quality and
computational cost [70, 71].
1.1.3 Research gaps
The literature analyzed in the previous sections shows that research gaps are currently present for
problems that have not been answered appropriately or at all in the context of both wake modeling and
layout optimization. These can be identified as following:
• A consistent comparison of the influence of the different turbulence models on the wind farm
simulations is still missing. In fact, the k − ε and k − ω formulations followed independent paths
Chapter 1. Introduction 12
with regards to both model tuning and experimental validation. For example, the turbulence
constants of the k − ε and k − ω models for atmospheric surface layer and wake simulations were
determined respectively by Crespo et al. [43] and by Prospathopoulos et al. [127] with no formal
consistency between each other. The same can also be said for the RSM, where no such study
was conducted. This lack of consistency prevented an effective comparison. Also, one of the
most promising turbulence models, the shear-stress transport (SST) k − ω model, widely used in
aeronautical applications, is still missing from the literature about wind turbine simulations.
• Although RANS turbulence modeling in the context of wind turbine wake predictions has been
widely studied in literature, its effectiveness has not been always consistent. A general level
of agreement exists in identifying the k − ε and k − ω models as the least accurate for wake
predictions. For this reason, many authors have proposed modifications of the original models
to improve agreement with experimental data. However, some studies showed that CFD wake
models employing the original k − ε and k − ω models were able to provide good agreement with
experimental observations. For instance, in Ref. [12, 15] the k − ε model was used with the full
RANS equations resulting in accurate predictions of the power production of turbines operating
in wake conditions. In addition, the k − ε and k − ω models were shown to be as accurate as
the SST k − ω and Reynolds stress models in Ref. [7, 128]. The reason for this inconsistency
of wake model predictions found in some studies is very likely related to unsteady and large-
scale phenomena that, while affecting the experimental measurements, are not taken into account
in the simulations [59]. RANS wake models are usually set up as steady simulations whereas
experimental measurements are affected by unsteady phenomena that naturally occur in ambient
conditions [97]. These unsteady phenomena can be quantified by the uncertainty that is associated
with the statistics of wind speed and direction. Because wind speed variability is accounted for in
RANS simulations by the turbulence models and, in particular, by the turbulence kinetic energy,
the most significant contribution to the aforementioned limitations is therefore expected to be given
by the wind direction variability. This variability has, in fact, been shown to have a strong impact
on turbine-wake characteristics, such as velocity deficit [126]. Direct methods currently available
to account for these unsteady flow phenomena are unsteady RANS simulations (URANS) or LES,
which are computationally more expensive by orders of magnitude.
• Many different approaches have been proposed to tackle the WFLO problem, and have shown
promising results in terms of both effectiveness, optimal design and computational cost. The
common feature of the described algorithms is that they rely on analytical wake models (mostly
Chapter 1. Introduction 13
Jensen model) to compute the wake effect in wind farm. As pointed out in the previous section,
these models are effectively suitable for an optimization process when the wind farm is on a flat
terrain. However, their accuracy is proved to be low compared to other more complex and accurate
models, such as the CFD models that can deal with terrain features and different atmospheric
conditions. WFLO using CFD models is currently in its early stages, mainly because of practical
limits of CFD optimization in terms of computer requirements and optimization algorithms.
1.2 Thesis objective and proposed investigations
The goal of the present research project is to develop an accurate, efficient, and fast CFD-based opti-
mization methodology for wind farm layouts. It will take advantage of the most advanced optimization
algorithms for CFD applications and novel formulations of existing algorithms will be developed for the
WFLO problem.
The project is divided in three main tasks. The first task will be focused on the development of a
state-of-the-art CFD model able to accurately simulate the effects of wake losses in a wind farm. The
proposed CFD model will be validated against publicly available experimental data, in terms of both
flow field and turbulence quantities. The CFD package that will be used for this task is OpenFOAM,
an open-source CFD software package which provides out-of-the-box support for parallel computing in
clusters. Moreover, OpenFOAM offers users complete freedom to customize and extend its existing
functionality. We will leverage this flexibility to develop and implement wind turbine models based on
the actuator disk technique and elliptic RANS equations. Current research gaps in RANS models for
wind farms will be investigated and solutions proposed.
The second task will focus on the development of a fast optimization algorithm that can be fully
integrated with OpenFOAM to optimize wind farm layouts. In order to reduce the associated compu-
tational cost, the application of the most advanced optimization algorithms for CFD applications to
the WFLO problem will be investigated. A novel formulation of one of the most promising optimiza-
tion algorithms for CFD applications, the adjoint method, will be developed for the WFLO problem
and implemented in OpenFOAM. This process will also take advantage of existing and ongoing work
in our research group in both multi-objective evolutionary strategies and mathematical programming
approaches which maximize the expected power output.
In the third and final task, the proposed CFD-based optimization approach will be tested on wind
farm layouts under several scenarios: different wind farm configurations, wind resource distributions and
terrain topography. This objective will allow to have an innovative, fast, and accurate tool available to
Chapter 1. Introduction 14
the wind energy community, enabling a paradigm shift to simulation-based wind farm optimization, as
opposed to current work that relies only on low-accuracy, analytical models. This novel approach will
allow wind farm designers to further reduce in the cost of wind energy, allowing the electricity produced
by wind farms to be competitive with fossil fuels, thus ensuring the continued growth of wind energy.
The proposed investigations of the present project in wake modeling and layout optimization are
summarized as follows:
• A study is conducted to compare in a consistent way the principal turbulence models for RANS
equations present in literature, namely the k−ε, k−ω, and Reynolds stress model, to introduce the
SSTk−ω model as a innovative turbulence model for wind turbine simulations, and to investigate
and assess the influence of different turbulence models on the results of the CFD simulations.
Consistent turbulence model constants for atmospheric surface layer and wake flows are derived
according to appropriate experimental observations.
• An investigation is conducted on the limitations and inconsistency of the RANS models in the
predictions of wake effects in wind farms. The discrepancies and the inconsistency of the turbulence
models are hypothesized to arise from wind direction uncertainty caused by large-scale unsteady
phenomena, which though present in the experimental measurements are not accounted for in
the simulations. An approach is therefore proposed to overcome these limitations by Modeling
Uncertainty using Simulation Ensembles (MUSE), i.e., a set of CFD results for different wind
directions to generate a single CFD prediction. The predictions of CFD model are post-processed
with this innovative method for CFD simulations that accounts for the wind direction uncertainty
associated with the specific wind farm data set.
• An optimization methodology is presented for the WFLO problem that integrates the high accuracy
and flexibility offered by the CFD models and that overcomes the computationally high costs of a
CFD-based optimization. To this end, an adjoint method is developed and used in its continuous
formulation for the gradient computation. The adjoint formulation is derived for three different flow
scenarios, namely, laminar, frozen-turbulence, and turbulent flows. The derived adjoint equations
are implemented in OpenFOAM by taking advantage of the top-level syntax of the code and of
the similarity between the Navier-Stokes and adjoint equations. The gradient calculation using the
developed adjoint method is implemented in a gradient-based optimization methodology to solve
the WFLO problem.
Chapter 1. Introduction 15
1.3 Thesis outline
Chapter 2 presents an analysis of the turbulence models for wind turbine wake simulations in atmospheric
boundary layers. These models are compared in a consistent way by defining appropriate turbulence
model constants. The results are validated against publicly available experimental data. Modifications
are also proposed to improve agreement with experimental observations. Chapter 3 illustrates an inves-
tigation of the limitations and inconsistency of the previously analyzed turbulence models. As a result
of this investigation, an approach to overcome these limitations is proposed. In Chapter 4, an innovative
continuous adjoint formulation for the wind farm layout optimization is formulated and implemented for
a 2D case. This formulation is first verified against traditional approaches for gradient computation and
then applied to optimize the layout of a 16-turbine wind farm. Chapter 6 presents instead preliminary
results of the developed adjoint formulation in 3D cases. These results fully demonstrate that this CFD
methodology can effectively optimize wind farm layouts with different wind farm configurations, wind
resource distributions and terrain topography. In Chapter 6, conclusions are drawn and future directions
are suggested.
Chapter 2
Analysis of Turbulence Models for
Wind Turbine Wake Simulations
The work presented in this chapter aims to compare in a consistent way the principal turbulence models
present in literature, namely the k − ε, k − ω, and Reynolds stress model, to introduce the SST k − ω
model as a innovative turbulence model for wind turbine simulations, and to investigate and assess the
influence of the different turbulence models on the results of the CFD simulations. The comparison is
made consistent by a proper adjustment of the turbulence model constants according to appropriate
experimental observations of atmospheric surface layer and wake flows. The assessment of the tur-
bulence models is conducted by comparing the CFD results with the publicly available experimental
measurements of the velocity field and turbulence quantities from two stand-alone wind turbines in the
Sexbierum and Nibe wind farms, respectively. Modifications of the derived turbulence model constants
are also investigated in order to improve agreement with experimental data.
The outline of the chapter is the following. In Sec. 2.1, we present the case studies that will be used
to test and validate the CFD model with the different turbulence models. The CFD methodology is
described in Sec. 2.2 along with an overview of turbulence models used to close the RANS equations.
Section 2.3 describes how the turbulence model constants have been reformulated for wind farm appli-
cations. In Sec. 2.4, we provide details about the numerical implementation and boundary conditions
of the CFD model. Section 2.5 presents the results obtained by RANS simulations with the different
turbulence models. Conclusions are summarized in Sec. 2.6.
16
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 17
Table 2.1: Wind turbine characteristics and wind conditions of Sexbierum and Nibe wind farms
Wind turbine D [m] H [m] Uinf [m/s] TIx [%] CT [-]Sexbierum 30.1 35 10 10 0.75Nibe 40 45 8.5 10 0.82
2.1 Case studies
The validation of the CFD model with the different turbulence closures and SBL equations is con-
ducted using the experimental data sets from the Sexbierum [36] and Nibe [151] wind farms. Table 2.1
summarizes the wind turbine characteristics and wind conditions.
2.1.1 Sexbierum wind farm
The Dutch Experimental Wind Farm at Sexbierum is located in the Northern part of The Netherlands at
approximately 4 km distance from the seashore. The wind farm is located in flat homogeneous terrain,
mainly grassland used by farmers. The wind farm has a total of 5.4 MW installed capacity consisting of
18 turbines of 300 kW rated power each. The wind turbines in the wind farm are HOLEC machines with
three WPS 30/3 blades, a rotor diameter of 30.1 m, and a hub height of 35 m. Performance curves are
reported in Fig. 2.1a. The campaign concerned measurement of the wind speed, turbulence and shear
stress behind a single wind turbine at distances of 2.5, 5.5 and 8 rotor diameters, respectively. The free
stream wind conditions at hub height were Uinf = 10 m/s and TIx = 10%. For these conditions, the
thrust coefficient was CT = 0.75.
2.1.2 Nibe wind farm
The Nibe wind farm is located on a coastal site near Aalborg in the norther Jutland, Denmark. It is
constituted by two machines (A and B) located 200 m apart from each other along an approximately
North-South axis, which runs parallel to the coast line. To the west there is a fetch of at least 6 km
over open, shallow water. On the landward site, the ground surrounding the site is flat, grass-covered,
and free of significant obstacles. The two wind turbines are almost identical, both with a rated power of
630 kW. The rotor diameter is 40 m, the hub height is 45 m. Performance curves are reported in Fig.
2.1b. The data examined here correspond to the turbine B operating alone, and measurements of wind
speed and turbulence are available behind the turbine at distances of 2.5, 4 and 7.5 rotor diameters,
respectively. The free stream wind conditions at hub height were Uinf = 8.5 m/s and TIx = 10%. For
these conditions, the thrust coefficient was estimated to be CT = 0.82.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 18
(a) Sexbierum wind turbine (b) Nibe wind turbine
Figure 2.1: Performance curves of the Sexbierum and Nibe wind turbines
2.2 CFD methodology
The simulation model is based on the Reynolds-averaged Navier-Stokes (RANS) equations for incom-
pressible, steady flows, which require additional turbulence modeling to solve the nonlinear Reynolds
stress term and to close the system of equations. The set of equations is then composed of the continuity
equation,
∂Ui∂xi
= 0, (2.1)
and the three momentum equations,
Uj∂Ui∂xj
= −1
ρ
∂p
∂xi+
∂
∂xj
[ν
(∂Ui∂xj
+∂Uj∂xi
)− uiuj
]+f
ρ, (2.2)
where Ui,j is the mean velocity component, p is the mean pressure, ρ and ν are the fluid density and
kinematic viscosity, respectively, f is the source term, and i, j are indexes over the coordinate directions.
The Reynolds stress term uiuj is computed with the transport equations for turbulence, whose number
depends on the particular choice of the turbulence model. OpenFOAM [153] is employed to solve this
set of equations, using a control-volume-based technique to transform the governing flow equations into
algebraic expressions that can be solved numerically. The discretization of the governing equations
is based on the second-order upwind scheme, which is applied for the interpolation of velocities and
turbulent quantities. The semi-implicit method for pressure-linked equations (SIMPLE) algorithms is
used to solve simultaneously the set of equations by an iterative scheme.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 19
2.2.1 Turbulence modeling
This section provides an overview of the turbulence models employed to close the RANS equations,
whose effect on the simulations will be discussed in the results section.
Standard k − ε model
The standard k−ε turbulence model was first proposed by Jones and Launder [92] and was subsequently
revised by Launder and Sharma [105] with the introduction of the currently used empirical constants.
It was the first two-equation model used in applied computational fluid dynamics and is still the most
widely used in many fields [125]. The model is based on the turbulent-viscosity hypothesis (Boussinesq
approximation) that relates the Reynolds stresses to the mean flow according to the following equation:
−uiuj = νt
(∂Ui∂xj
+∂Uj∂xi
)− 2
3kδij = 2νtSij −
2
3kδij , (2.3)
where k is the turbulence kinetic energy, Sij the mean strain-rate tensor, and νt is the eddy viscosity
computed as follows:
νt = Cµk2
ε. (2.4)
The turbulence kinetic energy, k, and turbulent dissipation rate, ε, are obtained from two transport
equations. The standard values of the model constants present in the k and ε equations were chosen in
order to impose certain experimental constraints and are the following: Cµ = 0.09, C1ε = 1.44, C2ε =
1.92, σk = 1, σε = 1.3. In spite of its broad rage of applicability and accurate results for simple flows,
the k−ε model has shown some limitations: it can be quite inaccurate for complex flows, in particular in
the presence of large adverse pressure gradients [166]. Also, particular near-wall treatments are usually
included since the model showed to not perform well for near-wall regions.
Standard k − ω model
Different formulations of the k−ω turbulence model were proposed in the past, but the standard model
adopted today is the one formulated by Wilcox [165], which has been more extensively tested than any
other. The model is based on the Boussinesq approximation, and the main difference with respect to
the k − ε model is the use of the specific dissipation rate (also called turbulence frequency), ω, in place
of the turbulent dissipation rate, ε. Two transport equations are use to calculate the value of k and ω,
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 20
whereas the eddy viscosity has the following definition:
νt =k
ω. (2.5)
The standard constants in the k and ω transport equations take the following values: β∗ = 0.09, β =
0.075, α = 0.556, σ∗ = 0.5, σ = 0.5.
A close similarity can be observed between the k − ε and the k − ω models when a transformation
is applied to the ω equation by adopting the definition of ω as ε/ (Cµk) and by using the following
transformed constants [46]:
T = 1/ω,
Cµ = β∗, C1ε = 1 + α,
C2ε = 1 + β/β∗, σε = 1/σ.
(2.6)
It can be seen that the values of the transformed constants are similar but not exactly equal to the
original k − ε values, mainly because of the calibration of the constants with different (but consistent)
experimental data. This transformation reproduces the standard ε model with an additional term Sω
which is defined as:
Sω =2
T(ν + σνt)
(|∇k|2
k− ∇k · ∇ε
ε
). (2.7)
This source term in the dissipation equation distinguishes the k − ε and the k − ω models and acts
mainly in the inner region of boundary layers (near walls). This characteristic helps to explain why the
k − ω model performs better than the k − ε model for boundary-layer flows, both in its treatment of
the viscous near-wall region and in its accounting for the effects of streamwise pressure gradient [125].
Two important limitations have however to be highlighted: the first is that the model showed problems
when dealing with non-turbulent free-stream boundaries so that particular (non-physical) boundary
conditions are usually required; the second is that it overpredicts the level of shear stress in adverse
pressure-gradient boundary layers [166].
SST k − ω model
The shear-stress transport (SST) k− ω turbulence model was formulated by Menter [109] and has been
found to be quite effective in predicting many aeronautical flows [46]. The reason for this is that it was
designed to yield the best behavior of the k− ε and the k−ω models: it retains the robust and accurate
formulation of the Wilcox k − ω model in the near wall region, and takes advantage of the freestream
independence of the k− ε model in the outer part of the boundary layer. A blending function takes care
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 21
of the switch between the two models according to the distance from a wall. The blending function F1
is designed to be one in the near wall region (leading to a k − ω model) and zero away from the surface
(leading to a k − ε model). The constants of the model are also calculated by interpolation of the two
original models as follows:
φ = F1φ1 + (1− F1)φ2. (2.8)
The constants of set 1 are from the k−ω model (except σk1 which is slightly different): β∗ = 0.09, β1 =
0.075, γ1 = 0.556, σk1 = 0.85, σω1 = 0.5. The constants of set 2 are from the k − ε model, derived
through Eq. 2.6: β∗ = 0.09, β2 = 0.0828, γ2 = 0.44, σk2 = 1, σω2 = 0.856.
The other important improvement introduced by Menter in the SST k − ω model with respect to
the parent models is in the shear-stress predictions in adverse pressure-gradient boundary layers. The
tendency to overestimate the shear stress is fixed by imposing a bound on the stress-intensity ratio,
|uiuj |/k. This ratio is often denoted a1 and in many flows is approximately equal to 0.3, with lower
values in adverse pressure gradients. The bound is introduced with a new definition of the eddy viscosity:
νt =a1k
max (a1ω; 2|Ωij |F2), (2.9)
where Ωij is the mean flow rotation tensor and F2 is a function that is one for boundary-layer flows and
zero for free-shear layers.
Reynolds stress model
In the Reynolds stress models, the individual Reynolds stresses are directly computed and consequently
the turbulent-viscosity hypothesis is not needed. Six transport equations take care of each Reynolds
stress. There exist different approaches to model the terms in the transport equations that have brought
about different RSMs: among the most used are the Launder-Reece-Rodi (LRR) model by Launder
et al. [104] and the Speziale-Sarkar-Gatski (SSG) model by Speziale et al. [146]. In this work it has
been chosen to use the Gibson-Launder (GB) model [60] which was developed and calibrated with the
purpose to accurately simulate atmospheric boundary layers. This model, as the other RSMs, has six
equations to compute each of the six Reynolds stresses and an equation for the turbulent dissipation
rate. The standard coefficients of this model are the following: Cµ = 0.09, C1ε = 1.44, C2ε = 1.92, σR =
0.8197, σε = 1.3, C1 = 1.8, C2 = 0.6, C ′1 = 0.5, C ′2 = 0.3. The first five coefficients are alike the ones
in the k − ε model, whereas the others are used to model different terms in the transport equations of
the Reynolds stresses.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 22
The RSM is potentially the most general and physically the most complete, since it calculates each
of the Reynolds stresses. For this reason, it has also the potential to accurately predict anisotropic
turbulent flows, which is an important advantage compared to the eddy viscosity models limited by the
Boussinesq approximation and the assumption of isotropic flows. On the other hand, the RSM requires
significantly more computational time and CPU memory compared to the simpler two-equation models.
2.2.2 Actuator disk modeling
The wind turbine has been modeled as an actuator disk whose main feature is to apply a distributed
force, defined as axial momentum source, F , over a cylindrical volume, defined by the rotor swept area.
The actuator disk model, even though it does not provide a detailed description of the wind turbine
geometry, is able to capture adequately the wake effect generated by the wind turbine and to compute its
power output, as required for the employment in wind turbine and wind farm simulations [3, 133, 145].
From the definition of thrust coefficient, it can be derived that the axial force is a function of the reference
wind speed:
F =1
2ρπD2
4CTU
2inf , (2.10)
where ρ is the air density, D is the rotor diameter, Uinf is the upstream wind speed, and CT is the
thrust coefficient, obtained from the thrust coefficient curve of the wind turbine at the specified Uinf .
The power generated can be computed as the product of the axial force and the average velocity over
the actuator disk volume V :
P = FUx = F1
V
∫V
UxdV. (2.11)
2.2.3 Surface boundary layer modeling
The simulations of wind turbines have necessary to take into account the wind conditions and charac-
teristics usually encountered in real flows, which are referred to as atmospheric boundary layers (ABL).
The starting point is the characterization of the mean wind shear profile. For an homogeneous and
stationary flow, the shear profile can be described, according to Panofsky and Dutton [115], as
∂Ux∂z
=u∗κl, (2.12)
where U is the mean wind speed, z is the height above ground, u∗ is the local friction velocity, l is the
local length scale, and κ is the von Karman constant (≈ 0.4). Within the ABL, the friction velocity
is expected to decrease with z, vanishing at the edge of the ABL. The expression to account for this
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 23
variation is the following:
u∗ = u∗0
(1− z
zmax
)α, (2.13)
where zmax is the height of the ABL and α depends on the state of the boundary layer, ranging from
2/3 to 3/2 [69]. The height of an ABL can extend up to some kilometers, depending on the atmospheric
stability [115]. The first 10% of the ABL, which is usually called the surface boundary layer (SBL),
can be approximated by a constant friction velocity equal to u∗0. Also, in the SBL, the length scale is
assumed equal to the height (lSL = z).
The length scale, l, is influenced by the atmospheric stability, which describes the combined effects
of mechanical turbulence and heat convection, and the height of the ABL. Three classes of atmospheric
stability can be defined: unstable, neutral, and stable conditions. The case studies analyzed in this
work will take into account only the surface boundary layer in neutral conditions, which is a reasonable
approximation up to a height of at least 100m [115]. Under these hypothesis, a logarithmic velocity
profile can be derived from Eq. 2.12 by integration:
Ux =u∗0κln
(z
z0
)(2.14)
where z0 is the surface roughness length. This parameter is solely used for describing the wind speed
profile, in fact, it is not a physical length, but rather a length scale representing the roughness of the
ground (reference values for different terrain types can be found in Ref. [115]). The friction velocity can
be calculated once a reference velocity is known at a specific height:
u∗0 =κUx,ref
ln(zrefz0
) . (2.15)
Introducing the equation for the wind profile into the turbulence models, it can be derived that the
turbulence kinetic energy, turbulent dissipation rate, and specific dissipation rate have the following
expressions, respectively [134, 127]:
k =u2∗0√Cµ
, ε =u3∗0κz
, ω =u∗0√β∗κz
. (2.16)
Average values for the Reynolds stresses were extrapolated by Panofsky and Dutton [115] from
different experimental data sets. The values of the Reynolds stresses reflect the anysotropic nature
of the atmospheric boundary layer and these are given as a function of the friction velocity: uxux =
(2.39u∗0)2, uyuy = (1.92u∗0)
2, uzuz = (1.25u∗0)
2, uxuz = −u2
∗0, uxuy = uyuz = 0. From the value
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 24
of the xx-Reynolds stress, Prospathopoulos et al. [127] derived a useful relation between the surface
roughness length and the streamwise turbulence intensity, TIx, which is a common parameter used to
characterize the flow turbulent conditions. Following the definition of turbulence intensity, it is possible
to write:
TIx =ux
Ux,ref= 2.39
u∗0Ux,ref
. (2.17)
Introducing Eq. 2.15 on the right hand side of Eq. 2.17, it is possible to rearrange the equation in order
to find the value of the surface roughness length as a function of the turbulence intensity:
z0 = zrefexp
(−0.980
TIx
). (2.18)
Starting from the definition of turbulence kinetic energy, it is also straightforward to derive a relation
between the turbulence kinetic energy and the streamwise turbulence intensity:
k =1
2(uxux + uyuy + uzuz) = 5.48u2
∗0 = 0.959TI2xU
2x,ref . (2.19)
2.3 Turbulence model constants for SBL and wind turbine sim-
ulations
The standard coefficients of the turbulence models previously described have been calibrated on several
and various experimental data sets, and therefore represent a compromise to give the best performance
for a range of flows [125]. The conditions that a wind turbine simulation has to deal with represent
a particular subset of the entire range of the turbulence model applicability. In particular, two main
phenomena occurring in this application can be identified: the SBL and the wake generated by the
wind turbine that propagates in a SBL. Taking this into account, it is possible to reduce the range
of applicability of the turbulence models to the particular flow situations previously mentioned and
recalibrate the turbulence model constants with more convenient measurements from SBL and wake
flows. Crespo et al. [43] and Prospathopoulos et al. [127] were the first to propose a modification
of the constants for the k − ε and the k − ω models, respectively, for wind turbine simulation is SBL
flows. A consistent adjustment of the coefficients for the aforementioned turbulence models has not been
formulated yet and it is proposed in this study in accordance with previous works and convenient data
sets for wind turbine simulations. Furthermore, modifications of the derived turbulence model constants
are also investigated in order to improve agreement with experimental data considering different values of
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 25
turbulence decay. In total, three sets of coefficients (one baseline and two modifications) are determined
and tested on wind turbine simulations.
The first coefficient analyzed is Cµ, equivalent to β∗, which appears in the definition of the turbu-
lent viscosity (Eq. 2.4). The standard value was determined according to measurements from simple
turbulent shear flows and the logarithmic region of boundary layers: in these particular situations it is
possible to demonstrate that [125]
Cµ =
(|uiuj |k
)2
. (2.20)
The stress-intensity ratio was measured to be approximately 0.3 in those flows and Cµ was calculated
accordingly, giving the standard value of 0.09. When dealing with SBL, the stress-intensity ratio assumes,
as shown in Sec. 2.2.3, the following value:
|uiuj |k
=u2∗0k
= 0.182. (2.21)
Therefore, the value of Cµ is changed in this work to 0.0333, as also reported in Ref. [43, 127]. On
the other hand, there are no specific measurements from wind turbine wake flows that can support
the validity of this coefficient also in wind turbine wake simulations. Nevertheless, the value of the
stress-intensity ratio is supposed to be valid also in the wake of wind turbines operating in SBL flows,
based on the consideration that turbulence “remembers” the upstream conditions much longer than the
average wind speed. In particular, the anisotropy present in the SBL is expected to be retained at a
some level also in wind turbine wakes, implying that the proposed value can be a good approximation
for both cases. Beside this consideration, Durbin and Petterson [46], in a more general discussion on
the applicability of the turbulence models, suggested that the value of Cµ should be adjusted based on
more recent experimental data, proposing a value close to the one introduced for SBL and wake flows.
The second coefficient analyzed is C2ε (equivalent to β = (C2ε − 1)β∗), which controls the decaying
of turbulence. It is possible to show that in the particular case of homogeneous, isotropic turbulence, the
decaying of turbulence is controlled by a power-law solution [125]. The decay exponent, n, characterizing
the solution is correlated to the C2ε coefficient according to the following relation:
C2ε =n+ 1
n. (2.22)
Measurements of grid turbulence in wind tunnels give a value for n in the range of 1.3 ± 0.2 [46]. The
standard values of the k− ε and k−ω models used a value of 1.09 and 1.2, respectively. The turbulence
decay is expected to behave in a similar manner also in the SBL and wake flows, and therefore the
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 26
value of the decay exponent can be considered to fall in the same range. However, Prospathopoulos et
al. [128] suggested that the exponent could be lower for the anisotropic SBL flow. They tested that
assumption on a standard k − ω model, providing some improvements to the simulation predictions.
Following their approach, three values were chosen in this work: 1.2 (the baseline one), 0.9, and 0.6 (the
two modifications). The turbulence model constants were computed accordingly in order to guarantee
consistency.
The coefficient C1ε (equivalent to α = C1ε−1), for given values of Cµ and C2ε, controls the spreading
rate of free-shear flows [46]. The standard value was chosen so that the basic model would give a
reasonable value for the spreading rate in mixing layers. What actually determines the spreading rate
of free-shear flows in numerical simulations is the difference C2ε −C1ε: a difference of about 0.45− 0.50
gives a good estimation of this quantity and this is how the standard coefficients were determined [46].
Mixing layers are an occurring phenomenon in the wakes of wind turbine and the constraint previously
mentioned has to be taken into account. This was not the case when the modifications of the standard
coefficients were first proposed in Ref. [43, 127] for SBL, and a different modification is proposed here
on the basis of the aforementioned constraint. Given the values of of Cµ and C2ε previously determined,
values of C1ε are determined according to the difference C2ε − C1ε.
The value of the coefficient σε (equivalent to 1/σ) can be established by examining the log region in
boundary layers. Under this condition the following equation must hold [125]:
κ2 = σε√Cµ (C2ε − C1ε) (2.23)
from which it is possible to calculate the value for σε, given the other coefficients already determined
and the value of the von Karman constant.
The last coefficient that has to be discussed is σk (equivalent to 1/σ∗). Differently from the other
coefficients, there are no particular cases with whom its value can be determined. In fact, for the standard
k − ε model its value is set to 1, whereas for the k − ω model its value is kept equal to σ, as a tradeoff
among a broad range of experimental observations [166]. This second approach has been chosen in this
work.
The final sets of coefficients for each turbulence model are summarized in Tab. 2.2, 2.3, and 2.4 for
the baseline and modifications, respectively.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 27
Table 2.2: Baseline turbulence model constants derived for a turbulence decay exponent of 1.2
Turbulence model Turbulence constantsk − ε Cµ = 0.0333 C1ε = 1.42 C2ε = 1.83 σk = 2.25 σε = 2.25k − ω β∗ = 0.0333 α = 0.42 β = 0.0277 σ∗ = 0.45 σ = 0.45
SST k − ω β∗ = 0.0333γ1 = 0.42 β1 = 0.0277 σk1 = 0.45 σω1 = 0.45γ2 = 0.42 β2 = 0.0277 σk2 = 0.45 σω2 = 0.45
RSM Cµ = 0.0333C1ε = 1.42 C2ε = 1.83 σR = 0.8197 σε = 2.25C1 = 1.8 C2 = 0.6 C ′1 = 0.5 C ′2 = 0.3
Table 2.3: Modified turbulence model constants derived for a turbulence decay exponent of 0.9
Turbulence model Turbulence constantsk − ε Cµ = 0.0333 C1ε = 1.65 C2ε = 2.11 σk = 2.0 σε = 2.0k − ω β∗ = 0.0333 α = 0.65 β = 0.0367 σ∗ = 0.5 σ = 0.5
SST k − ω β∗ = 0.0333γ1 = 0.65 β1 = 0.0367 σk1 = 0.5 σω1 = 0.5γ2 = 0.65 β2 = 0.0367 σk2 = 0.5 σω2 = 0.5
RSM Cµ = 0.0333C1ε = 1.65 C2ε = 2.11 σR = 0.8197 σε = 2.0C1 = 1.8 C2 = 0.6 C ′1 = 0.5 C ′2 = 0.3
Table 2.4: Modified turbulence model constants derived for a turbulence decay exponent of 0.6
Turbulence model Turbulence constantsk − ε Cµ = 0.0333 C1ε = 2.16 C2ε = 2.67 σk = 1.84 σε = 1.84k − ω β∗ = 0.0333 α = 1.16 β = 0.055 σ∗ = 0.54 σ = 0.54
SST k − ω β∗ = 0.0333γ1 = 1.16 β1 = 0.055 σk1 = 0.54 σω1 = 0.54γ2 = 1.16 β2 = 0.055 σk2 = 0.54 σω2 = 0.54
RSM Cµ = 0.0333C1ε = 2.16 C2ε = 2.67 σR = 0.8197 σε = 1.84C1 = 1.8 C2 = 0.6 C ′1 = 0.5 C ′2 = 0.3
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 28
(a) Top view
(b) Lateral view (c) Front view
Figure 2.2: Schematic layouts of the domain
2.4 Numerical setup
The computational domain and mesh of the two cases were generated with blockMesh and snappy-
HexMesh, two mesh utilities of OpenFOAM for mesh generation and refinement, respectively. The
Cartesian coordinate system is defined with x, y, and z being respectively the streamwise, lateral and
vertical directions. Figure 2.2 illustrates schematic layouts of the domain. The dimensions of the domain
are a function of the rotor diameter. The domain includes the actuator disk region and a refined region
surrounding the disk with a double mesh resolution in order to capture the most significant gradients in
the flow field.
The dimensions of the domain were carefully determined in order not to influence the flow-field
solution and to avoid useless domain regions. In particular, larger dimensions were tested and were
subsequently decreased according to the following rule: a smaller domain is accepted only if the flow
solution does not vary by more that 1% with respect to the largest domain tested (with dimensions
as double as the ones presented here), ideally considered as the solution of an infinite domain. The
dimensions that need a detailed discussion are the distance between the inlet and the wind turbine, and
the height of the domain. In the first case, there has to be enough distance before the wind turbine to
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 29
Figure 2.3: Schematic of the boundary conditions used in the simulations.
allow the flow field perturbed by the wind turbine to propagate upstream without being influences by the
inlet boundary conditions. A distance of 3D was found to correctly satisfy this condition. In the second
case, a too short domain height would cause flow blockage and would promote a faster, non-physical
wake recovery. A height of 5D was determined according to these considerations and to practical wind
engineering reference guideline, which suggests a value of 5H, being H the height of any obstacle (in this
case the wind turbine rotor). The other dimensions were basically chosen in order to have the flow-field
solution as far as the experimental measurements are available for comparison.
For the solution of the RANS equations, the convergence criterion was set so that the residuals of
all the equations were below 10−5. A stricter convergence criterion was found to provide a negligible
difference on the solution.
2.4.1 Boundary conditions
The inlet boundary condition was defined with the equations relative to the SBL. Given the flow char-
acteristics, i.e., Uinf , TIx, and H, the values for z0 and u∗0 were derived with Eqs. 2.15 and 2.18. The
velocity, turbulence kinetic energy (or Reynolds stresses), and turbulence dissipation rate (or specific
dissipation rate) were then prescribed according to Eqs. 2.14 and 2.16, depending on the turbulence
model used. The outlet boundary condition was defined as a pressure outlet, with zero gradient for the
velocity and turbulence quantities. The top boundary condition was defined by prescribing constant
values of velocity, turbulence kinetic energy (or Reynolds stresses), and turbulence dissipation rate (or
specific dissipation rate) at the domain height, whereas zero gradient was set for the pressure. The side
boundary condition was defined as zero gradient for all the variables. The ground was defined as a rough
wall, with wall functions that took care of the turbulence quantities. A schematic of these boundary
condition is illustrated in Fig. 2.3.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 30
2.4.2 Wall functions
A proper treatment of the ground surface is essential to correctly simulate SBL flows. A general require-
ment of CFD simulations consists in having a very fine mesh in proximity of any surface in order to
capture the large velocity gradients and to compute a correct wall shear stress. In SBL simulations, this
is impossible because the surface roughness prevents a full solution of the boundary layers. In fact, the
first wall-adjacent cell should be at least the double of the surface roughness, which is in conflict with
the requirement of a high mesh resolution. In these cases, wall functions based on log-law boundary
layers for rough walls are used to calculate the turbulent viscosity and wall shear stress. Blocken et al.
[19] discussed the problem of the wall treatment for these particular flows, suggesting remedies when the
simulations are run with Ansys Fluent or CFX (which adopt wall functions based on an equivalent sand-
grain roughness, kS , equivalent to approximately 30z0). OpenFOAM, differently from the previously
mentioned CFD packages, has a wall function which is based on the actual surface roughness length, z0,
and which is derived from Eq. 2.14. This was used in the present work and allowed to have a higher
resolution close to the wall than the one reached with Ansys Fluent and CFX. A value of approximately
0.01D for the first cell at the wall was found to guarantee a correct simulation of SBL flows, achieving
horizontally homogeneity (i.e., zero streamwise gradients) of the SBL in an empty domain. This value
is also consistent with other works present in literature [128, 24].
2.4.3 Mesh sensitivity analysis
A mesh sensitivity analysis was conducted in order to reduce spatial discretization errors in the CFD
simulations and to guarantee a mesh-independent solution. Different grid resolutions were tested for
each turbulence model and the relative error of the designated flow variables was measured. The global
grid spacing was decreased progressively by a factor of 1.5, starting from the coarsest case where the
global spacing was 0.225D. The resolution in the refined region surrounding the wind turbine was as
double as the global resolution. In the region close to the wall, the resolution was also higher: the first
cell at the wall was fixed to a height of 0.01D and this value was progressively increased moving away
from the wall, up to the size given by the global resolution. The height of the region where this mesh
refinement took place was 0.5D.
Given the aforementioned considerations, four different global grid spacings were tested, namely
0.225D, 0.150D, 0.100D, and 0.067D (see Tab. 2.5 and 2.6). The values that were monitoread are the
rotor normal average velocity and the streamwise velocity and turbulence quantities at two locations
downstream the wind turbine, namely 2.5D and 8D for the Sexbierum case, and 2.5D and 7.5D for the
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 31
Table 2.5: Mesh sensitivity analysis for the Sexbierum case. The monitored values reported in the tableare the rotor normal average velocity and the streamwise velocity at 2.5D downstream. For each of thesetwo quantities, the value obtained with each of the turbulence models is reported.
Rotor normal average velocity [m/s] Streamwise velocity at 2.5D [m/s]Grid resolution [D] k − ε k − ω SST k − ω RSM k − ε k − ω SST k − ω RSM0.225 7.82 7.86 7.26 7.35 8.13 8.24 6.05 5.560.150 7.89 7.93 7.38 7.46 8.11 8.22 5.86 5.580.100 7.92 7.97 7.44 7.48 8.10 8.22 5.73 5.530.067 7.99 8.02 7.51 7.53 8.08 8.20 5.69 5.58
Table 2.6: Mesh sensitivity analysis for the Nibe case. The monitored values reported in the table arethe rotor normal average velocity and the streamwise velocity at 2.5D downstream. For each of thesetwo quantities, the value obtained with each of the turbulence models is reported.
Rotor normal average velocity [m/s] Streamwise velocity at 2.5D [m/s]Grid resolution [D] k − ε k − ω SST k − ω RSM k − ε k − ω SST k − ω RSM0.225 5.84 5.92 3.95 4.09 6.69 6.89 4.15 3.810.150 5.92 6.00 4.37 4.65 6.68 6.88 3.81 3.720.100 6.39 6.44 5.75 5.82 6.66 6.84 3.78 3.830.067 6.42 6.49 5.80 5.87 6.66 6.83 3.77 3.85
Nibe case. The number of cells obtained for the different resolutions was approximately 40·, 130·, 400·,
and 1300 · 103, respectively. A global grid spacing of 0.1D was found to guarantee a mesh independent
solution: the percentage difference of the calculated velocities and turbulence quantities for all the
turbulence models with respect to a lower grid spacing (0.067D) was found to be less than 1%. This
result is consistent with other computational studies on wind turbine wake simulations [24, 128, 158].
2.5 Results and discussion
This section includes the results obtained from the developed CFD wake model when applied to the
stand-alone Sexbierum and Nibe wind turbine cases. The simulated wind speed and turbulent quantities
were compared with the real wind turbine measurements in order to assess the implemented turbulence
models and the CFD model as a whole. Root-mean-square errors (RMSE) were calculated between the
experimental data and the simulations results and are reported in Tab. 2.7. The simulations were solved
with simpleFoam, the OpenFOAM steady-state solver for incompressible, turbulent flows, that run on
a Inter(R) Core(TM) i7-4790 computer with 3.60 Ghz clock time using 6 processors. The number of
iterations required to reach the convergence of the solution was about 400 for the k−ε and k−ω models,
300 for the SST k−ω model, and 800 for the RSM. The computational time required for the simulations
to converge ranged from approximately 20 minutes for the SST k−ω model to 40 minutes for th RSM.
Figures 2.4, 2.5, 2.6, and 2.7 show the normalized wind speed and the turbulence kinetic energy
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 32
downstream the Sexbierum wind turbine as a function of the wind direction. The comparison with ex-
perimental data was conducted at three downstream locations, namely 2.5D, 5.5D, and 8D downstream
the wind turbine, in order to assess the numerical results obtained with the four turbulence models. The
wind direction refers to relative direction of the incoming flow where 0 indicates the direction behind
the center of the rotor at which the maximum wind speed deficit is expected.
With regard to the results for the baseline coefficients, the wind speed was captured well by the
SST k − ω and Reynolds stress models for the three locations, but it was highly overestimated by the
k − ε and k − ω models, especially at 2.5D downstream where the RMSEs were the highest (0.1859
and 0.1936, respectively). This overestimation is consistent with previous works that highlighted the
limitations of these two models [132, 128]. The reason of the failure is very likely caused by the incorrect
prediction of the eddy viscosity in situations of adverse pressure gradients, such as the one experienced in
the near wake of the wind turbine. Indeed, the results with the SST k−ω model, whose eddy viscosity
is bounded to prevent the aforementioned behavior, were accurate and very similar to the predictions of
the RSM, which does not rely on the the turbulent-viscosity hypothesis.
Similar results can be observed for the turbulence kinetic energy in the Sexbierum case. The k − ε
and k − ω models were unable to predict the peaks of turbulence kinetic energy generated by the tip
vortexes which are present in the near wake of a wind turbine. Further downstream, the turbulence
kinetic energy profile was more homogeneous and the predictions of the two models were improved. The
SST k − ω and Reynolds stress models provided a turbulence kinetic energy profile which was similar
to the experimental data but the predicted value was slightly underestimated. Also in this case, their
predictions improved in the far wake providing a good agreement with the experimental data.
Figures 2.8, 2.9, 2.10, and 2.11 show the normalized wind speed and the turbulence intensity down-
stream the Nibe wind turbine as a function of the wind direction. The streamwise turbulence intensity
could not be computed directly from the eddy-viscosity CFD simulations (k− ε, k−ω and SST k−ω),
but was instead obtained with the inverse of Eq. 2.19 assuming that the anisotropy present in the SBL is
retained also in the wind turbine wake. Similarly to the previous case, the comparison with experimental
data was conducted at three downstream locations, namely 2.5D, 4D, and 7.5D downstream the wind
turbine.
The prediction of wind speed in the Nibe case by the baseline turbulence models presented similar
characteristics to the previous case. At the location 2.5D downstream the wind turbine the results
provided by the SST k−ω and Reynolds stress models matched very well the experimental observations
(RMSEs of 0.0614 and 0.0510, respectively), whereas the agreement was not as good for the locations
further downstream where an underestimation of the wind speed was observed. This underestimation
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 33
Table 2.7: Root-mean-square errors (RMSE) between the experimental data and the simulations resultswhen considering the wind direction range between -30 and 30. The RMSEs are classified by case(Sexbierum and Nibe), by quantity of interest (normalized wind speed (NWS), normalized turbulencekinetic energy (NTKE), and turbulence intensity (TI)), by downstream distance, and by turbulencemodel.
k − ε k − ωWind Turbine Quantity Distance baseline 1 2 baseline 1 2
Sexbierum
NWS2.5D 0.1859 0.1691 0.1328 0.1936 0.1796 0.14805.5D 0.0730 0.0656 0.0502 0.0804 0.0747 0.06108D 0.0545 0.0510 0.0449 0.0603 0.0577 0.0518
NTKE2.5D 0.0114 0.0116 0.0121 0.0114 0.0115 0.01185.5D 0.0044 0.0046 0.0050 0.0044 0.0045 0.00488D 0.0042 0.0042 0.0038 0.0042 0.0041 0.0040
Nibe
NWS2.5D 0.1848 0.1625 0.1119 0.1936 0.1757 0.13244D 0.0683 0.0560 0.0386 0.0738 0.0641 0.04287.5D 0.0453 0.0425 0.0424 0.0468 0.0439 0.0394
TI2.5D 0.0300 0.0282 0.0190 0.0301 0.0290 0.02234D 0.0239 0.0233 0.0182 0.0236 0.0235 0.02067.5D 0.0217 0.0210 0.0180 0.0215 0.0212 0.0195
spaceSST k − ω RSM
Wind Turbine Quantity Distance baseline 1 2 baseline 1 2
Sexbierum
NWS2.5D 0.0947 0.0916 0.0878 0.0797 0.0794 0.07895.5D 0.0468 0.0512 0.0601 0.0462 0.0436 0.04278D 0.0480 0.0514 0.0584 0.0431 0.0419 0.0425
NTKE2.5D 0.0148 0.0155 0.0169 0.0149 0.0147 0.01455.5D 0.0057 0.0063 0.0073 0.0045 0.0047 0.00538D 0.0038 0.0037 0.0040 0.0036 0.0035 0.0034
Nibe
NWS2.5D 0.0614 0.0568 0.0531 0.0510 0.0496 0.04754D 0.0619 0.0752 0.0912 0.0776 0.0730 0.07057.5D 0.0505 0.0595 0.0723 0.0435 0.0417 0.0440
TI2.5D 0.0202 0.0241 0.0313 0.0147 0.0141 0.01374D 0.0149 0.0157 0.0207 0.0182 0.0176 0.01297.5D 0.0163 0.0147 0.0146 0.0208 0.0178 0.0137
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 34
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
(d) 2.5D downstream (e) 5.5D downstream (f) 8D downstream
Figure 2.4: Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as afunction of wind direction for the k − ε model with the baseline and modified sets of coefficients
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
(d) 2.5D downstream (e) 5.5D downstream (f) 8D downstream
Figure 2.5: Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as afunction of wind direction for the k − ω model with the baseline and modified sets of coefficients
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 35
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
(d) 2.5D downstream (e) 5.5D downstream (f) 8D downstream
Figure 2.6: Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as afunction of wind direction for the SST k − ω model with the baseline and modified sets of coefficients
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
(d) 2.5D downstream (e) 5.5D downstream (f) 8D downstream
Figure 2.7: Wind speed and turbulence kinetic energy downstream the Sexbierum wind turbine as afunction of wind direction for the RSM with the baseline and modified sets of coefficients
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 36
of the far-wake velocity is likely caused by unsteady phenomena (meandering of the wake) that were
not taken into account in the simulations. The k − ε and k − ω models, instead, provided a wind speed
significantly higher than the observed (the highest RMSEs were 0.1848 and 0.1936, respectively).
Focusing on the turbulence intensity provided by the baseline turbulence models, it is possible to see
that the k − ε and k − ω models exhibited the same incorrect behavior as previously discussed. The
predicted turbulence intensity profile did not show the characteristic peaks in the near wake of the wind
turbine, and the predicted values were also generally higher that the experimental data for all the three
locations. A much better agreement was observed using the SST k−ω and Reynolds stress models, both
in terms of intensity and profile. The similar values of turbulence intensity obtained by the SST k − ω
and Reynolds stress models supports the assumption made to calculate it. A remark has to be made
on the low level of turbulence intensity observed experimentally for wind directions higher than 20
(right side of the figures): winds coming from those directions experience open, shallow water and are
characterized by lower turbulence intensity which was not taken into account in the simulations.
The modified sets of turbulence constants, determined following the proposition of Prospathopoulos
et al. [128], had the effect of decreasing the wind speed and the wind speed recovery. This is particularly
evident for the k−ε and k−ω models, whose predictions are improved with respect to the baseline set of
coefficients in the two cases analyzed. The highest RMSEs decreased respectively to 0.1328 and 0.1480
for the Sexbierum case and to 0.1119 and 0.1324 for the Nibe case. The improvement was even more
evident for the other locations. This trend suggests that decreasing the decay exponent is beneficial
for the k − ε and k − ω models. On the other hand, the effect of decreasing the decay exponent was
deleterious on the predictions of the SST k − ω model, especially for the locations at 5.5D and 8D for
the Sexbierum case, and 4D and 7.5D for the Nibe case. No significant effect was instead observed for
the prediction of the RSM, where the results changed negligibly.
These modified sets of turbulence constants influenced also the turbulence quantities. In particular,
it is possible to notice that the predictions of the k − ε and k − ω models were improved with respect
to the models using the baseline coefficients: the turbulence kinetic energy in the Sexbierum case and
the turbulence intensity in the Nibe case showed the characteristic peaks in the near wake of the wind
turbines. Instead, this influence was not beneficial for the SST k − ω model, whose results were more
inaccurate. With regard to the RSM, no significant effect was observed as for the wind speed.
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 37
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
(d) 2.5D downstream (e) 4D downstream (f) 7.5D downstream
Figure 2.8: Wind speed and turbulence intensity downstream the Nibe wind turbine as a function ofwind direction for the k − ε model with the baseline and modified sets of coefficients
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
(d) 2.5D downstream (e) 4D downstream (f) 7.5D downstream
Figure 2.9: Wind speed and turbulence intensity downstream the Nibe wind turbine as a function ofwind direction for the k − ω model with the baseline and modified sets of coefficients
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 38
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
(d) 2.5D downstream (e) 4D downstream (f) 7.5D downstream
Figure 2.10: Wind speed and turbulence intensity downstream the Nibe wind turbine as a function ofwind direction for the SST k − ω model with the baseline and modified sets of coefficients
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
(d) 2.5D downstream (e) 4D downstream (f) 7.5D downstream
Figure 2.11: Wind speed and turbulence intensity downstream the Nibe wind turbine as a function ofwind direction for the RSM with the baseline and modified sets of coefficients
Chapter 2. Analysis of Turbulence Models for Wind Turbine Wake Simulations 39
2.6 Conclusions
The present study was conducted in order to compare in a consistent way the principal turbulence models
present in literature, namely the k−ε, k−ω, and Reynolds stress model, to introduce the SST k−ω model
as a innovative turbulence model for wind turbine simulations, and to investigate and assess the influence
of the different turbulence models on the results of the CFD simulations. The turbulence models were
implemented in simulations of two stand-alone wind turbines modeled with the constant-distribution
actuator disk approach. The wind turbines operated in atmospheric environment which was modeled
with the atmospheric surface layer theory. Consistent turbulence model constants for atmospheric surface
layer and wake flows were derived according to appropriate experimental observations.
The results considered in this study included quantities such as wind speed, turbulence kinetic energy
and turbulence intensity in the wake region of the two stand-alone turbines. The results showed that
the SST k − ω model performed as good as the the RSM, which is recognized as the most complete
model with general applicability. The results obtained with these two models and with the baseline set
of coefficients matched quite accurately the experimental observation, both in terms of wind speed and
turbulence quantities. On the other hand, the simulations using the k − ε and k − ω models provided
poor predictions of wake flows, as already documented in literature.
Modified sets of coefficients were also investigated in order to improve agreement with experimental
data. These sets of coefficients improved the predictions of the k−ε and k−ω models, which were however
not as good as the predictions from the baseline SST k−ω and RSM. The effect of the modified sets of
coefficients on these latter models was not effective, and was even deleterious for the SST k − ω.
From the results of this study it is possible to conclude that the SST k−ω can be used as an effective
turbulence model for wind turbine simulations without any particular modification of its coefficients. Its
results were showed to be similar to those of the RSM model but obtained at a much faster computation
time.
Chapter 3
Wind Farm Simulations
incorporating Wind Direction
Uncertainty
In the present chapter, we aim to investigate the limitations and inconsistency of the RANS wake models
and to propose an innovative approach to overcome them. A CFD model was initially developed using
the actuator disk technique to simulate the wind turbines and the surface boundary layer approximation
to simulate the ambient conditions. The developed CFD model was implemented to simulate three
different wind farms, namely, Sexbierum, Nibe, and Horns Rev, with publicly available experimental
measurements. The main turbulence models present in literature and available in common CFD software
packages, namely, the k− ε, k−ω, SST k−ω and Reynolds stress models, were used to close the RANS
equations and their results compared. Following the same approach of other studies (e.g., [24, 41,
133, 127, 128, 143]), the validation of the developed CFD model with different turbulence closures was
conducted by comparing the CFD predictions with both observed wind speeds and power production of
the selected wind farms.
To account for the wind direction variability, we subsequently introduced a method to model the wind
direction uncertainty using simulation ensembles, i.e., a set of CFD results for different wind directions
is post-processed to generate a single CFD prediction. Our results showed that RANS simulations using
the SST k − ω and Reynolds stress models were consistently more accurate when considering wind
speeds and power production in the wake region of the considered wind farms. These are therefore
40
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 41
to be preferred over the k − ε and k − ω models. The result also showed that the proposed approach
for considering wind direction uncertainty was able to overcome the limitations and inconsistency of
previous works. Overall, this method improved the agreement between the experimental data and CFD
models with the suggested turbulence closures by accounting for the uncertainty in the wind direction
reported in the data sets.
The outline of the chapter is the following. In Sec. 3.1, we present the case studies that will be used to
test and validate the CFD model and the innovative post-processing technique. The CFD methodology
is described in Sec. 3.2 along with an overview of turbulence models used to close the RANS equations.
Section 3.3 describes the modeling assumptions for the wind turbines and the surface boundary layer that
are integrated in the CFD model. In Sec. 3.4, we provide details about the numerical implementation
and boundary conditions of the CFD model. The innovative post-post-processing technique, called in
this paper MUSE (Modeling Uncertainty with Simulation Ensembles), is presented in Sec 3.5. Section
3.6 compares the results obtained directly from the RANS simulations and the results obtained after the
averaging process with the MUSE method. Conclusions are summarized in Sec. 3.7.
3.1 Case studies
The validation of the proposed approach for CFD models, which will be described in the following
sections, was conducted using the experimental data sets from the Sexbierum [36], Nibe [151], and
Horns Rev [72] wind farms. Table 3.1 summarizes the wind turbine characteristics and wind conditions.
3.1.1 Sexbierum wind farm
The Dutch Experimental Wind Farm at Sexbierum is located in the Northern part of The Netherlands at
approximately 4 km distance from the seashore. The wind farm is located in flat homogeneous terrain,
mainly grassland used by farmers. The wind farm has a total of 5.4 MW installed capacity consisting of
18 turbines of 300 kW rated power each. The wind turbines in the wind farm are HOLEC machines with
three WPS 30/3 blades, a rotor diameter of 30.1 m, and a hub height of 35 m. Performance curves are
reported in Fig. 3.1a. The campaign concerned measurement of the wind speed, turbulence and shear
stress behind a single wind turbine at distances of 2.5, 5.5 and 8 rotor diameters, respectively. The free
stream wind conditions at hub height were Uinf = 10 m/s and TIx = 10%. For these conditions, the
thrust coefficient was CT = 0.75. The wind direction bin width was 2.5.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 42
Table 3.1: Wind turbine characteristics and wind conditions of Sexbierum and Nibe wind farms
Wind farm D [m] H [m] Uinf [m/s] TIx [%] CT [-]Sexbierum 30.1 35 10 10 0.75Nibe 40 45 8.5 10 0.82Horns Rev 80 70 8 8 0.80
3.1.2 Nibe wind farm
The Nibe wind farm is located on a coastal site near Aalborg in the norther Jutland, Denmark. It is
constituted by two machines (A and B) located 200 m apart from each other along an approximately
North-South axis, which runs parallel to the coast line. To the west there is a fetch of at least 6 km
over open, shallow water. On the landward site, the ground surrounding the site is flat, grass-covered,
and free of significant obstacles. The two wind turbines are almost identical, both with a rated power of
630 kW. The rotor diameter is 40 m, the hub height is 45 m. Performance curves are reported in Fig.
3.1b. The data examined here correspond to the turbine B operating alone, and measurements of wind
speed and turbulence are available behind the turbine at distances of 2.5, 4 and 7.5 rotor diameters,
respectively. The free stream wind conditions at hub height were Uinf = 8.5 m/s and TIx = 10%. For
these conditions, the thrust coefficient was estimated to be CT = 0.82. The wind direction bin width
was 2.5.
3.1.3 Horns Rev wind farm
The Horns Rev wind farm is located 14 km from the west coast of Denmark. It has a rated capacity
of 160 MW comprising 80 wind turbines, which are arranged in a regular array of 8 by 10 turbines.
The wind turbines are installed with an internal spacing along the main directions (West-East) of 7D,
whereas the diagonal wind turbine spacing is either 9.4D or 10.4D. The wind farm comprises Vestas
V80 turbines, which are 2 MW pitch-controlled, variable speed wind turbines with an 80 m diameter
and a 70 m hub height. The performance of these turbines is reported in Fig. 3.1c. The data from
the measurement campaign include the power output from the different rows of wind turbines and for
different wind directions and sectors. In this work, two turbines were considered, namely, the turbines
07 and 17, which are 7D apart along the West-East direction with the turbine 07 facing undisturbed
winds coming from West. The power measurements as a function of wind direction are taken from Ref.
[117] where the free stream wind conditions were Uinf = 8 m/s and TIx = 8%. For these conditions,
the thrust coefficient was estimated to be CT = 0.80. The wind direction bin width was 5.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 43
(a) Sexbierum wind turbine (b) Nibe wind turbine
(c) Horns Rev wind turbine
Figure 3.1: Performance curves of the Sexbierum, Nibe, and Horns Rev wind turbines
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 44
3.2 CFD modeling
Reynolds-averaged Navier-Stokes (RANS) equations for incompressible, steady flows are chosen as the
basis of the simulation model in this study. They require additional turbulence modeling to solve the
nonlinear Reynolds stress term and to close the system of equations. The set of equations is composed
of the continuity equation,
∂Ui∂xi
= 0, (3.1)
and three momentum equations,
Uj∂Ui∂xj
= −1
ρ
∂p
∂xi+
∂
∂xj
[ν
(∂Ui∂xj
+∂Uj∂xi
)− uiuj
]+f
ρ, (3.2)
where Ui,j is the mean velocity component, p is the mean pressure, ρ and ν are the fluid density and
kinematic viscosity, respectively, f is the source term, and i, j are indexes over the coordinate directions.
Transport equations for turbulence quantities are employed to compute the Reynolds stress terms, uiuj ,
and their number depends on the particular choice of the turbulence model. OpenFOAM [153] is em-
ployed to solve this set of equations, using a control-volume-based technique to transform the governing
flow equations into algebraic expressions that can be solved numerically. The discretization of the gov-
erning equations is based on the second-order upwind scheme, which is applied for the interpolation of
velocities and turbulent quantities. The semi-implicit method for pressure-linked equations (SIMPLE)
algorithms is used to solve simultaneously the set of equations by an iterative scheme.
3.2.1 Turbulence modeling
Four different turbulence models are used to close the RANS equations and compared to each other:
k − ε, k − ω, SST k − ω, and Reynolds stress models. A more detailed description of the constitutive
equations of the turbulence models used in this study can be found in Ref. [7].
The standard k − ε turbulence model, first developed by Jones and Launder [92] and subsequently
revised by Launder and Sharma [105], is currently the most widely used model in many fields [125].
The model is based on the turbulent-viscosity hypothesis (Boussinesq approximation) that relates the
Reynolds stresses to the mean flow via the eddy viscosity. In spite of its broad rage of applicability and
accurate results for simple flows, the k− ε model has shown some limitations: it can be quite inaccurate
for complex flows, in particular in the presence of large adverse pressure gradients [166]. Also, special
near-wall treatments are usually required since the model has been shown to underperform in near-wall
regions.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 45
In this study, we adopt the standard k−ω model formulated by Wilcox [165] which, similarly to the
k− ε model, relies on the Boussinesq approximation to calculate the Reynold stresses. The k−ω model
has been shown to perform better than the k − ε model for boundary-layer flows, both in its treatment
of the viscous near-wall region and in its accounting for the effects of streamwise pressure gradient [125].
However, the model showed problems when dealing with non-turbulent free-stream boundaries so that
special boundary conditions are usually required. Also, it was shown that the k − ω model overpredicts
the level of shear stress in adverse pressure-gradient boundary layers [166].
The shear-stress transport (SST) k − ω turbulence model was formulated by Menter [109] and has
been found to be quite effective in predicting many aeronautical flows [46]. The reason for this is that
it was designed to yield the best behavior of the k − ε and the k − ω models: it retains the robust and
accurate formulation of the Wilcox k − ω model in the near wall region, and takes advantage of the
freestream independence of the k− ε model in the outer part of the boundary layer. A blending function
takes care of the switch between the two models according to the distance from a wall. A new definition
for the turbulence viscosity was introduced by Menter to prevent the tendency to overestimate the shear
stress intensity in adverse pressure-gradient boundary layers.
In the Reynolds stress models, the individual Reynolds stresses are directly computed and con-
sequently the turbulent-viscosity hypothesis is not needed. Different formulations have been used to
model the terms in the transport equations of the Reynolds stresses [104, 146]. However, in this work
the Gibson-Launder (GB) model [60] was chosen because it was developed and calibrated specifically to
simulate atmospheric boundary layers. The RSM has six equations to compute each of the six Reynolds
stresses and an equation for the turbulent dissipation rate. Thanks to the calculation of all six Reynolds
stresses, the model can accurately predict anisotropic turbulent flows, which is an important advantage
compared to the eddy viscosity models limited by the Boussinesq approximation and the assumption
of isotropic turbulence. On the other hand, the RSM requires significantly more computational time
compared to the simpler two-equation models.
Application-specific turbulence model constants
The commonly used values for the coefficients of the turbulence models previously described have been
calibrated on several and various experimental data sets, and therefore represent a compromise to give
the best performance for a wide range of flow conditions [125]. The conditions that a wind turbine
simulation has to deal with represent a particular subset of the entire range of the turbulence model
applicability. In particular, two main phenomena occurring in this application can be identified: the
surface boundary layer (SBL) and the wake generated by the wind turbine that propagates in a SBL.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 46
Table 3.2: Turbulence model constants for SBL and wind turbine simulations [6, 7]
Turbulence model Turbulence constantsk − ε Cµ = 0.0333 C1ε = 1.42 C2ε = 1.83 σk = 2.25 σε = 2.25k − ω β∗ = 0.0333 α = 0.42 β = 0.0277 σ∗ = 0.45 σ = 0.45
SST k − ω β∗ = 0.0333γ1 = 0.42 β1 = 0.0277 σk1 = 0.45 σω1 = 0.45γ2 = 0.42 β2 = 0.0277 σk2 = 0.45 σω2 = 0.45
RSM Cµ = 0.0333C1ε = 1.42 C2ε = 1.83 σR = 0.8197 σε = 2.25C1 = 1.8 C2 = 0.6 C ′1 = 0.5 C ′2 = 0.3
Taking this into account, it is possible to reduce the range of applicability of the turbulence models
to the particular flow characteristics of wind farms in the surface boundary layer by recalibrating the
turbulence model constants based on experimental measurements. For example, Antonini et al. [6, 7]
derived and tested consistent turbulence model constants for each of the aforementioned turbulence
models for SBL and wind turbine simulations (see Tab. 3.2). In this work, we used these constants
for all our predictions, so that our results reflect the most-accurate versions of each turbulence model,
recalibrated for our specific application.
3.3 Wind turbine and surface boundary layer modeling
This section provides a description of the approach used to model in our computational domain the wind
turbines and the surface boundary layer where the turbines operate.
3.3.1 Wind turbine modeling
The wind turbine was modeled as an actuator disk which is characterized by a cylindrical volume, defined
by the rotor swept area, where a distributed force, defined as axial momentum source, F , is applied.
The main limitation of this model is that it does not provide a detailed description of the wind turbine
geometry and therefore cannot capture the flow dynamics occurring on the rotor blades. However, it
is able to capture adequately the wake effect generated by the wind turbine and to compute its power
output, as required for the employment in wind turbine and wind farm simulations [3, 132, 145]. From
the definition of thrust coefficient, it can be derived that the axial force is a function of the reference
wind speed:
F =1
2ρπD2
4CTU
2ref , (3.3)
where ρ is the air density, D is the rotor diameter, Uref is the upstream wind speed, and CT is the
thrust coefficient, obtained from the thrust coefficient curve of the wind turbine at the specified Uref .
The power generated can be computed as the product of the axial force and the average velocity over
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 47
the actuator disk volume V :
P = FUx = F1
V
∫V
UxdV. (3.4)
In the case of wind turbines that operate in the wake of others, the value for the upstream wind speed
is not readily available. Ideally, the reference wind speed for a turbine operating in wake condition is
the speed that would be present at the turbine location without the turbine itself. Evaluating this speed
would require therefore an additional simulation for each given wind boundary condition. Because of
the high computational cost associated, two different approaches were used in literature to estimate the
reference wind speed with simpler procedures. A common choice is to use the wind speed upstream of
the rotor, at a distance of one (1D) or two (2D) rotor diameters as an estimate of the reference speed.
However, this method cannot always guarantee an accurate estimation, so a validation step is typically
recommended on a case-by-case basis. A different approach was introduced by Prospathopoulos et al.
[128], which is based on an iterative calculation that uses the definition of the axial induction factor, a,
and thrust coefficient curve of the specific wind turbine. In the present work, however, the authors chose
to calculate the reference wind speed using the ideal method: an additional simulation for each given
wind boundary condition was run to calculate the speed that would be present at the turbine location
without the turbine itself. This procedure was conducted only for the case of multiple wind turbines,
and it allowed to have the most accurate solution for the reference wind speed.
3.3.2 Surface boundary layer modeling
The atmospheric boundary layers (ABL) is used to model the wind conditions and characteristics usually
encountered in real wind turbine and wind farm flows. For an homogeneous and stationary flow, the
wind shear profile can be described, according to Panofsky and Dutton [115], as:
∂Ux∂z
=u∗κl, (3.5)
where Ux is the mean streamwise wind speed, z is the height above ground, u∗ is the local friction
velocity, l is the local length scale, and κ is the von Karman constant (≈ 0.4). Within the ABL, the
friction velocity decreases with z, vanishing at the edge of the ABL according the following relation:
u∗ = u∗0
(1− z
zmax
)α, (3.6)
where zmax is the height of the ABL and α depends on the state of the boundary layer, ranging from
2/3 to 3/2 [69]. The height of an ABL can extend up to some kilometers, depending on the atmospheric
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 48
stability [115]. The first 10% of the ABL, which is usually called the surface boundary layer (SBL),
can be approximated by a constant friction velocity equal to u∗0. Also, in the SBL, the length scale is
assumed equal to the height (lSL = z).
The length scale, l, is influenced by the atmospheric stability, which describes the combined effects of
mechanical turbulence and heat convection, and the height of the ABL [115]. Three classes of atmospheric
stability can be defined: unstable, neutral, and stable conditions. The experimental data set for two
of the case studies analyzed in this work, Sexbierum and Nibe, was reported to experience neutral or
near-neutral conditions, whereas, for the Horns Rev case, the experimental measurements were recorded
under unstable conditions. In spite of the substantial difference in the phenomena that drive the different
stability conditions, the measurements obtained under neutral and unstable conditions are usually very
close to each other in terms of both wind speed/power production and turbulence intensity. This can
be seen with the measurement campaign conducted at the Horns Rev wind farm [72], where neutral
and unstable conditions are even grouped together because of their similarity. For this reason, the
case studies analyzed in this work will take into account only the surface boundary layer under neutral
conditions, which is a reasonable approximation for the lowest part of the atmospheric boundary layer
where wind turbines operate [115].
Under the previously discussed hypothesis, a logarithmic velocity profile can be derived from Eq. 3.5
by integration:
Ux =u∗0κln
(z
z0
), (3.7)
where z0 is the surface roughness length. This parameter is solely used for describing the wind speed
profile, in fact, it is not a physical length, but rather a length scale representing the roughness of the
ground (reference values for different terrain types can be found in Ref. [115]). The friction velocity can
be calculated once a reference velocity is known at a specific height:
u∗0 =κUx,ref
ln(zrefz0
) . (3.8)
Introducing the equation for the wind profile into the turbulence models, it can be derived that the
turbulent kinetic energy, turbulent dissipation rate, and specific dissipation rate have the following
expressions, respectively [134, 127]:
k =u2∗0√Cµ
, ε =u3∗0κz
, ω =u∗0√β∗κz
. (3.9)
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 49
Panofsky and Dutton [115] extrapolated average values for the Reynolds stresses from different ex-
perimental data sets and these are given as a function of the friction velocity: uxux = (2.39u∗0)2,
uyuy = (1.92u∗0)2, uzuz = (1.25u∗0)
2, uxuz = −u2
∗0, uxuy = uyuz = 0. From the value of the xx-
Reynolds stress, Prospathopoulos et al. [127] derived a useful relation between the surface roughness
length and the streamwise turbulence intensity, TIx, which is a common parameter used to characterize
the flow turbulent conditions. Following the definition of turbulence intensity, it is possible to write:
TIx =ux
Ux,ref= 2.39
u∗0Ux,ref
. (3.10)
Introducing Eq. 3.8 on the right hand side of Eq. 3.10, it is possible to rearrange the equation in order
to find the value of the surface roughness length as a function of the turbulence intensity:
z0 = zrefexp
(−0.980
TIx
). (3.11)
Starting from the definition of turbulent kinetic energy, it is also straightforward to derive a relation
between the turbulent kinetic energy and the streamwise turbulence intensity:
k =1
2(uxux + uyuy + uzuz) = 5.48u2
∗0 = 0.959TI2xU
2x,ref . (3.12)
3.4 Numerical setup
The computational domain and mesh of the three cases were generated with blockMesh and snappy-
HexMesh, two mesh utilities of OpenFOAM for mesh generation and refinement, respectively. The
Cartesian coordinate system is defined with x, y, and z being respectively the streamwise, lateral and
vertical directions. Figure 3.2 illustrates schematic layouts of the domain used for the Sexbierum and
Nibe cases. The dimensions of the domain are a function of the rotor diameter (D). The domain includes
the actuator disk region and a refined region surrounding the disk with a double mesh resolution in order
to capture the most significant gradients in the flow field. For the Horns Rev case, two turbines were
instead included in the domain.
The dimensions of the domain were carefully determined in order to not influence the flow-field
solution and to avoid useless domain regions. A detailed sensitivity analysis can be found in Ref. [6, 7]
and the same procedure was followed in this work. The upstream distance from the wind turbine and
the domain height were set to 3D and 5D, respectively. For the Horns Rev case, the second wind turbine
was place at a distance of 7D downstream. The other dimensions were basically chosen in order to have
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 50
(a) Top view
(b) Lateral view (c) Front view
Figure 3.2: Schematic layouts of the domain
the flow-field solution as far as the experimental measurements are available for comparison. The global
grid spacing was set to 0.1D, whereas the resolution in the refined region surrounding the wind turbine
was as double as the global resolution in order to capture the main gradients in the flow field. In the
region close to the wall, the resolution was also higher: the first cell at the wall was fixed to a height
of 0.01D and this value was progressively increased moving away from the wall, up to the size given by
the global resolution. The height of the region where this mesh refinement took place was 0.5D. For
the solution of the RANS equations, the convergence criterion was set so that the residuals of all the
equations were below 10−5.
3.4.1 Boundary conditions
The inlet boundary condition was defined with the equations relative to the SBL. Given the flow char-
acteristics, i.e., Uinf , TIx, and H, the values for z0 and u∗0 were derived with Eqs. 3.8 and 3.11. The
velocity, turbulence kinetic energy (or Reynolds stresses), and turbulence dissipation rate (or specific
dissipation rate) were then prescribed according to Eqs. 3.7 and 3.9, depending on the turbulence model
used. The outlet boundary condition was defined as a pressure outlet, with zero gradient for the velocity
and turbulence quantities. The top boundary condition was defined by prescribing constant values of
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 51
velocity, turbulence kinetic energy (or Reynolds stresses), and turbulence dissipation rate (or specific
dissipation rate) at the domain height, whereas zero gradient was set for the pressure. The side boundary
condition was defined as zero gradient for all the variables. The ground was defined as a rough wall,
with wall functions that took care of the turbulence quantities.
3.4.2 Wall functions
A proper treatment of the ground surface is essential to correctly simulate SBL flows. A general require-
ment of CFD simulations consists in having a very fine mesh in proximity of any surface in order to
capture the large velocity gradients and to compute a correct wall shear stress. In SBL simulations, this
is impossible because the surface roughness prevents a full solution of the boundary layers. In fact, the
first wall-adjacent cell should be at least the double of the surface roughness, which is in conflict with
the requirement of a high mesh resolution. In these cases, wall functions based on log-law boundary
layers for rough walls are used to calculate the turbulent viscosity and wall shear stress. Blocken et al.
[19] discussed the problem of the wall treatment for these particular flows, suggesting remedies when
the simulations are run with ANSYS Fluent or CFX, which adopt wall functions based on an equiva-
lent sand-grain roughness, kS , equivalent to approximately 30z0. In contrast, OpenFOAM uses a wall
function based on the actual surface roughness length, z0, that is derived from Eq. 3.7. This was used
in the present work and allowed us to have a higher resolution close to the wall than the one possible
with ANSYS Fluent and CFX. A value of approximately 0.01D for the height of the first cell at the wall
was found to guarantee a correct simulation of SBL flows, achieving horizontally homogeneity (i.e., zero
streamwise gradients) of the SBL in an empty domain. This value is also consistent with other works
present in literature [24, 128].
3.5 Modeling uncertainty with simulation ensembles (MUSE)
The results from simulations run with steady conditions are not directly comparable with results from
field measurements. The reason is that field measurements are given as an average of recordings in a
certain period of time, classified by a specific range of wind direction, wind speed, turbulence intensity
and atmospheric stability. Within each period, wind intensity and direction change in time and produce
an uncertainty associated with the average value of a measuring period. The wind direction variability is
expected to have the most significant impact on turbine-wake characteristics, such as velocity deficit [126].
Causes of uncertainty on the wind direction can be identified in spatial and temporal de-correlation of the
wind direction between the measurement and the turbine locations, large-scale turbulence of the incoming
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 52
boundary layer flow that drives the meandering of the wakes [50], and sensor inaccuracy and uncertainty,
among others [72]. Gaumond et al. [58] suggested that the discrepancies of numerical simulations for
narrow wind direction sectors found in different studies are not caused by wake modeling inaccuracies
but rather by the large wind direction uncertainty included in the data sets. Subsequently, Gaumond
et al. [59] proposed a method to take into account the wind direction uncertainty post-processing the
results from analytical wake models, improving the agreement of the results. This technique is applied
in this study in order to compare the results from the CFD wake model with field measurements. With
this approach, we propose to Model Uncertainty with Simulation Ensembles (MUSE): we show that a
weighted average of several CFD RANS results covering a wide range of wind directions can effectively
take into account the large-scale turbulence of the incoming boundary layer flow causing wind direction
variability. As such, this method can be considered a computationally faster alternative to URANS or
LES models, which are usually needed to simulate large-scale flow phenomena with transient changes in
the flow field.
The wind direction uncertainty is assumed to have a Gaussian distribution around an average value.
The probability density of the Gaussian distribution relative to a wind direction, θ, is thus:
fg (θ) =1
σθ√
2πexp
[−(θ − θ
)22σ2
θ
], (3.13)
where θ is the average wind direction and σθ is the standard deviation associated with the wind di-
rection. The standard deviation of this distribution is usually provided by the experimental data set.
For the Nibe wind farm, the standard deviation was σθ = 5. For the Sexbierum wind farm, the wind
direction uncertainty was not reported in the data set. Nevertheless, Pena et al. [118] derived from
numerical simulations of the same case and experimental measurements of a different site with similar
wind conditions a value in the range of 2−3.5. A value of 3 is therefore adopted in this study. Lastly,
for the Horns Rev wind farm, Hansen et al. [72] stated that the wind direction uncertainty associated
with the measurements could reach values of more than 7 because of the large distance between the
wind measuring station and the operating wind turbines. However, Gaumond et al. [59] in their post-
processing calculations with the wind direction uncertainty found that values in the range of 5 − 7
provided better wake deficit predictions. Therefore, in this study, a value of 6 was chosen as a trade-off
between the previous considerations.
Once the flow field is obtained from the steady-state simulations, the velocity downstream the wind
turbine can be expressed as a function of the wind direction, θ, and the downstream distance, d, given
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 53
Figure 3.3: Example of weighted averaging. A moving weighted averaging process based on a Gaussiandistribution is applied to all wind directions . A Gaussian distribution centered at θ = 0 with σθ = 5
is plotted for clarification purposes.
the aforementioned input conditions:
U = f (θ, d) . (3.14)
A method to model wind direction uncertainty with simulation ensembles is then used: a weighted
average is applied to a set of steady-state CFD results for different wind directions to generate a single
CFD prediction based on the given standard deviation associated with the data set. The resulting
velocity for a specific direction, θ, and distance, d, is obtained as a weighted averaged of the simulated
velocities in the range of θ ± 3σθ at the same distance, where the weights are given by the Gaussian
distribution:
U(θ, d)
=
∫ θ+3σθ
θ−3σθ
U (θ, d) fg (θ) dθ. (3.15)
The process is repeated for all the directions at the same downstream distance. The same method can
also be applied to the power generation of a turbine operating in wake conditions where the resulting
power can be calculated as follows:
P(θ, d)
=
∫ θ+3σθ
θ−3σθ
P (θ, d) fg (θ) dθ. (3.16)
Figure 3.3 shows an example of the averaged results obtained from a CFD simulation when the MUSE
method is applied. It can be seen that the averaging process has the effect of decreasing the center-line
wind speed deficit and broadening the wake width.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 54
Table 3.3: Root-mean-square errors (RMSE) between the experimental data and the simulations resultswhen considering the wind direction range ±30 for the Sexbierum and Nibe cases, and ±15 for theHorns Rev case. The RMSEs are classified by case (Sexbierum, Nibe, and Horns Rev), by quantity ofinterest (normalized wind speed (NWS) and normalized power (NP)), by downstream distance, and byturbulence model.
k − ε k − ωWind Turbine Quantity Distance Original MUSE Original MUSE
Sexbierum NWS2.5D 0.1859 0.1890 0.1936 0.19575.5D 0.0730 0.0757 0.0804 0.08168D 0.0545 0.0556 0.0603 0.0601
Nibe NWS2.5D 0.1848 0.1910 0.1936 0.19834D 0.0683 0.0787 0.0738 0.08147.5D 0.0453 0.0536 0.0468 0.0528
Horns Rev NP 7D 0.0247 0.0503 0.0442 0.0798
SST k − ω RSMWind Turbine Quantity Distance Original MUSE Original MUSE
Sexbierum NWS2.5D 0.0947 0.0933 0.0797 0.06175.5D 0.0468 0.0401 0.0462 0.03388D 0.0480 0.0435 0.0431 0.0425
Nibe NWS2.5D 0.0614 0.0694 0.0510 0.04654D 0.0619 0.0462 0.0776 0.05827.5D 0.0505 0.0401 0.0435 0.0423
Horns Rev NP 7D 0.1349 0.0461 0.0866 0.0392
3.6 Results and discussion
This section includes the results obtained directly from the CFD RANS simulations and the results
obtained after the averaging process with the MUSE method. This comparison aims to highlight the
importance of taking into account the wind direction uncertainty when comparing simulation and ex-
perimental results. A quantitative comparison, which will be used in the analysis of the results, is made
in Tab. 3.3 where the root-mean-square errors (RMSE) were calculated between the experimental data
and the CFD results. The RMSE is defined according to:
RMSE =
√∑Ni=1 (yi,exp − yi,CFD)
2
N, (3.17)
where yi,exp and yi,CFD are the experimental and simulated quantities of interest, respectively, and N
is the number of experimental observations.
3.6.1 Simulation results
Figures 3.4 and 3.5 show the normalized wind speed downstream the Sexbierum and Nibe wind turbines,
respectively, for different downstream distances and for different turbulence models. The wind direction
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 55
Table 3.4: Coefficients of the fitting function of Eq. 3.18 for each of the normalized power distributionsplotted in Fig. 3.6
a0 a1 a2 a3 a4
k − ε 0.0175 0.3694 0.0004 0.0077 0.0320k − ω 0.0183 0.2675 0.0004 0.0033 0.0236SST k − ω 0.0126 0.6402 0.0050 0.0178 0.0496RSM 0.0137 0.5251 0.0000 0.0101 0.0347
in the figures refers to the relative direction of the incoming flow where 0 indicates the direction for which
the maximum wind speed deficit is expected. In the Sexbierum case, the wind speed was captured well
by the SST k−ω and Reynolds stress models for the three locations, whereas was highly overestimated
by the k−ε and k−ω models, especially at 2.5D downstream where the RMSEs were the highest (0.1859
and 0.1936, respectively). The results for the Nibe case showed that the wind speed was captured well
by the SST k − ω and Reynolds stress models for the location at 2.5D downstream (RMSEs of 0.0614
and 0.0510, respectively), whereas it was underestimated for the other two locations. The k−ε and k−ω
models, instead, failed to capture the wind speed at 2.5 and 4D downstream, whereas more accurate
results were obtained in the far wake location.
Figure 3.6 show instead the normalized power production of turbine 17 operating in the wake of
turbine 07 at the Horns Rev wind farm as a function of wind direction for different turbulence models.
In this case, the wind direction is indicated with respect to North, therefore the two turbines are aligned
with the incoming flow along a West-East axis at 270. The calculations of the power production
were repeated every 2.5 starting from the direction of 270 where the two turbines were aligned with
the incoming wind speed. Because of the scattering in these simulation results, the normalized power
distribution was fitted with the following expression:
Pn (θ) = 1−[a0 +
(a1 + a2θ + a3θ
2)
exp(−a4θ
2)], (3.18)
where the variables a0, a1, a2, a3, and a4 are determined by fitting Eq. 3.18 to the power values, as
function of the normalized wind direction θ (see Fig. 3.6 for the resulting fitting curves). This fitting
function was introduced by Hansen et al. [72] to characterize the power deficit distributions when the
results are scattered. The coefficients of the fitting function obtained for each of the normalized power
distributions are reported in Tab. 3.4. The fitting function is conveniently used in place of the individual
power generation data as the input for the MUSE method in the following section. To note in the results
for the normalized power production is that the simulations using the k − ε and k − ω models were
very accurate (RMSEs of 0.0247 and 0.0442, respectively) as opposed to the results obtained with the
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 56
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
Figure 3.4: Normalized wind speed downstream the Sexbierum wind turbine as a function of winddirection for the different turbulence models and for different downstream distance.
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
Figure 3.5: Normalized wind speed downstream the Nibe wind turbine as a function of wind directionfor the different turbulence models and for different downstream distance.
(a) 7.0D downstream
Figure 3.6: Normalized power production of turbine 17 operating in the wake of turbine 07 at the HornsRev wind farm as a function of wind direction for different turbulence models. The continuous linescorrespond to Eq. 3.18 fitted to the normalized power data for each of the turbulence models.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 57
SST k − ω and Reynolds stress models (RMSEs of 0.1349 and 0.0866, respectively).
The results obtained from the simulations showed the particular characteristics of the turbulence
models as well as the inconsistency in wake effect predictions that was found also in literature. The
k − ε and k − ω models provided very similar results between each other. The only difference between
the two models lies in a source term in the ω equation that, in these particular simulations, did not
produce a significant contribution. Their inaccuracy, which is usually agreed upon in literature, can be
seen particularly in the Sixberium case and in the near wake of the Nibe wind turbine as opposed to the
accurate wind speed predictions provided by the SST k − ω and Reynolds stress models. However, the
results using the k− ε and k− ω models were more accurate that those of the SST k− ω and Reynolds
stress models for the far wake of the Nibe wind turbine and for the Horns Rev wind farm.
Better predictions are usually expected by the SST k − ω model and Reynolds stress models. The
advantage of the former relies on the bound that is introduced in the eddy viscosity of the model and
that overcomes the limitation of its parent models. The RSM has instead the advantage of solving all
the Reynolds stresses and therefore it is not affected by the eddy-viscosity approximation. Nevertheless,
the results clearly showed that the predictions had high discrepancies for the Horns Rev case and at the
locations of 4 and 7.5D for the Nibe case.
The discrepancies and the inconsistency of the turbulence models are believed to rely in the wind
direction uncertainty, which was not taken into account in the simulations. The result of using the
MUSE method is showed in the next section where these limitations are overcome.
3.6.2 Results with MUSE Method
The results from the CFD simulations were post-processed with the MUSE method using a Gaussian
distribution for the wind direction uncertainty. An averaging process was used to take into account the
wind direction variability characterizing the specific site.
Figures 3.8 and 3.7 show the post-processed wind speed in the wake of the Nibe and Sexbierum wind
turbines, respectively. The averaged wind speed from the Sexbierum case did not vary much with respect
to the original predictions. This is due to the fact that the wind direction uncertainty was low for this
case and the effect on the results was not significant. On the other hand, the averaged results from the
Nibe case showed a clear improvement with respect to the original predictions when the SST k−ω and
Reynolds stress models were used: at 5.5D, the RMSEs decreased from 0.0619 and 0.0776 to 0.0462
and 0.0582, respectively, whereas at 7.5D, the RMSEs decreased from 0.0505 and 0.0435 to 0.0401 and
0.0392, respectively. In this case, the wind direction uncertainty was higher and, therefore, a wider
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 58
range of wind speeds was included in the averaging process, resulting in a more significant effect on the
results. As expected, no improvements were registered for the k − ε and k − ω models, which were seen
to overestimate the wind speed in the original results. The inclusion of the wind speed uncertainty for
these two models was even more deleterious for the predictions.
Figure 3.9 shows instead the normalized averaged power production of turbine 17 operating in the
wake of turbine 07 at the Horns Rev wind farm as a function of wind direction for different turbulence
models. The MUSE method was applied to the fitted power distribution curve in order to have more
data to process. The results showed a significant difference with respect to the original simulation
results. This is due to the high wind direction uncertainty that was associated with the data set and
that was used to post-process the simulation results. It is possible to notice that the predictions of power
production given by using the SST k − ω and Reynolds stress models were much more accurate than
in the previous case: the RMSEs decreased from 0.1349 and 0.0866 to 0.0461 and 0.0392, respectively.
On the other hand, when using the k− ε and k−ω models, the post-processed results provided a higher
power production and the discrepancy became consistent with the other wind farm simulations (e.g.
[24, 143, 7]) where the wake wind speed was overestimated.
The inclusion of the wind direction uncertainty with the proposed MUSE method showed that the
results directly obtained from the CFD simulation are not always comparable with the experimental
observations. This is particularly noticeable in the far wake regions when the wind direction uncer-
tainty was relatively high. By using the MUSE method, the RANS simulations using the SST k − ω
and Reynolds stress models were shown to be consistently more accurate for wake predictions and are
therefore to be preferred over the k− ε and k− ω models. This result clarifies and gives an explanation
to the sometime inconsistent behavior of the turbulence models highlighted in our results and in the
literature. Overall, this method improved the predictions of the CFD RANS model when either of the
suggested turbulence models is used. The improvements are more significant where large-scale unsteady
phenomena resulted in uncertainty in the wind direction as reported in the experimental data sets.
3.7 Conclusions
In the present work, we conducted an investigation of the limitations and inconsistency of the RANS
wake models in the predictions of wake effects in wind farms. A CFD model was developed which used
the actuator disk technique to simulate the wind turbines and the surface boundary layer approximation
to simulate the ambient conditions. The developed CFD model was implemented for three different wind
farms, namely, Sexbierum, Nibe, and Horns Rev, with publicly available experimental measurements.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 59
(a) 2.5D downstream (b) 5.5D downstream (c) 8D downstream
Figure 3.7: Normalized averaged wind speed downstream the Sexbierum wind turbine as a function ofwind direction for the different turbulence models and for different downstream distance.
(a) 2.5D downstream (b) 4D downstream (c) 7.5D downstream
Figure 3.8: Normalized averaged wind speed downstream the Nibe wind turbine as a function of winddirection for the different turbulence models and for different downstream distance.
(a) 7.0D downstream
Figure 3.9: Normalized averaged power production of turbine 17 operating in the wake of turbine 07 atthe Horns Rev wind farm as a function of wind direction for different turbulence models.
Chapter 3. Wind Farm Simulations incorporating Wind Direction Uncertainty 60
The main turbulence models present in literature, namely, the k − ε, k − ω, SST k − ω and Reynolds
stress models were used to close the RANS equations and their results compared.
The results obtained from the simulations were compared to the experimental measurements of wind
speeds and power production in the wake region of the selected wind farms. The CFD results showed
the inconsistency in wake effect predictions that was also found in the literature. The simulation using
the k− ε and k−ω models provided inaccurate predictions for the Sixberium case and in the near wake
of the Nibe wind turbine. Despite their known limitations, their results were more accurate for the far
wake of the Nibe wind turbine and for the Horns Rev wind farm. On the other hand, the SST k−ω and
Reynolds stress models provided opposite results: accurate wind speed predictions for the Sexberium
case and in the near wake of the Nibe wind turbine and high discrepancies for the Horns Rev wind farm.
The discrepancies and the inconsistency of the turbulence models were hypothesized to arise from
wind direction uncertainty caused by large-scale unsteady phenomena, which though present in the ex-
perimental measurements were not accounted for in the simulations. We therefore proposed an approach
to overcome these limitations by Modeling Uncertainty using Simulation Ensembles (MUSE), i.e., a set
of CFD results for different wind directions to generate a single CFD prediction. The predictions of
CFD model were post-processed with this innovative method for CFD simulations that accounts for the
wind direction uncertainty associated with the specific wind farm data set. The proposed MUSE method
can be considered a computationally faster alternative to URANS or LES models, when the goal is to
account for the effect of large-scale, transient flow phenomena causing wind direction variability.
The results in terms of wind speed and power output showed that this technique corrects the pre-
dictions of the CFD model which would be otherwise inaccurate. Specifically, RANS simulations using
the SST k − ω and Reynolds stress models were shown to be consistently more accurate for wake pre-
dictions and are therefore to be preferred over the k− ε and k−ω models. The results showed also that
the discrepancy found between CFD models using the SST k − ω or Reynolds stress models and field
measurements are not related to the inaccuracy of the CFD models but to the uncertainty in the wind
direction.
Chapter 4
Continuous Adjoint Formulation for
WFLO: A 2D Implementation
In the present chapter, we describe an optimization methodology that integrates the high accuracy and
flexibility offered by the CFD models and that overcomes the computationally high costs of a CFD-
based optimization. To this end, we present an adjoint method in its continuous formulation for the
gradient computation. To the authors’ best knowledge, this is the first continuous formulation of the
adjoint method applied to the gradient computation in the WFLO problem. The continuous adjoint
formulation allows for a derivation of the general adjoint equations, before any discretization is being
applied, and therefore allows also for a more flexible implementation in CFD software packages. Here we
present a formulation for different conditions in the flow equations, namely, laminar, frozen-turbulence
and turbulent flows. To verify the developed formulation, gradients calculated under these different
flow conditions are compared with gradients computed with traditional central-difference schemes. The
gradient calculation using the developed adjoint method is then incorporated into a gradient-based
optimization methodology and applied to a set of 2D case studies with a wide variety of wind resource
profiles.
The outline of the chapter is the following. In Sec. 4.1, we present general framework of the adjoint
method and its computational advantage. The continuous adjoint formulation is described in Sec. 4.2
for the three cases of the flow equations. Section 4.3 illustrates the verification of the developed adjoint
method by comparing its results with a central difference discretization approach. In Sec. 4.4, we present
the wind farm layout optimization methodology and its application on a 2D wind farm. Conclusions are
summarized in Sec. 4.5.
61
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 62
4.1 The adjoint method
This section illustrates the general framework underlying the adjoint method, as first conceptualized by
Jameson [85], and its computational advantages. Suppose that the governing equations of a system can
be expressed as G (φ,α) = 0, where G is the set of differential equations expressed in vector form (e.g.,
the RANS equations), φ is the vector of state variables (e.g., the flow field variables), and α is a vector
of the design variables (e.g., the wind turbine coordinates). The system of the governing equations
implicitly states that the state variables, φ, are function of the design variables, α. A scalar objective
function that measures a quantity of interest (e.g., the total power/energy production of the wind farm)
can be expressed as the integral of a user-defined function, J [φ (α) ,α], over a certain volume, ΩO.
Optimization problems are formulated such that the optimal design variables need to be found within
certain constraints to maximize the objective function, namely:
maxα
∫ΩO
J [φ (α) ,α] dΩ,
subject to G [φ (α) ,α] = 0 in Ω,
k (α) = 0,
h (α) ≤ 0,
(4.1)
where h and k are additional equality and inequality constraints on the design variables α, such as upper
and lower bounds on a control input (e.g., wind farm site boundaries, wind turbines interspacing), and
Ω is the entire domain over which the constraints are applied.
Gradient-based optimization algorithms require the gradient of the objective function with respect
to all of the control parameters, i.e., d(∫
ΩOJdΩ
)/dα. The derivation of this gradient with the adjoint
method can be shown starting from the definition of the Lagrangian function:
L =
∫ΩO
JdΩ +
∫Ω
φTGdΩ, (4.2)
where φ is the vector of the Lagrange multipliers, also called adjoint variables. As G is everywhere zero
by construction, the Lagrangian and its variation are always equal in value to the objective function and
its variation (i.e., L = J and δL = δ(∫
ΩOJdΩ
)) while φ can be arbitrarily chosen. By applying the
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 63
chain rule, the variation of the Lagrangian can be shown to be:
δL =∂
∂α
(∫ΩO
JdΩ
)δα+
∂
∂α
(∫Ω
φTGdΩ
)δα+
+
∫ΩO
(∂J
∂φ+ φT
∂G
∂φ
)dφ
dαδαdΩ +
∫Ω\ΩO
(φT
∂G
∂φ
)dφ
dαδαdΩ.
(4.3)
Since the objective function is typically a simple user-defined function, its partial derivatives with respect
to the design variables, ∂(∫
ΩOJdΩ
)/∂α, and state variables, ∂J/∂φ, are straightforward to calculate
numerically and analytically, respectively. The partial derivative of the constraints with respect to the
design variables, ∂(∫
ΩφTGdΩ
)/∂α, is equal to zero whenever the state equations, G, are and remain
satisfied. However, this is not the case when volume source terms in the state equations are themselves
a function of the design variables. In such cases, in the partial derivative, a term representing the
source position shift needs to be defined and this creates an imbalance in the state equations that can
be computed numerically. The partial derivative of the constraints with respect to the state variables,
∂G/∂φ, can be determined with classic derivation rules. Lastly, dφ/dα is the most expensive term
to compute for high-dimensional design and state spaces. In the adjoint approach, this last term is
eliminated by choosing the adjoint variables such that:
∂J
∂φ+ φT
∂G
∂φ= 0 in ΩO,
φT∂G
∂φ= 0 in Ω \ ΩO,
(4.4)
These are called the adjoint equations and their solution usually requires a computational time that is
comparable to the solution of the flow equations. With the values of the adjoint variables, it is therefore
easy to calculate the total gradient needed for the optimization algorithm:
d
dα
(∫ΩO
JdΩ
)=dL
dα=
∂
∂α
(∫ΩO
JdΩ
)+
∂
∂α
(∫Ω
φTGdΩ
). (4.5)
4.2 Continuous adjoint formulation for the wind farm layout
optimization problem
The formulation of the adjoint method needs to be derived for every problem to which it is applied.
Specifically, this requires the derivation and the calculation of the partial derivative terms highlighted
in the previous section. The formulation of the adjoint method for the wind farm layout optimization
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 64
problem starts with the definition of the design variables, α, which are the coordinates of the wind
turbines within the wind farm:
α = [(x1, x2)k] k = 1, ...,K, (4.6)
where K is the total number of wind turbines.
Each wind turbines is modeled as an actuator disk, which is characterized by a cylindrical volume,
defined by the rotor swept area, where a distributed force, defined as axial momentum source, F , is
applied. The actuator disk model offers a convenient trade-off between computational cost and accuracy:
even if it does not provide a detailed description of the wind turbine geometry it is able to adequately
capture its wake effect for the intended application in wind farm simulations and optimization [145, 3].
The axial force applied on the flow field as function of the reference wind speed is:
F =1
2ρπD2
4CTU
2ref , (4.7)
where ρ is the air density, D is the rotor diameter, Uref is the upstream wind speed, and CT is the
thrust coefficient, obtained from the thrust coefficient curve of the wind turbine at the specified Uref .
The power generated can be computed as the product of the axial force and the average velocity over
the actuator disk volume V :
P = Fvn = F1
V
∫V
vndΩ = f
∫V
vndΩ, (4.8)
where vn is the average normal velocity over the wind turbine rotor volume, V . Because of the 2-
dimensional problem formulation, the actual wind turbine rotor volume is a rectangular prism with unit
height and rectangular base whose width is equal to the rotor diameter.
The objective function for the WFLO is the annual energy production (AEP) of the wind farm, which
is a function of both the wind farm layout and the wind resource. Without loss of generality, herein we
present a simplified version of the problem in which the objective function is the total power produced
by the wind turbines under a single wind state, i.e.:
P =
∫ΩO
JdΩ =
∫ΩO
fkvndΩ, (4.9)
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 65
where
ΩO =
K∑k=1
Vk, (4.10)
fk ∈ Vk. (4.11)
For WFLO, given the statistical distribution of wind speeds and directions, the formulation above (Eq.
4.9) is the elemental building block required to calculate the expected AEP, as follows:
AEP = 8760
S∑s=1
T∑t=1
ps,tPs,t, (4.12)
where S and T are the number of wind speed and direction bins, respectively, ps,t is the probability of
occurrence for each wind speed and direction bin, and Ps,t is the total power produced by the turbines,
Eq. 4.9, for a given wind speed and direction.
The governing equations for the present WFLO are the Navier-Stokes equations (i.e., the continuity
(C) and momentum (M) equations) for steady, incompressible flow, which in the context of the adjoint
formulation are the constraints of the problem, G:
C :∂vi∂xi
= 0 in Ω, (4.13)
Mi :
vj∂vi∂xj
+∂p∗
∂xi− ∂
∂xj(2νeffSij) = 0 in Ω− ΩO,
vj∂vi∂xj
+∂p∗
∂xi− ∂
∂xj(2νeffSij) + fk,i = 0 in Vk k = 1, ...,K,
(4.14)
where vi,j is the mean velocity component; p∗ is the mean kinematic pressure (i.e., p/ρ); fk is the
constant source term generated by the k-th turbine (modeled as an actuator disk); i, j are indexes over
the coordinate directions; Sij is the mean rate-of-strain tensor, defined as:
Sij =1
2
(∂vi∂xj
+∂vj∂xi
); (4.15)
and νeff is the effective viscosity, which for a laminar case is simply equal to the fluid kinematic viscosity,
νeff = ν = µ/ρ, and for turbulent flows is the sum of the fluid and turbulent viscosity, νeff = ν + νturb.
The turbulent viscosity is the result of the Boussinesq’s hypothesis to model the Reynolds stresses that
arise after the Reynolds averaging operation. Turbulence modeling is required to calculate this viscosity
and close the Navier-Stokes equations, and, consequently, more equations need to be considered as
constraints of the problem. In the present formulation we adopted the k − ω turbulence model to close
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 66
the RANS equation, but the current approach can similarly be extended to other one- and two-equation
turbulence models. For the k−ω turbulence model, the turbulent viscosity is given by the ratio between
the turbulence kinetic energy, k, and the specific dissipation rate, ω. The equations to calculate these
two variables are the following:
T1 : vj∂k
∂xj− 2
k
ωS2 + β∗kω − ∂
∂xj
[(ν + σ∗
k
ω
)∂k
∂xj
]= 0 in Ω, (4.16)
T2 : vj∂ω
∂xj− 2αS2 + βω2 − ∂
∂xj
[(ν + σ
k
ω
)∂ω
∂xj
]= 0 in Ω, (4.17)
where α, β, β∗, σ, σ∗ are empirical constants of the model, and S is the modulus of the mean rate-of-
strain tensor, defined as:
S =√SijSij . (4.18)
The state variables, also called field variables, φ, for this problem are therefore:
φ =
(p∗, vi) Laminar case,
(p∗, vi, k, ω) Turbulent case.
(4.19)
The derivation of the adjoint formulation depends on the state equations that govern the original
system and on the problem assumptions. Three cases can be identified for the adjoint formulation:
laminar, turbulent, and frozen-turbulence cases. The first two cases are the results of the original
laminar and turbulent equations respectively, whereas the latter is the results of turbulent equations
when the frozen-turbulence hypothesis is used. Under this assumption, the variation of the turbulence
field is neglected (i.e., the turbulent viscosity, although non-uniform in space, is assumed not to depend
on the mean velocities), and only changes of the mean flow are taken into account, described through
the system for continuity and momentum. Although the gradient obtained by freezing the turbulence
field is incomplete, this assumption is a convenient simplification that is considered standard for adjoint
methods [47], and as such it is also considered in the present work. Our results, shown later in this
chapter, will show that this assumption introduces inaccuracies that we deemed inacceptable for the
purpose of optimization.
The Lagrangian function that results for the laminar and frozen-turbulence cases is:
L =
∫ΩO
fkvndΩ +
∫Ω
(p, vi) · (C,Mi) dΩ, (4.20)
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 67
(a) Volume shift perpendicular to axial direction. (b) Volume shift longitudinal to axial direction.
Figure 4.1: Schematic illustrating the calculation of material partial derivatives.
whereas for the turbulent case, the Lagrangian function is given by:
L =
∫ΩO
fkvndΩ +
∫Ω
(p, vi, k, ω
)· (C,Mi, T1, T2) dΩ, (4.21)
where the adjoint variables, φ, for each of the cases are the following:
φ =
(p, vi) Laminar and frozen-turbulence cases,(p, vi, k, ω
)Turbulent case.
(4.22)
The derivation of the terms given in Eq. 4.3 and used to calculate the total gradient follows classical
techniques from calculus of variations. The first terms analyzed here are the partial derivatives with
respect to the design variables. As opposed to the traditional shape optimization formulations, the
WFLO problem does not require surface sensitivities which would in turn require surface displacements
and mesh deformation. In the current problem, the calculation of the wind turbine position sensitivities
entails instead the displacements of the volumes where the source terms are applied without the need
of mesh deformation. In fact, the source terms will be shifted over different regions depending of the
chosen displacements to calculate the partial derivatives with respect to the design variables (see Fig.
4.1 for clarification purposes).
When considering the partial derivative of the objective function, the resulting expression is the
following:
∂
∂α
(∫ΩO
JdΩ
)=
∂
∂α
(∫ΩO
fkvndΩ
). (4.23)
The calculation of this term requires the normal average velocity over the shifted volumes illustrated in
Fig. 4.1 for each of the design variables. This can be computed numerically with a central difference
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 68
discretization at no additional cost given that the field variables are already known:
∂
∂α
(∫ΩO
JdΩ
)=
∂
∂ [(x1, x2)k]
(∫Vk
fkvndΩ
)k = 1, ...,K. (4.24)
When considering instead the partial derivative of the augmented constraints, it can be seen that
the displacements of the source terms affect only the momentum equations, whereas the other state
equations remain equal to zero. The resulting expression is therefore the following:
∂
∂α
(∫Ω
φTGdΩ
)=
∂
∂α
(∫Ω
vi ·MidΩ
). (4.25)
If the state equations remained satisfied everywhere in Ω when calculating the partial derivative in Eq.
4.25, this term would result equal to zero. However, because the turbine (source term) positions are the
design variables of the problem and their displacements need to be defined and applied to calculate the
derivative, an imbalance in the momentum equations is created. This imbalance is equal to the source
term and is present with a positive value in the regions where the shifted volumes do not overlap with
the original turbine volume or with a negative value where the original volume does not overlap with
shifted volumes. In formulas, this can be expressed as:
∂
∂α
(∫Ω
φTGdΩ
)=
∂
∂ [(x1, x2)k]
(∫Vk,imb
fkvndΩ
)k = 1, ...,K, (4.26)
where Vk,imb refers to the region where the momentum equations result imbalanced when a central
difference approximation is used to discretize the derivative and a volume shift is applied. The final
result can be computed numerically once the adjoint variables are known.
The two partial derivatives calculated in Eq. 4.25 and 4.26 are the fundamental components used to
obtain the final value of the objective function gradient. However, other terms are needed to calculate
the required adjoint variables. For this purpose, the last two terms given in Eq. 4.3, namely the partial
derivatives with respect to the field variables, need to be calculated. First, the partial derivative of the
objective function can be easily calculated as:
∫ΩO
∂J
∂φδφdΩ =
∫ΩO
∂
∂φ(fkvn) δvndΩ =
∫ΩO
fk,iδvidΩ. (4.27)
The second term is the partial derivative of the augmented constraints and it requires instead a few
algebraic manipulations to obtain a convenient relation that can be subsequently used for the adjoint
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 69
equations. To derive it, the following rule for integration by parts for multivariable calculus will be used:
∫Ω
∂g
∂xihdΩ =
∫Γ
ghnidΓ−∫
Ω
∂h
∂xigdΩ. (4.28)
Also, depending on the cases previously discussed (i.e., laminar, frozen-turbulence, and turbulent),
different equation will be derived. The following sections will illustrate the two different derivations.
4.2.1 Adjoint equations for the laminar and frozen-turbulence cases
The adjoint equations and boundary conditions for the laminar and frozen-turbulence cases are derived
by developing the last term required:
∫Ω
φT∂G
∂φδφdΩ =
∫Ω
p
−∂δvi∂xi
dΩ+
∫Ω
vi
δvj
∂vi∂xj
+ vj∂δvi∂xj
+∂δp∗
∂xi− ∂
∂xj(2νeffδSij)
dΩ, (4.29)
where
δSij =1
2
(∂δvi∂xj
+∂δvj∂xi
). (4.30)
The integration by parts is used (twice for the diffusion term) to obtain the final expression:
∫Ω
φT∂G
∂φδφdΩ =−
∫Ω
− ∂p
∂xiδvi − vi
∂vi∂xj
δvj + vj∂vi∂xj
δvi +∂vi∂xi
δp∗ +∂
∂xj
(2νeff Sij
)δvi
dΩ+
+
∫Γ
− pniδvi + vivjnjδvi + viniδp
∗ − vi2νeffδSijnj + 2νeff Sijnjδvi
dΓ,
(4.31)
where
Sij =1
2
(∂vi∂xj
+∂vj∂xi
). (4.32)
After collecting terms with the variations of the field variables, the resulting expression is the following:
∫Ω
φT∂G
∂φδφdΩ =−
∫Ω
δp∗
[∂vi∂xi
]+ δvi
[vj∂vi∂xj− ∂p
∂xi− vj
∂vj∂xi
+∂
∂xj
(2νeff Sij
)]dΩ+
+
∫Γ
δp∗[vini
]+ δvi
[vivjnj − pni + 2νeff Sijnj
]− vi2νeffδSijnj
dΓ.
(4.33)
The adjoint equations can be eventually determined to eliminate the variations of the field variables.
By summing the partial derivatives of the objective function in Eq. 4.27 and of the augmented constraints
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 70
in Eq. 4.33, the adjoint equations for the laminar and frozen-turbulence cases are:
∂vi∂xi
= 0 in Ω, (4.34)−vj
∂vi∂xj
+∂p
∂xi− ∂
∂xj
(2νeff Sij
)+ vj
∂vj∂xi
= 0 in Ω− ΩO,
−vj∂vi∂xj
+∂p
∂xi− ∂
∂xj
(2νeff Sij
)+ vj
∂vj∂xi
+ fk,i = 0 in Vk k = 1, ...,K,
(4.35)
δp∗[vini
]= 0 in Γ, (4.36)
δvi
[vivjnj − pni + 2νeff Sijnj
]= 0 in Γ, (4.37)
vi2νeffδSijnj = 0 in Γ. (4.38)
4.2.2 Adjoint equations for the turbulent case
The adjoint equations and boundary conditions for the turbulent case are derived, as in the previous
case, by developing the last term required:
∫Ω
φT∂G
∂φδφdΩ =
∫Ω
p
−∂δvi∂xi
dΩ +
∫Ω
vi
δvj
∂vi∂xj
+ vj∂δvi∂xj
+∂δp∗
∂xi+
− ∂
∂xj
[2
(δk
ω− k
ω2δω
)Sij + 2
(ν +
k
ω
)δSij
]dΩ+
+
∫Ω
k
δvj
∂k
∂xj+ vj
∂δk
∂xj+
− 2δk
ωS2 + 2
k
ω2δωS2 − 2
k
ωδ(S2)
+ β∗δkω + β∗kδω+
− ∂
∂xj
[σ∗(δk
ω− k
ω2δω
)∂k
∂xj+
(ν + σ∗
k
ω
)∂δk
∂xj
]dΩ+
+
∫Ω
ω
δvj
∂ω
∂xj+ vj
∂δω
∂xj− 2αδ
(S2)
+ 2βωδω+
− ∂
∂xj
[σ
(δk
ω− k
ω2δω
)∂ω
∂xj+
(ν + σ
k
ω
)∂δω
∂xj
]dΩ,
(4.39)
where
δ(S2)
= 2Sij∂δvi∂xj
. (4.40)
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 71
The integration by parts is used (twice for the diffusion term) to obtain the final expression:
∫Ω
φT∂G
∂φdΩ = −
∫Ω
− ∂p
∂xiδvi − vi
∂vi∂xj
δvj + vj∂vi∂xj
δvi +∂vi∂xi
δp∗ +
+∂
∂xj
[2
(ν +
k
ω
)Sij
]δvi −
∂vi∂xj
[2
(δk
ω− k
ω2δω
)Sij
]+
− k ∂k∂xj
δvj + vj∂k
∂xjδk − ∂
∂xj
(4kk
ωSij
)δvi+
− k(−2
S2
ωδk + 2
k
ω2S2δω + β∗ωδk + β∗kδω
)+
+∂
∂xj
[(ν + σ∗
k
ω
)∂k
∂xj
]δk − ∂k
∂xj
[σ∗(δk
ω− k
ω2δω
)∂k
∂xj
]+
− ω ∂ω∂xj
δvj + vj∂ω
∂xjδω − ∂
∂xj(4ωαSij) δvi − 2βωωδω+
+∂
∂xj
[(ν + σ
k
ω
)∂ω
∂xj
]δω − ∂ω
∂xj
[σ
(δk
ω− k
ω2δω
)∂ω
∂xj
]dΩ+
+
∫Γ
−pniδvi + vivjnjδvi + viniδp∗+
− vi[2
(δk
ω− k
ω2δω
)Sij + 2
(ν +
k
ω
)δSij
]nj + 2
(ν +
k
ω
)Sijnjδvi+
+ kvjnjδk − 4kk
ωSijnjδvi+
− k[σ∗(δk
ω− k
ω2δω
)∂k
∂xj+
(ν + σ∗
k
ω
)∂δk
∂xj
]nj+
+
(ν + σ∗
k
ω
)∂k
∂xjnjδk+
+ ωvjnjδω − 4ωαSijnjδvi+
− ω[σ
(δk
ω− k
ω2δω
)∂ω
∂xj+
(ν + σ∗
k
ω
)∂δω
∂xj
]nj+
+
(ν + σ
k
ω
)∂ω
∂xjnjδω
dΓ.
(4.41)
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 72
After collecting terms with the variations of the field variables, the resulting expression is the following:
∫Ω
φT∂G
∂φδφdΩ = −
∫Ω
δp∗
∂vi∂xi
+
+ δvi
vj∂vi∂xj− ∂p
∂xi− vj
∂vj∂xi− k ∂k
∂xi− ω ∂ω
∂xi+
+∂
∂xj
[2
(ν +
k
ω
)Sij
]− ∂
∂xj
(4kk
ωSij
)− ∂
∂xj(4ωαSij)
+
+ δk
vj∂k
∂xj+
∂
∂xj
[(ν + σ∗
k
ω
)∂k
∂xj
]− 1
ω2Sij
∂vi∂xj
+
−σ∗
ω
∂k
∂xj
∂k
∂xj− σ
ω
∂ω
∂xj
∂ω
∂xj+ 2
k
ωS2 − β∗kω
+
+ δω
vj∂ω
∂xj+
∂
∂xj
[(ν + σ
k
ω
)∂ω
∂xj
]+
k
ω22Sij
∂vi∂xj
+
+σ∗k
ω2
∂k
∂xj
∂k
∂xj+σk
ω2
∂ω
∂xj
∂ω
∂xj− 2
kk
ω2S2 − β∗kk − 2βωω
dΩ+
+
∫Γ
δp∗ [vini] +
+ δvi
[vivjnj − pni + 2
(ν +
k
ω
)Sijnj +
−(
4kk
ω+ 4ωα
)Sijnj
]− vi2
(ν +
k
ω
)δSijnj+
+ δk
[kvjnj +
(ν + σ∗
k
ω
)∂k
∂xjnj −
viωSijnj +
− σ∗k
ω
∂k
∂xj− σω
ω
∂ω
∂xj
]− k
(ν + σ∗
k
ω
)∂δk
∂xjnj+
+ δω
[ωvjnj +
(ν + σ
k
ω
)∂ω
∂xjnj +
vik
ω2Sijnj +
+σ∗kk
ω2
∂k
∂xj+σωk
ω2
∂ω
∂xj
]− ω
(ν + σ
k
ω
)∂δω
∂xjnj
dΓ.
(4.42)
By eliminating the variations of the field variables and by summing the partial derivatives of the objective
function in Eq. 4.27 and of the augmented constraints in Eq. 4.42, the adjoint equations for the turbulent
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 73
case are:
∂vi∂xi
= 0 in Ω, (4.43)
−vj∂vi∂xj
+∂p
∂xi− ∂
∂xj
[2
(ν +
k
ω
)Sij
]+ vj
∂vj∂xi
+
+k∂k
∂xi+ ω
∂ω
∂xi+
∂
∂xj
[4
(kk
ω+ αω
)Sij
]= 0 in Ω− ΩO,
−vj∂vi∂xj
+∂p
∂xi− ∂
∂xj
[2
(ν +
k
ω
)Sij
]+ vj
∂vj∂xi
+
+k∂k
∂xi+ ω
∂ω
∂xi+
∂
∂xj
[4
(kk
ω+ αω
)Sij
]+ fk,i = 0 in Vk k = 1, ...,K,
(4.44)
− vj∂k
∂xj− ∂
∂xj
[(ν + σ∗
k
ω
)∂k
∂xj
]+
1
ω2Sij
∂vi∂xj
+
+σ∗
ω
∂k
∂xj
∂k
∂xj+σ
ω
∂ω
∂xj
∂ω
∂xj− 2
k
ωS2 + β∗kω = 0 in Ω,
(4.45)
− vj∂ω
∂xj− ∂
∂xj
[(ν + σ
k
ω
)∂ω
∂xj
]− k
ω22Sij
∂vi∂xj
+
− σ∗k
ω2
∂k
∂xj
∂k
∂xj− σk
ω2
∂ω
∂xj
∂ω
∂xj+ 2
kk
ω2S2 + β∗kk + 2βωω = 0 in Ω,
(4.46)
δp∗[vini
]= 0 in Γ, (4.47)
δvi
[vivjnj − pni + 2
(ν +
k
ω
)Sijnj − 4
(kk
ω+ ωα
)Sijnj
]= 0 in Γ, (4.48)
vi2
(ν +
k
ω
)δSijnj = 0 in Γ, (4.49)
δk
[kvjnj +
(ν + σ∗
k
ω
)∂k
∂xjnj −
viωSijnj −
σ∗k
ω
∂k
∂xj− σω
ω
∂ω
∂xj
]= 0 in Γ, (4.50)
k
(ν + σ∗
k
ω
)∂δk
∂xjnj = 0 in Γ, (4.51)
δω
[ωvjnj +
(ν + σ
k
ω
)∂ω
∂xjnj +
vik
ω2Sijnj +
σ∗kk
ω2
∂k
∂xj+σωk
ω2
∂ω
∂xj
]= 0 in Γ, (4.52)
ω
(ν + σ
k
ω
)∂δω
∂xjnj = 0 in Γ. (4.53)
4.3 Verification
In this section, the verification of the proposed continuous adjoint method is carried out by comparing
its results in terms of gradient computation with a finite difference discretization, defined according to:
d
dα
(∫ΩO
JdΩ
)=
∫ΩO
J (αn + δαn) dΩ−∫
ΩO
J (αn − δαn) dΩ
2δαnn = 1, ..., N, (4.54)
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 74
where δαn is a small variation of the n-th design variable. As opposed to the adjoint method, the
gradient calculated with the central difference discratization requires two function evaluations for each
of the design variables. This form of verification has been extensively used in literature to assess the
accuracy of the derivatives (e.g., [4, 30, 47, 116]). It is important to note that, although the continuous
adjoint formulation calculates the exact gradient, its implementation requires the discretization of the
equations over the same computational mesh of the primal simulation. Hence, both the central difference
and adjoint method results are approximations to the underlying gradient, for which there are no closed-
form expressions available.
The continuous adjoint method was therefore applied to the verification case shown in Fig. 4.2, which
consists in finding the gradient of the power production of a turbine placed in the wake of another with
respect to its turbine coordinates. For this case, a 2D domain was used and the results were obtained
for the three formulations of the adjoint equations. To have a robust verification and to capture both
stream-wise and cross-wise variations, the gradient components were calculated for the two directions of
the domain and on a regular grid of downstream and cross-stream positions. The downstream positions
were set to 10D and 15D, with a cross-stream spacing of 0.5D, where D is the turbine rotor diameter
equal to 80 m.
Figure 4.2: Schematic of the layout for the verification case. The two grey areas represent the volumeswhere the wind turbine momentum sources are applied. The black dots indicate the different positionswhere the second wind turbine is placed when the gradient is calculated.
The mathematical formulation of this adjoint problem was implemented in OpenFOAM [153]. The
implementation took advantage of the top-level syntax of the code, which is very close to the conventional
mathematical notation for tensors and partial differential equations [164]. Thanks to the high degree of
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 75
similarity between the state and the adjoint equations, the latter ones were elegantly coded in a similar
way to the NS equations. Second-order discretization was subsequently applied to the adjoint equations
for the interpolation of the adjoint variables. Similarly to the NS equations, the semi-implicit method
for pressure-linked equations (SIMPLE) algorithms was used to solve simultaneously the set of adjoint
equations by an iterative scheme.
4.3.1 Boundary conditions
The boundary conditions for the wind turbines simulation were set with realistic values for wind speed
and turbulence quantities. Even though the simulated system is 2-dimensional, an atmospheric boundary
layer (ABL) was assumed to be present at the inlet. The relations that govern an ABL can be found in
Ref. [6]. Given the ABL characterizing parameters, i.e., undisturbed speed at reference height, Uref=10
m/s, reference height, H=60 m, and surface roughness, z0=0.0018 m, the turbulence kinetic energy and
specific dissipation rate were calculated and then prescribed at the inlet along with the wind speed.
The outlet boundary condition was defined as pressure outlet, with zero gradient for the velocity and
turbulence quantities. The side boundary condition was defined as zero gradient for all the variables.
With regards to the adjoint simulation, the definition of the boundary conditions requires a specific
discussion. In traditional cases of shape design optimization, the boundaries of the domain are subject to
variation depending on the design variables. Therefore the variation of the boundaries and the definition
of the adjoint boundary conditions are crucial for an accurate gradient calculation (see Ref. [149] for
a detailed analysis). In the present WFLO problem, the boundaries are not subject to any variation
and they do not carry any objective function. Because of these circumstances, their influence on the
gradient calculation was seen to be negligible. The boundary conditions on Γ for the present problem
can therefore be fulfilled by the following solution:
vi = 0 in Γ,
∂p
∂xi= 0 in Γ,
k = 0 in Γ,
ω = 0 in Γ.
(4.55)
This solution enabled a straightforward implementation, a stable convergence of the iterative scheme,
and accurate results when considering the gradient calculation.
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 76
(a) 10D downstream (b) 15D downstream
Figure 4.3: Gradient computation for the laminar case. The figures show the results obtained by theadjoint method compared to a central difference discretization approach for the different lateral positionsof the second wind turbine at 10D and 15D downstream.
4.3.2 Verification results
The results of the developed adjoint formulation were compared to those of a central difference (CD)
approach, which can be considered as the best achievable solution for numerical gradient computations.
Figures 4.3, 4.4 and 4.5 show the values of the gradient obtained by the three different adjoint formu-
lations and the CD approach. Tables 4.1, 4.2 and 4.3 report evaluation metrics when comparing the
adjoint formulations and the CD approach. These are: the relative magnitude of the gradient computed
with the adjoint method:
‖∇Jrel‖ =‖∇JAM‖‖∇JAM,max‖
· 100; (4.56)
the percentage difference in the absolute value of the gradients computed by the adjoint method with
respect to the central difference approach:
err∇J =‖∇JAM‖ − ‖∇JCD‖‖∇JCD,max‖
· 100; (4.57)
the angular difference in the direction between the gradient calculated with the adjoint method and the
central difference approach, according to:
errθ = ‖θAM − θCD‖ . (4.58)
For the laminar case, the adjoint method could capture almost exactly the gradient given by the central
difference approach for all the downstream positions. A maximum difference of 1.2% in the absolute value
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 77
(a) 10D downstream (b) 15D downstream
Figure 4.4: Gradient computation for the frozen-turbulence case. The figures show the results obtainedby the adjoint method compared to a central difference discretization approach for the different lateralpositions of the second wind turbine at 10D and 15D downstream.
(a) 10D downstream (b) 15D downstream
Figure 4.5: Gradient computation for the frozen-turbulence case. The figures show the results obtainedby the adjoint method compared to a central difference discretization approach for the different lateralpositions of the second wind turbine at 10D and 15D downstream.
10D downstream 15D downstreamCross-stream [D] ‖∇Jrel‖ [%] err∇J [%] errθ [] ‖∇Jrel‖ [%] err∇J [%] errθ []
0.0 1.2 1.2 0.0 1.0 0.8 0.00.5 100.0 0.1 0.3 99.7 0.5 0.31.0 47.8 0.7 0.1 46.8 0.9 0.01.5 0.4 0.4 1.1 0.3 0.1 0.92.0 0.4 0.3 1.3 0.3 0.1 1.12.5 0.4 0.3 1.5 0.3 0.1 1.4
Table 4.1: Percentage difference in the absolute value and angular difference in the direction of thegradients computed by the central difference approach and the adjoint method in the laminar case.
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 78
10D downstream 15D downstreamCross-stream [D] ‖∇Jrel‖ [%] err∇J [%] errθ [] ‖∇Jrel‖ [%] err∇J [%] errθ []
0.0 18.4 12.0 0.0 11.8 10.5 0.00.5 65.1 3.0 9.2 39.4 0.6 14.31.0 97.6 1.1 4.5 63.2 3.5 7.21.5 100.0 0.5 3.2 73.4 3.7 5.42.0 37.8 1.1 12.0 52.7 3.6 7.52.5 10.1 3.7 72.3 14.5 0.1 40.3
Table 4.2: Percentage difference in the absolute value and angular difference in the direction of thegradients computed by the central difference approach and the adjoint method in the frozen-turbulencecase.
10D downstream 15D downstreamCross-stream [D] ‖∇Jrel‖ [%] err∇J [%] errθ [] ‖∇Jrel‖ [%] err∇J [%] errθ []
0.0 9.9 3.6 0.0 5.1 3.9 0.00.5 62.0 0.1 2.8 37.6 2.4 5.31.0 95.1 1.2 1.3 62.1 4.5 2.51.5 100.0 0.5 1.3 72.6 4.6 2.02.0 34.6 1.4 6.0 53.0 3.4 3.62.5 6.6 0.2 47.8 12.7 1.7 22.2
Table 4.3: Percentage difference in the absolute value and angular difference in the direction of thegradients computed by the central difference approach and the adjoint method in the turbulent case.
and a maximum difference of 1.5 in the direction were observed. When the frozen-turbulence assumption
was used for the turbulence equations, higher discrepancies were seen between the results of the two
methods, with a maximum difference of 12.0% in absolute value and a maximum difference of 72.3 in the
direction. These higher discrepancies are explainable by the fact that the frozen-turbulence assumption
is a simplification of the adjoint derivation and, consequently, the gradient obtained is incomplete.
The fully turbulent formulation of the adjoint method had results that overall were comparable to the
laminar case in terms of accuracy both in the absolute value and direction. However, for both the frozen-
turbulence and turbulent results, high discrepancies were observed in the direction values for the cases
where the second turbine was in the outermost lateral positions (2.0 and 2.5D cross-stream positions).
This is related to the fact that the two components of the gradient approached a value of zero and the
small discrepancies observed in streamwise components generated a large direction variation. In these
positions, the magnitude of the gradient is however significantly lower and almost negligible with respect
to the wake region and therefore this behavior is not expected to affect the optimization process.
In terms of computational cost, the central difference approach required 4 simulations to compute
the gradient. However, CD requires in general 2N system solutions, where N is the number of design
variables (in the WFLO, there are two design variables per wind turbine). Instead, the adjoint method
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 79
required the solution of the adjoint system and 4 numerical integrations (with negligible computational
cost) to compute the gradient, regardless of the number of design variables. For the present verification
case where the gradient of only one turbine was calculated, the computational cost of the adjoint method
was 75% lower than the central difference approach. Higher reductions are however expected when more
wind turbines are considered, such as the application case in the following section.
Overall, the results presented for this verification case showed that the adjoint method can effectively
replace a traditional central difference approach for gradient computation and significantly reduce the
amount of time required for the process. The adjoint method will be therefore integrated, in place
of a central difference discretization, in the gradient-based optimization methodology illustrated in the
following section.
4.4 Optimization methodology for the WFLO problem
The gradient calculation performed with the adjoint method is an essential component of the optimization
methodology, which aims to find the optimal placement of a given number of wind turbines within a
wind farm domain to maximize the AEP. The optimization methodology, illustrated in Fig. 4.6, starts
with the wind rose, i.e., the site-specific statistical distribution of the wind resource, and an initial wind
farm layout. Initially, CFD simulations are used to calculate the AEP of that particular configuration.
If convergence/termination criteria in the iterative loop are not met, adjoint CFD simulations are then
used to calculate the gradient of the objective function, i.e., the gradient of the AEP with respect
to the turbine positions. Using the calculated gradients, turbine positions are updated to create a
new turbine layout, which is then evaluated with a CFD simulation. These steps are repeated until
convergence/termination criteria are met.
This methodology was entirely developed and implemented to run autonomously. Two separate
routines were coded to take care of the calculation of the AEP and of the gradient. In these routines,
the original and adjoint CFD simulations are automatically set up and run using OpenFOAM, and the
results of interest are generated and passed to the rest of the loop. The overall optimization process,
which consists of running the two aforementioned routines, updating the turbine position, and monitoring
the convergence, is handled by a sequential quadratic programming (SQP) algorithm as implemented in
the open-source library NLopt [91, 98]. A stopping criterion is applied so that the optimization run is
stopped when changes in the objective function from one iteration to the next are less than 0.01%.
The developed optimization methodology was applied to optimize a 2D wind farm layout consisting
of 16 wind turbines using the fully turbulent formulation. The domain used for the CFD and adjoint
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 80
Figure 4.6: Flow chart reproducing the optimization methodology used to solve the wind farm layoutoptimization problem
Figure 4.7: Schamatic of the 2D domain used to test the optimzation methodology.
simulations had a dimension of 40Dx40D, whereas the wind turbines were constrained to be within a
17D-radius circumference, as shown in Fig 4.7. This circular sub-domain was introduced as a compu-
tational convenience, to allow us to efficiently rotate the wind farm layout depending on the specified
wind direction, rather than rotating the boundary conditions. A minimum distance of 1D between
wind turbines was set as additional constraint to avoid any overlap of wind turbines generated by the
optimization algorithm.
The convergence behavior of gradient-based optimization methods is highly dependent on the starting
design configuration [70, 71]. Due to the local character of gradient information, gradient-based opti-
mization methods are only guaranteed to perform local optimization, i.e., they converge to the nearest
locally optimal solution, but they cannot guarantee that the globally optimal solution is found. To over-
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 81
(a) Regular initial layout (b) Random initial layout
Figure 4.8: Initial layouts used as inputs for the optimization process.
Regular initial layout Random initial layoutNorm. AEP Impr. [%] Norm. AEP Impr. [%]
1-dir. uniform WR 1.073 37.1 1.080 15.02-dir. uniform WR 0.973 27.1 1.070 13.93-dir. uniform WR 1.045 12.9 1.069 12.14-dir. uniform WR 0.958 25.6 1.069 16.46-dir. uniform WR 1.023 10.8 1.053 10.812-dir. uniform WR 0.995 8.0 1.034 9.612-dir. non-uniform WR 1.013 7.1 1.019 7.6
Table 4.4: Normalized AEP and improvement with respect to the initial configuration obtained at theend of the optimization for each of the initial wind farm layouts and for each of the wind roses (WR)used.
come this limitation, the initial solution should be located in the basin of attraction of a global optimum
to get a global optimum solution. Because of that, and to analyze the dependence of the gradient-based
methodology to the initial configuration, two initial layouts were tested, namely a regular layout (com-
monly used in wind farms) and a random layout (see Fig. 4.8). With these initial layouts, seven different
wind roses were chosen to conduct a comprehensive analysis of the proposed methodology. Six of these
wind roses were composed of evenly weighted wind directions, whereas the last one was representative
of a more realistic scenario with a predominant wind direction (see Fig. 4.9 and 4.10). For all wind
resource distributions, the wind speed was considered constant at 10 m/s.
The results obtained from the optimization are reported in Fig. 4.9 and 4.10 for a regular and a
random initial layout, respectively. For each wind rose reported on the left, the final optimal layout is
shown in the center along with the value of the normalized AEP through the iterations on the right. The
normalized AEP is defined as the ratio between the actual AEP and the AEP that would be generated
by the same turbines operating in isolation. Convergence was reached in approximately 30-60 iterations
of the optimization loop for all the cased analyzed. The results of the optimization process in terms of
normalized AEP are reported in Tab. 4.4.
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 82
Figure 4.9: Optimization results obtained from a regular initial layout. For each wind rose on the left,the final optimal layout is shown in the center along with the value of the normalized annual energyproduction (AEP) through the iterations on the right.
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 83
Figure 4.10: Optimization results obtained from a random initial layout. For each wind rose on the left,the final optimal layout is shown in the center along with the value of the normalized annual energyproduction (AEP) through the iterations on the right.
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 84
For the cases with a regular initial layout, it is possible to notice that for evenly weighted wind
roses the generated optimal layouts retained a certain degree of regularity. For example, the layouts
for 4 and 12 directions were symmetric about a 90 rotation; the layouts for 2 and 6 directions were
instead symmetric about a horizontal or vertical line passing by the center of the domain. These
characteristics of symmetry of the layouts for evenly weighted wind directions and for uniform wind
speed are usually considered an indication of an effective optimization algorithm. Obviously, these
characteristics of regularity could not be seen in the optimal layouts for other case of a random initial
layout.
Looking at the results in terms of normalized AEP for the optimal layouts, it is interesting to notice
that the actual AEP was greater, up to a maximum of 8%, than the one that would be generated by the
same turbines operating in isolation. The reason for this interesting result can be explained by looking at
two different aspects. First, the CFD simulations allow to accurately resolve the flow field and to capture
the real behavior of wakes. In fact, besides creating a wind speed reduction in the wake of wind turbines,
wakes also generate a local speed-up effect just outside of the wake region to compensate the wind speed
deficit within the wake. The optimization algorithm took advantage of this flow characteristic and,
depending on the wind rose, tried to move the wind turbines toward these favorable positions where the
speedups were higher. This speedup effect is more pronounced in 2D simulations like the ones conducted
in the present study, whereas its effect should be lower in 3D simulations [95]. Second, the wind farm
had a low turbine density because it consisted only of 16 wind turbines that could be spread over a wide
area. This fact allowed the optimization algorithms to find favorable locations with speed-up effects for
almost all the turbines. If the wind farm have had a higher wind turbine density, it is unlikely that the
normalized AEP would have had a value greater than 1 because of the higher wake losses. It is also
possible to notice that as the wind roses became less sparse, the maximum normalized AEP dropped
from 1.07-1.08 for both the unidirectional wind roses to 1.00-1.01 for the 12-direction wind roses. This
indicates that as the wind rose has more wind directions, it is more difficult to find favorable positions
with speed-up effects for all the wind turbines and some of them end up in locations of partial wake
shading.
With regards to the convergence behavior of the optimization algorithm, the results show that,
as expected, the optimal layouts found with the proposed methodology were highly dependent on the
initial layout. The optimal layouts obtained starting from a regular layout were very different from those
obtained when the optimization started from an random layout. In terms of AEP, it was observed that
the optimal layouts obtained when a random layout was used as a starting point resulted in higher energy
than those obtained starting from a regular layout, on average by 4.5%. In both cases, the algorithm can
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 85
be said to have converged to a local maxima, though the maximum of the objective function was higher
in the random layout case. Another interesting observation that can be made from the results is that, for
a regular initial layout and when the wind rose had directions aligned with the wind turbine arrangement
(2- and 4-direction wind roses), the optimization algorithm seemed to be trapped in a local optimum in
the early stages of the optimization loop. This issue was not observed when the optimizations started
from an random initial layout. This is evidence of the non-linear nature of the optimization problem,
with strong interactions between the wind resource profile and the wind turbine layout.
Overall, the developed optimization methodology based on the adjoint method for the gradient
computation could effectively improve the AEP of a given wind farm layout by changing its turbine
positions. The improvements ranged from about 7% for the case of a 12-direction non-uniform wind rose
and regular initial layout, to 37% for the case of a unidirectional wind rose and regular initial layout. On
average, the improvements were of 18% and 12% for the regular and random initial layouts, respectively.
4.5 Conclusions
In the present chapter, we developed an optimization methodology for the WFLO problem that integrates
the high accuracy and flexibility offered by the CFD models and that overcomes the computationally
high costs of a CFD-based optimization. To this end, we developed and used an adjoint method in its
continuous formulation for the gradient computation. The adjoint formulation was derived for three
different flow scenarios, namely, laminar, frozen-turbulence, and turbulent flows. The derived adjoint
equations were implemented in OpenFOAM by taking advantage of the top-level syntax of the code and
of the similarity between the Navier-Stokes and adjoint equations. The gradient calculation using the
developed adjoint method was implemented in a gradient-based optimization methodology to solve the
2D WFLO problem.
The developed adjoint formulation was first verified on a simplified 2-turbine wind farm where only
the gradient of the wind turbine operating in wake conditions was considered. The results obtained
with adjoint method in terms of gradient computations where generally accurate when compared to the
results obtained with a central difference discretization. The calculated gradients showed higher accuracy
for laminar and turbulent flow regimes, while lower accuracy was observed for the frozen-turbulence
case. Overall, the results showed that the adjoint method could effectively replace a traditional central
difference approach for gradient computation and significantly reduce the amount of time required for
the process.
The gradient calculation performed with the adjoint method was implemented in an optimization
Chapter 4. Continuous Adjoint Formulation for WFLO: A 2D Implementation 86
methodology to solve a 2D WFLO problem. A hypothetical 16-turbine wind farm was defined with
two different initial layouts, with turbine positions either set on a regular grid or random. Seven wind
roses were also defined as inputs for the optimization for a comprehensive analysis. Six of them were
formed by evenly weighted wind directions and one with a realistic wind rose with a predominant wind
direction. The optimization methodology could effectively improve the AEP of the given wind farm
layouts by changing its turbine positions on average by 18% and 12% for the regular and random initial
layouts, respectively.
The proposed approach exhibited the typical local convergence behavior of gradient-based optimiza-
tion approaches. In this work, we used two different initial layouts (symmetric/regular, and random)
for the optimization, since we were interested in observing the behavior of the algorithm in these cases.
However, in practical applications where more assurance is needed of having obtained a globally optimal
solution, different optimization approaches could be used. At the very least, multiple optimization runs
with different initial layouts must be performed, and the best solution among them should be chosen.
Overall, the developed continuous adjoint formulation and its results showed that significant im-
provements can be achieved in terms of computational time with respect to traditional approaches for
gradient computation, such as the central difference approach, without diminishing the accuracy. The
developed gradient-based optimization methodology using the adjoint method showed instead that it is
possible to effectively improve the wind farm AEP. The optimization methodology showed also to benefit
from the use of CFD models which offer a more detailed representation of the flow field in wind farms
by, for example, capturing speed-up effects just outside of wake regions that cannot be observed with
analytical wake models. This 2D continuous adjoint formulation for the WFLO is a first step toward a
more general 3D formulation that could enable an optimization of wind farm layouts in complex terrain.
Chapter 5
Toward WFLO in Complex Terrain
In the present chapter, we show the application of a gradient-based WFLO methodology to 3D wind
farms in both flat and complex terrain. The calculations of the gradients are performed by a contin-
uous adjoint method for turbulent flows. To verify the adjoint formulation, gradients calculated with
this method are compared with gradients computed with traditional central-difference schemes in a 3D
domain. The gradient calculation using the verified adjoint method is then incorporated into a gradient-
based optimization methodology and applied to a set of 3D case studies with flat and complex terrains.
Additionally, we compare the results of the 2D and 3D methodologies when these are applied to the
same initial configurations to highlight the advantages that the latter has over the former.
The outline of the chapter is the following. Section 5.1 describes the modeling assumptions for the
wind turbines and the surface boundary layer that are integrated in the CFD and adjoint simulations.
In Sec. 5.2, we verify the continuous adjoint formulation by comparing the results obtained under the
frozen-turbulence and fully turbulent flow conditions with a central difference discretization method.
In Sec. 5.3, we present the wind farm layout optimization methodology that incorporates the terrain
topography and its application to a wind farm both in flat and complex terrains. We also compare this
methodology with the previously developed 2D implementation. Conclusions are summarized in Sec.
5.4.
5.1 Wind turbine and surface boundary layer modeling
This section provides a description of the approach used to model in our computational domain the wind
turbines and the surface boundary layer where the turbines operate.
87
Chapter 5. Toward WFLO in Complex Terrain 88
5.1.1 Wind turbine modeling
The wind turbines were modeled as actuator disks which are characterized by a cylindrical volume,
defined by the rotor swept area, where a distributed force, defined as axial momentum source, F , is
applied. From the definition of thrust coefficient, it can be derived that the axial force is a function of
the reference wind speed:
F =1
2ρπD2
4CTU
2ref , (5.1)
where ρ is the air density, D is the rotor diameter, Uref is the upstream wind speed, and CT is the
thrust coefficient, obtained from the thrust coefficient curve of the wind turbine at the specified Uref .
The power generated can be computed as the product of the axial force and the average velocity over
the actuator disk volume V :
P = FUx = F1
V
∫V
UxdV. (5.2)
In the present study, a reference turbine with 80 m rotor diameter and 70 m hub height is chosen and
modeled in the wind farm simulations. It is also assumed to operate at 10 m/s and to have a thrust
coefficient of 0.75.
5.1.2 Surface boundary layer modeling
The atmospheric boundary layers (ABL) is used to model the wind conditions and characteristics usually
encountered in real wind turbine and wind farm flows. For an homogeneous and stationary flow, the
wind shear profile can be described, according to Panofsky and Dutton [115], as:
∂Ux∂z
=u∗κl, (5.3)
where Ux is the mean streamwise wind speed, z is the height above ground, u∗ is the local friction
velocity, l is the local length scale, and κ is the von Karman constant (≈ 0.4). In the present study, only
the lower part of the atmospheric boundary layer (ABL) under neutral conditions is considered. The
lowest part of the ABL, which is usually called the surface boundary layer (SBL), can be approximated
by a constant friction velocity equal to u∗0. Also, in the SBL, the length scale is assumed equal to the
height (lSL = z). Under these assumptions, a logarithmic velocity profile can be derived from Eq. 5.3
by integration:
Ux =u∗0κln
(z
z0
), (5.4)
Chapter 5. Toward WFLO in Complex Terrain 89
Figure 5.1: Schematic of the layout for the verification case. The two grey areas represent the volumeswhere the wind turbine momentum sources are applied. The black dots indicate the different positionswhere the second wind turbine is placed when the gradient is calculated.
where z0 is the surface roughness length. This equation will be used to model the atmospheric conditions
in the wind farm simulations, assuming that the turbines are places over grass terrain with a surface
roughness of 0.0018 m.
5.2 Verification of the 3D continuous adjoint formulation for
WFLO
In this section, the verification of the continuous adjoint method is conducted for 3D simulations. Its
results in terms of gradient computation were compared with a finite difference discretization. This
form of verification has been extensively used in literature to assess the accuracy of the derivatives (e.g.,
[4, 8, 30, 47, 116]). The continuous adjoint method was therefore applied to the verification case shown
in Fig. 5.1, which consists in finding the gradient of the power production of a turbine placed in the
wake of another with respect to its turbine coordinates. For this case, a 3D domain was used and
the results were obtained for the frozen-turbulence and turbulent formulations of the adjoint equations.
The gradient components were calculated for the two directions of the domain and for a regular grid
of downstream and cross-stream positions. The downstream positions were set to 4D and 6D, with a
cross-stream spacing of 0.5D, where D is the turbine rotor diameter.
The results of the adjoint formulation were compared to those of a central difference (CD) approach,
which can be considered as the best achievable solution for numerical gradient computations. Figures
5.2 and 5.3 show the values of the gradient obtained by the two different adjoint formulations and the
Chapter 5. Toward WFLO in Complex Terrain 90
(a) 4D downstream (b) 6D downstream
Figure 5.2: Gradient computation for the frozen-turbulence case. The figures show the results obtainedby the adjoint method compared to a central difference discretization approach for the different lateralpositions of the second wind turbine at 4D and 6D downstream.
CD approach. Tables 5.1 and 5.2 report evaluation metrics when comparing the adjoint formulations
and the CD approach. These are: the relative magnitude of the gradient computed with the adjoint
method:
‖∇Jrel‖ =‖∇JAM‖‖∇JAM,max‖
· 100; (5.5)
the percentage difference in the absolute value of the gradients computed by the adjoint method with
respect to the central difference approach:
err∇J =‖∇JAM‖ − ‖∇JCD‖‖∇JCD,max‖
· 100; (5.6)
the angular difference in the direction between the gradient calculated with the adjoint method and the
central difference approach, according to:
errθ = ‖θAM − θCD‖ . (5.7)
When the frozen-turbulence assumption was used for the adjoint equations, high discrepancies were
seen between the results of the two methods, with a maximum difference of 24.1% in absolute value and
a maximum difference of 121.5 in the direction. On the other hand, the fully turbulent formulation of
the adjoint method had results that overall were accurate for most part of wake region with a maximum
discrepancy of 5.7% in the absolute value. High discrepancies in the gradient direction can instead
be observed for the cases where the second turbine was in the outermost lateral positions. This is
Chapter 5. Toward WFLO in Complex Terrain 91
(a) 4D downstream (b) 6D downstream
Figure 5.3: Gradient computation for the turbulent case. The figures show the results obtained by theadjoint method compared to a central difference discretization approach for the different lateral positionsof the second wind turbine at 4D and 6D downstream.
4D downstream 6D downstreamCross-stream [D] ‖∇Jrel‖ [%] err∇J [%] errθ [] ‖∇Jrel‖ [%] err∇J [%] errθ []
0.0 39.0 24.1 0.0 19.4 20.4 0.00.5 100.0 9.0 10.6 63.2 5.1 14.01.0 93.9 9.0 9.0 72.3 4.1 11.81.5 26.2 7.8 48.7 30.5 6.6 38.72.0 20.8 20.4 103.2 20.9 18.7 92.02.5 20.6 21.4 121.5 20.7 21.6 126.8
Table 5.1: Relative magnitude of the gradient computed with the adjoint method, ‖∇Jrel‖, and errors inmagnitude, err∇J , and direction, errθ, between the gradient calculated with the adjoint method and thecentral difference approach on a grid of locations downstream of the turbine for the frozen-turbulencecase.
4D downstream 6D downstreamCross-stream [D] ‖∇Jrel‖ [%] err∇J [%] errθ [] ‖∇Jrel‖ [%] err∇J [%] errθ []
0.0 19.4 1.2 0.0 10.9 4.1 0.00.5 100.0 1.2 0.7 63.6 1.3 1.31.0 99.3 7.1 2.2 75.7 1.9 2.41.5 21.5 1.0 19.5 27.4 1.1 14.42.0 6.9 4.7 91.4 7.6 3.6 71.62.5 6.5 5.4 118.7 6.6 5.7 123.6
Table 5.2: Relative magnitude of the gradient computed with the adjoint method, ‖∇Jrel‖, and errorsin magnitude, err∇J , and direction, errθ, between the gradient calculated with the adjoint method andthe central difference approach on a grid of locations downstream of the turbine for the turbulent case.
Chapter 5. Toward WFLO in Complex Terrain 92
explainable by the fact that the two components of the gradient approached a value of zero and even
a small discrepancy in one of the two can generate a large direction variation. In these positions,
the magnitude of the gradient is however significantly lower and almost negligible with respect to the
wake region and therefore this behavior is not expected to affect the optimization process. Overall, the
continuous adjoint method for 3D simulations had results that were very similar to those obtained for
2D simulations. In fact, the verification showed again the accuracy of the turbulent formulation and the
significant saving in computational cost. The successful verification of the 3D formulation of the adjoint
method enables its application to any kind of 3D system and therefore it will be implemented in the
optimization methodology for complex terrains in the following section.
5.3 Optimization methodology for the WFLO problem in com-
plex terrains
The gradient calculation performed with the adjoint method is used in a gradient-based optimization
methodology to find the optimal placement of a given number of wind turbines within a wind farm
domain to maximize the AEP. The optimization methodology, illustrated in Fig. 5.4, starts with the
wind rose, i.e., the site-specific statistical distribution of the wind resource, and an initial wind farm
layout. The wind farm is positioned on a terrain for which the geometry is known. Initially, CFD
simulations are used to calculate the AEP of that particular configuration. If convergence/termination
criteria in the iterative loop are not met, adjoint CFD simulations are then used to calculate the gradient
of the objective function, i.e., the gradient of the AEP with respect to the turbine positions. Using the
calculated gradients, turbine positions are updated to create a new turbine layout. These steps are
repeated until convergence/termination criteria are met.
The developed optimization methodology was applied to optimize a wind farm layout consisting
of 5 wind turbines using the fully turbulent formulation. The domain used for the CFD and adjoint
simulations had a dimension of 12Dx12Dx6D, whereas the wind turbines were constrained to be within
a 3D-radius circumference. A minimum distance of 1D between wind turbines was set as additional
constraint to avoid any overlap of wind turbines generated by the optimization algorithm. The terrains
used to test the optimization were of two kinds, flat and complex. For the complex terrain, we defined a
Gaussian-shaped hill in the middle of the domain, whose geometry is given by the following expression:
z (x, y) = H exp
−
[(x− x0)
2
2σ2+
(y − y0)2
2σ2
], (5.8)
Chapter 5. Toward WFLO in Complex Terrain 93
Figure 5.4: Flow chart reproducing the optimization methodology used to solve the wind farm layoutoptimization problem in complex terrians
(a) 2D case, flat terrain (b) 3D case, flat terrain (c) 3D case, complex terrain
Figure 5.5: Illustration of the domains used for the application of the 2D and 3D methodologies.
where H is the maximum height of the hill, σ is the standard deviation of the Gaussian function, and x0
and y0 are the coordinates of the maximum height of the hill. For the present case, the height and the
standard deviation were set to 0.5D and 1D, respectively. To highlight the advantages of the present
methodology for 3D systems, this was also compared to the previously developed 2D methodology for the
same initial configurations and boundary conditions. As such, we had in total three different domains,
as shown in Fig. 5.5. To analyze the dependence of the gradient-based methodology to the initial
configuration, two initial layouts were tested, namely a regular layout (commonly used in wind farms)
and a random layout (see Fig. 5.6). The wind rose used to characterize the wind distribution was instead
assumed to be composed of six evenly weighted wind directions with a constant wind speed of 10 m/s.
The results obtained from the optimization are reported in Fig. 5.7 and 5.8 for a regular and a
random initial layout, respectively. The normalized AEP is defined as the ratio between the actual AEP
and the AEP that would be generated by the same turbines operating in isolation on a flat terrain.
Convergence was reached within 10 iterations of the optimization loop for all the cased analyzed. The
Chapter 5. Toward WFLO in Complex Terrain 94
(a) Wind rose (b) Regular initial layout (c) Random initial layout
Figure 5.6: Wind rose and initial layouts used as inputs for the optimization process.
Regular initial layout Random initial layoutNorm. AEP Impr. [%] Norm. AEP Impr. [%]
2D case, flat terrain 1.032 13.9 0.982 6.03D case, flat terrain 0.972 6.1 0.964 2.83D case, complex terrain 1.013 3.0 1.019 3.2
Table 5.3: Normalized AEP and improvement with respect to the initial configuration obtained at theend of the optimization for each of the initial wind farm layouts and for each of the cases tested.
results of the optimization process in terms of normalized AEP are reported in Tab. 5.3.
For the cases with a regular initial layout, it is possible to notice that the generated optimal layouts
retained a certain degree of regularity, which can be explained by the symmetry of both the wind rose
and the initial layout. The layouts were, in fact, symmetric about a horizontal or vertical line passing
by the center of the domain. These characteristics of symmetry of the layouts for evenly weighted wind
directions and for uniform wind speed are usually considered an indication of an effective optimization
algorithm.
(a) 2D case, flat terrain (b) 3D case, flat terrain (c) 3D case, complex terrain
Figure 5.7: Optimal layouts obtained at the end of the optimization process starting from a regularinitial layout.
Chapter 5. Toward WFLO in Complex Terrain 95
(a) 2D case, flat terrain (b) 3D case, flat terrain (c) 3D case, complex terrain
Figure 5.8: Optimal layouts obtained at the end of the optimization process starting from a randominitial layout.
Differences can be highlighted between 2D and 3D results for a flat terrain scenario. It is possible
to notice that even if the layouts look quite similar, the turbines in the 2D cases are further apart.
This can be explained by the different modeling implementation of the wind turbines. Whereas the 3D
case used actual cylinders to model the wind turbines, in the 2D case the actual turbine volumes were
modeled with a rectangular prism with unit height and rectangular base whose width is equal to the
rotor diameter. Because of this, the 2D modeling inherently generates wake effects that are higher and
therefore induces the optimization to move the turbines further apart.
Looking at the results in terms of normalized AEP for the optimal layouts, it is interesting to notice
that the actual AEP was greater in some cases than the one that would be generated by the same
turbines operating in isolation and on a flat terrain. For instance, this occurred in the 2D case with a
regular initial layout. The reason for this result can be explained by the fact that the CFD simulations
allow to accurately resolve the flow field and to capture the local speed-up effect just outside of the
wake regions. The optimization algorithm took advantage of this feature and moved the turbines toward
these favorable positions where the speedups were higher. Although the optimal layout of the 3D cases
in flat terrain were very similar to the 2D cases, the AEP results of the former ones did not clearly
show to benefit from this flow characteristic. As also suggested in previous studies [95], this indicates
that speedup effects generated by the turbine presence are more pronounced in 2D simulations. A value
of normalized AEP greater than one was observed also for the 3D cases in complex terrain. This can
be explained by the fact that the Gaussian-shaped hill, similarly to the turbines, induced a speed-up
effect above it that created an increase in the energy captured by the turbines. A consequence of this
effect can be seen in the optimal layout for the 3D case in complex terrain with a random initial layout
(see Fig. 5.8c). In fact, differently from the other two cases with the same initial layout, it is possible
to notice that one of the turbines remains in the middle of the domain on top of the hill where the
Chapter 5. Toward WFLO in Complex Terrain 96
speedup and therefore the energy increase are expected to be maximum. These results ultimately show
the advantages that CFD models have over the simplified wake models currently used for the wind farm
layout optimization, which cannot capture the complex flow dynamics occurring in wind farms.
Overall, the optimization methodology applied to 3D systems and based on the adjoint method for
the gradient computation could effectively improve the AEP of a given wind farm layout by changing
its turbine positions. The improvements ranged from about 3% for the 3D case in flat terrain with a
random initial layout, to 6% for the 3D case in flat terrain with a regular initial layout.
5.4 Conclusions
In the present work, we applied a gradient-based WFLO methodology to 3D wind farms in both flat
and complex terrain. This methodology integrates the high accuracy and flexibility offered by the CFD
models and uses the adjoint method to calculate the required gradients. The adjoint method was first
verified on a simplified 3D 2-turbine wind farm where only the gradient of the wind turbine operating
in wake conditions was considered. The results obtained with adjoint method using the fully turbulent
formulation were generally accurate in terms of gradient computations when compared to the results
obtained with a central difference discretization. The gradient calculation performed with the adjoint
method was therefore used in the optimization methodology to solve the 3D WFLO problem.
A hypothetical 5-turbine wind farm was defined with two different initial layouts, with turbine
positions either set on a regular grid or random. A wind rose with six evenly weighted wind directions
and constant wind speed was defined as input for the optimization. Two different kinds of terrain were
considered, flat and complex. For the flat terrain scenario, the present methodology for 3D systems
was also compared to the previously developed 2D methodology for the same initial configurations and
boundary conditions. For the complex terrain, we defined instead a Gaussian-shaped hill in the middle
of the domain, which could only be handled by the present 3D methodology.
The optimization methodology for 3D wind farms could effectively improve the AEP of the given
wind farm layouts from 3% to 6% depending of the initial layout and terrain topography. It was, in
fact, the first CFD-based methodology being applied to the wind farm layout optimization in complex
terrain. The methodology showed also the benefits of using CFD models which offer a more detailed
representation of the flow field in wind farms by, for example, capturing speed-up effects just outside of
wake regions and around terrain features.
Chapter 6
Conclusions and Future Directions
In this chapter, we present a summary of the conclusions of the works that contributed to the final CFD-
based methodology for wind farm layout optimization and we also present directions and suggestions for
future research.
6.1 Outcomes and their impact
The main contribution of this thesis is a new methodology for the wind farm layout optimization that
integrates CFD models and takes advantage of an innovative formulation of the adjoint method for
gradient calculations. Within this overarching contribution, important results can be highlighted for
each of the works conducted in this thesis:
• We compared in a consistent way the principal turbulence models for RANS equations present in
literature, namely the k− ε, k− ω, and Reynolds stress model, and we introduced the SST k− ω
model as a innovative turbulence model for wind turbine simulations. We showed that the SST k−
ω model performed as good as the the RSM when calculating turbine-wake characteristics, such as
wind speed, turbulence kinetic energy and turbulence intensity, whereas the simulations using the
k − ε and k − ω models provided poor predictions of wake flows. As a result of this comparison,
we showed that the SST k − ω can be used as an effective turbulence model for wind turbine
simulations.
• We investigated the limitations and inconsistency of the RANS models in the predictions of wake
effects in wind farms. We hypothesized that the discrepancies found in some cases between experi-
mental and simulation results arise from wind direction uncertainty caused by large-scale unsteady
97
Chapter 6. Conclusions and Future Directions 98
phenomena, which though present in the experimental measurements were not accounted for in the
simulations. We therefore proposed an approach to account for the wind direction uncertainty by
modeling it using simulation ensembles. Our results showed that the proposed method significantly
improves the agreement of the CFD predictions with the available experimental observations when
wind speed and power production in wake regions are considered. These results suggested that
the discrepancies between CFD predictions and experimental data reported in previous works,
attributed to inaccuracy of the CFD models, can be explained instead by the uncertainty in the
wind direction reported in the data sets.
• We presented an innovative continuous adjoint formulation for gradient calculations within the
framework of a gradient-based wind farm layout optimization. The optimization methodology
integrates CFD models and, thanks to the adjoint method, overcomes the computationally high
costs of a CFD-based optimization. We derived adjoint formulations for different conditions in the
flow equations, namely, laminar, frozen-turbulence and turbulent flows. The proposed formulation
was implemented in a 2D domain and successfully verified by comparing the calculated gradients
with finite-difference approximations. Gradient calculations using the developed adjoint method
were implemented in a gradient-based optimization methodology to solve a 2D wind farm layout
optimization problem under a wide array of wind resource scenarios. Our results showed that the
annual energy production of a given wind farm layout can be effectively improved within 30 to 60
iterations, depending on the initial layout and wind resource distribution. Improvements in AEP
were found to be in the range of 7-37%, with an average of 15%.
• We improved the developed optimization methodology so to handle 3D systems and therefore
to account for the terrain topography. The adjoint method for 3D simulations was verified by
comparing the calculated gradients with a finite-difference discretization method. We applied the
gradient-based optimization methodology using the verified adjoint method to a wind farm both
in flat and complex terrain. We showed that the methodology could effectively improve the AEP
of the given wind farm layouts by changing the turbine positions on average by 3% and 6% for the
regular and random initial layouts, respectively. It was, in fact, the first CFD-based methodology
being applied to the wind farm layout optimization in complex terrain. The methodology showed
the benefits of using CFD models which offer a more detailed representation of the flow field in
wind farms by, for example, capturing speed-up effects just outside of wake regions and around
terrain features that cannot be observed with analytical wake models.
Overall, we showed that CFD RANS models can effectively be used in wind farm simulations when proper
Chapter 6. Conclusions and Future Directions 99
turbulence modeling is chosen and when uncertainties in wind direction are properly considered. We
enabled the use of these CFD models in the wind farm layout optimization by developing an innovative
adjoint formulation for gradient computations. Our contributions advanced our knowledge of wind farm
modeling and simulation and created a new and reliable CFD-based design framework for the wind
turbine industry.
6.2 Future directions
In this section, we suggest some future research directions that arise thanks to the successful development
of the proposed CFD-based methodology or from aspects that have not been considered in this study.
Application of the proposed methodology to real wind farms
The developed CFD-based methodology for WFLO has not been applied to real wind farms. We consider
this as the first step that should be conducted after this work. Simulation and optimization of real
wind farms demand however publicly available experimental measurements for the model validation and
extensive computational resources for the optimization process. Whereas measurements from real wind
farms are becoming more accessible thanks to a growing wind energy community [10, 28, 139], access to
sufficient computational resources is currently seen as the bottleneck for such applications.
Uncertainty quantification of RANS models for wind farm simulations
CFD, especially RANS, models represent a significant part of the simulation tools used for wind farm
modeling and performance estimation and are expected to be next widely-used simulation tool for wind
farm design and optimization. In the present study, we investigated the effect of the wind direction
uncertainty and we proposed a method to effectively account for it. However, significant uncertainties
are believed to be generated by the modeling assumptions for the Reynolds stresses in the momentum
equations [66, 67, 160]. The quantification of such uncertainty is of fundamental importance to enhance
the predictive capabilities of RANS simulations in the context of wind farm simulations.
CFD-based wind farm layout optimization under uncertainty
In the present study when developing the optimization methodology, we implicitly assumed that the
inputs and boundary conditions for the optimization did not have any uncertainty associated. This is
of course not the case: the wind resource can have variations from year to year, the terrain roughness
is usually not constant over the entire wind farm land, and the terrain topography is generally not
Chapter 6. Conclusions and Future Directions 100
accurate. Uncertainties for these and other variables need necessary to be accounted for in a robust
optimization methodology. Some studies have been conducted to account for the uncertainty of some of
these factors in wind farm simulation and optimization [54, 110, 129], but a comprehensive methodology
is still missing, especially when CFD models are used.
Optimal control of wind farm energy production
After a wind farm has been designed and installed in place, optimal control of energy production becomes
the next target for the wind farm operators. Wind farm control has been extensively studied in literature.
Simultaneously controlling the performance of each wind turbine has been shown to be an effective
strategy for optimal energy extraction [53]. Techniques for performance control can be identified as
pitch and yaw control [65]. Adjoint methods are suitable for this kind of applications [64] and we believe
that the developed adjoint formulation could be used as the basis for an innovative methodology for
optimal control of wind farm energy production.
Bibliography
[1] M. Abkar and F. Porte-Agel. Influence of atmospheric stability on wind-turbine wakes: A large-
eddy simulation study. Physics of Fluids, 27(3), 2015.
[2] J. F. Ainslie. Calculating the flowfield in the wake of wind turbines. Journal of Wind Engineering
and Industrial Aerodynamics, 27:213–224, 1988.
[3] I. Ammara, C. Leclerc, and C. Masson. A Viscous Three-Dimensional Differential/Actuator-Disk
Method for the Aerodynamic Analysis of Wind Farms. Journal of Solar Energy Engineering,
124(4):345, 2002.
[4] W. K. Anderson and V. Venkatakrishnan. Aerodynamic design optimization on unstructured grids
with a continuous adjoint formulation. Computers & Fluids, 28(4-5):443–480, 1999.
[5] E. G. A. Antonini, G. Bedon, S. De Betta, L. Michelini, M. Raciti Castelli, and E. Benini. In-
novative Discrete-Vortex Model for Dynamic Stall Simulations. AIAA Journal, 53(2):479–485,
2015.
[6] E. G. A. Antonini, D. A. Romero, and C. H. Amon. Analysis and Modifications of Turbulence
Models for Wind Turbine Wake Simulations in Atmospheric Boundary Layers. In Proceedings of the
ASME 2016 International Mechanical Engineering Congress & Exposition, volume 6B, Phoenix,
Arizona, USA, nov 2016.
[7] E. G. A. Antonini, D. A. Romero, and C. H. Amon. Analysis and Modifications of Turbulence
Models for Wind Turbine Wake Simulations in Atmospheric Boundary Layers. Journal of Solar
Energy Engineering, 140(3):031007, 2018.
[8] E. G. A. Antonini, D. A. Romero, and C. H. Amon. Continuous adjoint formulation for wind farm
layout optimization: A 2D implementation. Applied Energy, 228:2333–2345, 2018.
101
Bibliography 102
[9] D. Astolfi, F. Castellani, and L. Terzi. A Study of Wind Turbine Wakes in Complex Ter-
rain Through RANS Simulation and SCADA Data. Journal of Solar Energy Engineering,
140(3):031001, 2018.
[10] M. Ayala, J. Maldonado, E. Paccha, and C. Riba. Wind Power Resource Assessment in Complex
Terrain: Villonaco Case-study Using Computational Fluid Dynamics Analysis. Energy Procedia,
107(September 2016):41–48, 2017.
[11] R. J. Barthelmie, S. T. Frandsen, M. N. Nielsen, S. C. Pryor, P.-E. Rethore, and H. E. Jørgensen.
Modelling and Measurements of Power Losses and Turbulence Intensity in Wind Turbine Wakes
at Middelgrunden Offshore Wind Farm. Wind Energy, pages 517–528, 2007.
[12] R. J. Barthelmie, K. S. Hansen, S. T. Frandsen, O. Rathmann, J. G. Schepers, W. Schlez,
J. Phillips, K. G. Rados, A. Zervos, E. S. Politis, and P. K. Chaviaropoulos. Modelling and Measur-
ing Flow and Wind Turbine Wakes in Large Wind Farms Offshore. Wind Energy, 12(5):431–444,
2009.
[13] R. J. Barthelmie and L. E. Jensen. Evaluation of wind farm effi ciency and wind turbine wakes at
the Nysted offshore wind farm. Wind Energy, 13:573–586, 2010.
[14] R. J. Barthelmie and S. C. Pryor. Potential contribution of wind energy to climate change miti-
gation. Nature Climate Change, 4(8):684–688, 2014.
[15] R. J. Barthelmie, S. C. Pryor, S. T. Frandsen, K. S. Hansen, J. G. Schepers, K. G. Rados, W. Schlez,
A. Neubert, L. E. Jensen, and S. Neckelmann. Quantifying the Impact of Wind Turbine Wakes
on Power Output at Offshore Wind Farms. Journal of Atmospheric and Oceanic Technology,
27(8):1302–1317, 2010.
[16] G. Bedon, E. G. A. Antonini, S. De Betta, M. Raciti Castelli, and E. Benini. Evaluation of
the different aerodynamic databases for vertical axis wind turbine simulations. Renewable and
Sustainable Energy Reviews, 40:386–399, 2014.
[17] M. Bilbao and E. Alba. Simulated Annealing for Optimization of Wind Farm Annual Profit. In
Proocedings of the 2nd International Symposium on Logistics and Industrial Informatics, pages
1–5, Linz, Austria, 2009.
[18] J. Bleeg, M. Purcell, R. Ruisi, and E. Traiger. Wind Farm Blockage and the Consequences of
Neglecting Its Impact on Energy Production. Energies, 11(6):1609, 2018.
Bibliography 103
[19] B. Blocken, T. Stathopoulos, and J. Carmeliet. CFD simulation of the atmospheric boundary
layer: wall function problems. Atmospheric Environment, 41(2):238–252, 2007.
[20] S. P. Breton, J. Sumner, J. N. Sørensen, K. S. Hansen, S. Sarmast, and S. Ivanell. A survey
of modelling methods for high-fidelity wind farm simulations using large eddy simulation. Philo-
sophical Transactions of the Royal Society A: Mathematical, Physical and Engineering Sciences,
375(2091), 2017.
[21] M. J. Burke and J. C. Stephens. Energy democracy: Goals and policy instruments for sociotechnical
transitions. Energy Research and Social Science, 33(September):35–48, 2017.
[22] M. J. Burke and J. C. Stephens. Political power and renewable energy futures: A critical review.
Energy Research and Social Science, 35(November 2017):78–93, 2018.
[23] D. Cabezon, K. S. Hansen, and R. J. Barthelmie. Analysis and validation of CFD wind farm
models in complex terrain. Effects induced by topography and wind turbines. In Proceedings of
the European Wind Energy Conference, 2010.
[24] D. Cabezon, E. Migoya, and A. Crespo. Comparison of turbulence models for the computational
fluid dynamics simulation of wind turbine wakes in the atmospheric boundary layer. Wind Energy,
14(7):909–921, 2011.
[25] M. Calaf, C. Meneveau, and J. Meyers. Large eddy simulation study of fully developed wind-
turbine array boundary layers. Physics of Fluids, 22(1):1–16, 2010.
[26] Canadian Wind Energy Association. In Proceedings of the 33th CanWEA Annual Conference &
Exhibition, 2017.
[27] F. Castellani, D. Astolfi, M. Burlando, and L. Terzi. Numerical modelling for wind farm opera-
tional assessment in complex terrain. Journal of Wind Engineering and Industrial Aerodynamics,
147:320–329, 2015.
[28] F. Castellani, D. Astolfi, M. Mana, E. Piccioni, M. Becchetti, and L. Terzi. Investigation of
terrain and wake effects on the performance of wind farms in complex terrain using numerical and
experimental data. Wind Energy, 20(7):1277–1289, 2017.
[29] F. Castellani, D. Astolfi, E. Piccioni, and L. Terzi. Numerical and Experimental Methods for Wake
Flow Analysis in Complex Terrain. Journal of Physics: Conference Series, 625(1), 2015.
Bibliography 104
[30] C. Castro, C. Lozano, F. Palacios, and E. Zuazua. Systematic Continuous Adjoint Approach to
Viscous Aerodynamic Design on Unstructured Grids. AIAA Journal, 45(9):2125–2139, 2007.
[31] Y. Chen, H. Li, K. Jin, and Q. Song. Wind farm layout optimization using genetic algorithm with
different hub height wind turbines. Energy Conversion and Management, 70:56–65, 2013.
[32] S. Chowdhury, J. Zhang, A. Messac, and L. Castillo. Unrestricted wind farm layout optimiza-
tion (UWFLO): Investigating key factors influencing the maximum power generation. Renewable
Energy, 38(1):16–30, 2012.
[33] M. J. Churchfield, S. Lee, J. Michalakes, and P. J. Moriarty. A numerical study of the effects of
atmospheric and wake turbulence on wind turbine dynamics. Journal of Turbulence, 13(May):N14,
2012.
[34] M. J. Churchfield, S. Lee, P. J. Moriarty, Y. Hao, M. A. Lackner, R. J. Barthelmie, J. K. Lundquist,
and G. S. Oxley. A Comparison of the Dynamic Wake Meandering Model, Large-Eddy Simulation,
and Field Data at the Egmond aan Zee Offshore Wind Plant. 33rd Wind Energy Symposium, pages
1–20, 2015.
[35] M. J. Churchfield, Q. Wang, A. Scholbrock, T. Herges, T. Mikkelsen, and M. Sjoholm. Using
High-Fidelity Computational Fluid Dynamics to Help Design a Wind Turbine Wake Measurement
Experiment. Journal of Physics: Conference Series, 753(Torque):032009, 2016.
[36] J. W. Cleijne. Results of Sexbierum wind farm; single wake measurements. Technical report, TNO
Institute of Enviromental and Energy Technology, Apeldoorn, The Netherlands, 1993.
[37] J. Cleve, M. Greiner, P. Enevoldsen, B. Birkemose, and L. E. Jensen. Model-based Analysis of
Wake-flow Data in the Nysted Offshore Wind Farm. Wind Energy, 12(2):125–135, 2009.
[38] G. Crasto and F. Castellani. Wakes calculation in a offshore wind farm. Wind Engineering,
37(3):269–280, 2013.
[39] A. C. Creech, W.-G. Fruh, and P. Clive. Actuator volumes and hr-adaptive methods for three-
dimensional simulation of wind turbine wakes and performance. Wind Energy, 15(6):847–863,
2012.
[40] A. Crespo, L. Chacon, J. Hernandez, F. Manuel, and J. C. Grau. UPMPARK: a parabolic 3D
code to model wind farms. In European Wind Energy Conference and Exhibition, pages 454–459,
1994.
Bibliography 105
[41] A. Crespo and J. Hernandez. Numerical modelling of the flow field in a wind turbine wake. In
Proceedings of the 3rd Joint ASCE/ASME Mechanics Conference, Forum on Turbulent Flows, La
Jolla, CA, USA, 1989.
[42] A. Crespo and J. Hernandez. Parabolic and Elliptic Models of Wind-Turbine Wakes, Application
to the Interaction between Different Wakes and Turbines. PHOENICS Journal of Computational
Fluid Dynamics, 4:104–127, 1991.
[43] A. Crespo, F. Manuel, D. Moreno, E. Fraga, and J. Hernandez. Numerical analysis of wind turbine
wakes. In Proceedings of the Delphi Workshop on ”Wind Energy-Applications”, Delphi, Greece,
1985.
[44] M. Dorenkamper, B. Witha, G. Steinfeld, D. Heinemann, and M. Kuhn. The impact of stable
atmospheric boundary layers on wind-turbine wakes within offshore wind farms. Journal of Wind
Engineering and Industrial Aerodynamics, 144:146–153, 2015.
[45] B. L. Du Pont and J. Cagan. An Extended Pattern Search Approach to Wind Farm Layout
Optimization. Journal of Mechanical Design, 134(8):081002, 2012.
[46] P. A. Durbin and B. A. Pettersson Reif. Statistical Theory and Modeling for Turbulent Flows.
John Wiley and Sons, 2011.
[47] R. P. Dwight and J. Brezillon. Effect of Approximations of the Discrete Adjoint on Gradient-Based
Optimization. AIAA Journal, 44(12):3022–3031, 2006.
[48] A. El Kasmi and C. Masson. An extended k-epsilon model for turbulent flow through horizontal-
axis wind turbines. Journal of Wind Engineering and Industrial Aerodynamics, 96(1):103–122,
2008.
[49] A. Emami and P. Noghreh. New approach on optimization in placement of wind turbines within
wind farm by genetic algorithms. Renewable Energy, 35(7):1559–1564, 2010.
[50] G. Espana, S. Aubrun, S. Loyer, and P. Devinant. Wind tunnel study of the wake meandering
downstream of a modelled wind turbine as an effect of large scale turbulent eddies. Journal of
Wind Engineering and Industrial Aerodynamics, 101:24–33, 2012.
[51] European Commission. Energy 2020, A strategy for competitive, sustainable and secure energy .
Technical report, 2010.
Bibliography 106
[52] J. Feng and W. Z. Shen. Solving the wind farm layout optimization problem using random search
algorithm. Renewable Energy, 78:182–192, 2015.
[53] P. Fleming, P. M. Gebraad, S. Lee, J.-W. van Wingerden, K. Johnson, M. J. Churchfield, J. Micha-
lakes, P. Spalart, and P. J. Moriarty. Simulation comparison of wake mitigation control strategies
for a two-turbine case. Wind Energy, 18(12):2135–2143, 2015.
[54] D. Foti, X. Yang, and F. Sotiropoulos. Uncertainty quantification of infinite aligned wind farm per-
formance using non-intrusive polynomial chaos and a distributed roughness model. Wind Energy,
20(6):945–958, 2017.
[55] D. Foti, X. Yang, and F. Sotiropoulos. Similarity of wake meandering for different wind turbine
designs for different scales. Journal of Fluid Mechanics, 842:5–25, 2018.
[56] S. T. Frandsen, R. J. Barthelmie, S. C. Pryor, O. Rathmann, S. Larsen, J. Højstrup, and
M. Thøgersen. Analytical Modelling of Wind Speed Deficit in Large Offshore Wind Farms. Wind
Energy, 9(1-2):39–53, 2006.
[57] S. W. Funke, P. E. Farrell, and M. D. Piggott. Tidal turbine array optimisation using the adjoint
approach. Renewable Energy, 63:658–673, 2014.
[58] M. Gaumond, P.-E. Rethore, A. Bechmann, S. Ott, G. C. Larsen, A. Pena, and K. S. Hansen.
Benchmarking of wind turbine wake models in large offshore wind farms. In Proceedings of the
Science of Making Torque From Wind, pages 9–11, 2012.
[59] M. Gaumond, P.-E. Rethore, S. Ott, A. Pena, A. Bechmann, and K. S. Hansen. Evaluation of the
wind direction uncertainty and its impact on wake modeling at the Horns Rev offshore wind farm.
Wind Energy, 17(8):1169–1178, 2014.
[60] M. M. Gibson and B. E. Launder. Ground effects on pressure fluctuations in the atmospheric
boundary layer. Journal of Fluid Mechanics, 86(3):491–511, 1978.
[61] M. B. Giles and N. A. Pierce. An Introduntion to the Adjoint Approach to Design. Flow, Turbulence
and Combustion, 65(3-4):393–415, 2000.
[62] Global Wind Energy Council. Global Wind Statistics 2017. Technical report, 2018.
[63] T. Gocmen, M. P. van der Laan, P.-E. Rethore, A. P. Diaz, G. C. Larsen, and S. Ott. Wind
turbine wake models developed at the technical university of Denmark: A review. Renewable and
Sustainable Energy Reviews, 60:752–769, 2016.
Bibliography 107
[64] J. P. Goit and J. Meyers. Optimal control of wind farm power extraction in large eddy simulations.
In Proceedings of the 32nd ASME Wind Energy Symposium, National Harbor, Maryland, USA,
2014.
[65] J. P. Goit and J. Meyers. Optimal control of energy extraction in wind-farm boundary layers.
Journal of Fluid Mechanics, 768:5–50, 2015.
[66] C. Gorle, C. Garcıa-Sanchez, and G. Iaccarino. Quantifying inflow and RANS turbulence model
form uncertainties for wind engineering flows. Journal of Wind Engineering and Industrial Aero-
dynamics, 144:202–212, 2015.
[67] C. Gorle and G. Iaccarino. A framework for epistemic uncertainty quantification of turbulent scalar
flux models for Reynolds-averaged Navier-Stokes simulations. Physics of Fluids, 25(5), 2013.
[68] S. A. Grady, M. Y. Hussaini, and M. M. Abdullah. Placement of wind turbines using genetic
algorithms. Renewable Energy, 30(2):259–270, 2005.
[69] S.-E. Gryning, E. Batchvarova, B. Brummer, H. E. Jørgensen, and S. Larsen. On the extension
of the wind profile over homogeneous terrain beyond the surface boundary layer. Boundary-Layer
Meteorology, 124(2):251–268, 2007.
[70] D. Guirguis, D. A. Romero, and C. H. Amon. Toward efficient optimization of wind farm layouts:
Utilizing exact gradient information. Applied Energy, 179:110–123, 2016.
[71] D. Guirguis, D. A. Romero, and C. H. Amon. Gradient-based multidisciplinary design of wind
farms with continuous-variable formulations. Applied Energy, 197:279–291, 2017.
[72] K. S. Hansen, R. J. Barthelmie, L. E. Jensen, and A. Sommer. The impact of turbulence intensity
and atmospheric stability on power deficits due to wind turbine wakes at Horns Rev wind farm.
Wind Energy, 15(1):183–196, 2012.
[73] K. S. Hansen, P.-E. Rethore, J. M. L. M. Palma, B. G. Hevia, J. M. Prospathopoulos, A. Pena,
S. Ott, J. G. Schepers, A. Palomares, M. P. van der Laan, and P. Volker. Simulation of wake
effects between two wind farms. In Journal of Physics: Conference Series, volume 625, 2015.
[74] M. O. L. Hansen. Aerodynamics of Wind Turbines. 2008.
[75] M. O. L. Hansen, J. N. Sørensen, S. Voutsinas, N. N. Sørensen, and H. A. Madsen. State of the art
in wind turbine aerodynamics and aeroelasticity. Progress in Aerospace Sciences, 42(4):285–330,
2006.
Bibliography 108
[76] J. Herbert-Acero, J. Franco-Acevedo, M. Valenzuela-Rendon, and O. Probst-Oleszewski. Linear
wind farm layout optimization through computational intelligence. In Proceedings of the Mexican
international conference on artificial intelligence, pages 692–703, 2009.
[77] J. F. Herbert-Acero, O. Probst, P.-E. Rethore, G. C. Larsen, and K. K. Castillo-Villar. A Review of
Methodological Approaches for the Design and Optimization of Wind Farms. Energies, 7(11):6930–
7016, 2014.
[78] P. Hou, W. Hu, C. Chen, M. Soltani, and Z. Chen. Optimization of offshore wind farm layout in
restricted zones. Energy, 113:487–496, 2016.
[79] P. Hou, W. Hu, M. Soltani, C. Chen, and Z. Chen. Combined optimization for offshore wind
turbine micro siting. Applied Energy, 189:271–282, 2017.
[80] P. Hou, W. Hu, M. Soltani, and Z. Chen. Optimized Placement of Wind Turbines in Large-
Scale Offshore Wind Farm Using Particle Swarm Optimization Algorithm. IEEE Transactions on
Sustainable Energy, 6(4):1272–1282, 2015.
[81] M. F. Howland, J. Bossuyt, L. A. Martınez-Tossas, J. Meyers, and C. Meneveau. Wake structure
in actuator disk models of wind turbines in yaw under uniform inflow conditions. Journal of
Renewable and Sustainable Energy, 8(4), 2016.
[82] International Energy Agency. Wind, Annual Report. Technical report, 2016.
[83] International Energy Agency. Key World Energy Statistics. Technical report, 2017.
[84] International Renewable Energy Agency. REmap 2030: A Renewable Energy Roadmap. Technical
report, Abu Dhabi, United Arab Emirates, 2014.
[85] A. Jameson. Aerodynamic design via control theory. Scientific Computing, 3(3):233–260, 1988.
[86] A. Jameson, S. Shankaran, and L. Martinelli. Continuous Adjoint Method for Unstructured Grids.
AIAA Journal, 46(5):1226–1240, 2008.
[87] N. O. Jensen. A Note on Wind Generator Interaction. Technical report, Risø National Laboratory,
Roskilde, Denmark, 1983.
[88] A. Jimenez, A. Crespo, E. Migoya, and J. Garcıa. Advances in large-eddy simulation of a wind
turbine wake. Journal of Physics: Conference Series, 75(1), 2007.
Bibliography 109
[89] A. Jimenez, A. Crespo, E. Migoya, and J. Garcıa. Large-eddy simulation of spectral coherence in
a wind turbine wake. Environmental Research Letters, 3(1), 2008.
[90] B. Johnson, J. Francis, J. Howe, and J. Whitty. Computational Actuator Disc Models for Wind
and Tidal Applications. Journal of Renewable Energy, 2014, 2014.
[91] S. G. Johnson. The NLopt nonlinear-optimization package. http://ab-initio.mit.edu/nlopt. ac-
cessed: June 2016.
[92] W. P. Jones and B. E. Launder. The prediction of laminarization with a two-equation model of
turbulence. International Journal of Heat and Mass Transfer, 15(2):301–314, 1972.
[93] I. Katic, J. Hojstrup, and N. O. Jensen. A simple model for cluster efficiency. In Proceedings of
the European Wind Energy Conference and Exhibition, Rome, Italy, 1986.
[94] S. A. Khan and S. Rehman. Iterative non-deterministic algorithms in on-shore wind farm design:
A brief survey. Renewable and Sustainable Energy Reviews, 19:370–384, 2013.
[95] R. N. King, K. Dykes, P. Graf, and P. E. Hamlington. Optimization of wind plant layouts using
an adjoint approach. Wind Energy Science, 2(1):115–131, 2017.
[96] R. N. King, P. E. Hamlington, K. Dykes, and P. Graf. Adjoint optimization of wind farm layouts
for systems engineering analysis. Proceedings of the 34th Wind Energy Symposium, 2016.
[97] J. Kiviluoma, H. Holttinen, D. Weir, R. Scharff, L. Soder, N. Menemenlis, N. A. Cutululis, I. Danti
Lopez, E. Lannoye, A. Estanqueiro, E. Gomez-Lazaro, Q. Zhang, J. Bai, Y.-H. Wan, and M. Mil-
ligan. Variability in large-scale wind power generation. Wind Energy, 19(9):1649–1665, 2016.
[98] D. Kraft. A software package for sequential quadratic programming. Technical report, Institut fur
Dynamik der Flugsysteme, Oberpfaffenhofen, Germany, 1988.
[99] J. Y. Kuo, D. A. Romero, and C. H. Amon. A mechanistic semi-empirical wake interaction model
for wind farm layout optimization. Energy, 93:2157–2165, 2015.
[100] J. Y. Kuo, D. A. Romero, J. C. Beck, and C. H. Amon. Wind farm layout optimization on
complex terrains Integrating a CFD wake model with mixed-integer programming. Applied Energy,
178:404–414, 2016.
[101] A. Kusiak and Z. Song. Design of wind farm layout for maximum wind energy capture. Renewable
Energy, 35(3):685–694, 2010.
Bibliography 110
[102] J. Lange, J. Mann, J. Berg, D. Parvu, R. Kilpatrick, A. Costache, J. Chowdhury, K. Siddiqui,
and H. Hangan. For wind turbines in complex terrain, the devil is in the detail. Environmental
Research Letters, 12(9):094020, 2017.
[103] G. C. Larsen. A Simple Wake Calculation Procedure. Technical report, Risø National Laboratory,
Roskilde, Denmark, 1988.
[104] B. E. Launder, G. J. Reece, and W. Rodi. Progress in the development of a Reynolds-stress
turbulence closure. Journal of Fluid Mechanics, 68(3):537–566, 1975.
[105] B. E. Launder and B. I. Sharma. Application of the energy-dissipation model of turbulence to the
calculation of flow near a spinning disc. In Letters in Heat and Mass Transfer, volume 1, pages
131–137, 1974.
[106] X. Lu, M. B. McElroy, and J. Kiviluoma. Global potential for wind-generated electricity. Proceed-
ings of the National Academy of Sciences, 106(27):10933–10938, 2009.
[107] A. Makridis and J. Chick. Validation of a CFD model of wind turbine wakes with terrain effects.
Journal of Wind Engineering and Industrial Aerodynamics, 123:12–29, 2013.
[108] D. Mehta, A. H. van Zuijlen, B. Koren, J. G. Holierhoek, and H. Bijl. Large Eddy Simulation of
wind farm aerodynamics: A review. Journal of Wind Engineering and Industrial Aerodynamics,
133:1–17, 2014.
[109] F. R. Menter. Two-equation eddy-viscosity turbulence models for engineering applications. AIAA
Journal, 32(8):1598–1605, 1994.
[110] A. Messac, S. Chowdhury, and J. Zhang. Characterizing and mitigating the wind resource-based
uncertainty in farm performance. Journal of Turbulence, 13:N13, 2012.
[111] E. Migoya, A. Crespo, J. Garcıa, F. Moreno, F. Manuel, A. Jimenez, and A. Costa. Comparative
study of the behavior of wind-turbines in a wind farm. Energy, 32(10):1871–1885, 2007.
[112] G. Mosetti, C. Poloni, and D. Diviacco. Optimization of wind turbine positioning in large wind
farms by means of a genetic algorithm. Journal of Wind Engineering and Industrial Aerodynamics,
51(1):105–116, 1994.
[113] A. Murali and R. G. Rajagopalan. Numerical simulation of multiple interacting wind turbines on
a complex terrain. Journal of Wind Engineering and Industrial Aerodynamics, 162:57–72, 2017.
Bibliography 111
[114] C. Othmer. A continuous adjoint formulation for the computation of topological and surface
sensitivities of ducted flow. International Journal for Numerical Methods in Fluids, 58(8):861–877,
2008.
[115] H. A. Panofsky and J. A. Dutton. Atmospheric Turbulence: Models and Methods for Engineering
Applications. John Wiley & Sons, New York, New York, USA, 1984.
[116] D. I. Papadimitriou and K. C. Giannakoglou. A continuous adjoint method with objective function
derivatives based on boundary integrals, for inviscid and viscous flows. Computers and Fluids,
36(2):325–341, 2007.
[117] A. Pena, P.-E. Rethore, C. B. Hasager, and K. S. Hansen. Results of wake simulations at the
Horns Rev I and Lillgrund wind farms using the modified Park model. Technical report, Technical
University of Denmark, Copenhagen, Denmark, 2013.
[118] A. Pena, P.-E. Rethore, and M. P. van der Laan. On the application of the Jensen wake model using
a turbulence-dependent wake decay coefficient: the Sexbierum case. Wind Energy, 19(4):763–776,
2016.
[119] B. Perez, R. Mınguez, and R. Guanche. Offshore wind farm layout optimization using mathematical
programming techniques. Renewable Energy, 53:389–399, 2013.
[120] E. L. Petersen. In search of the wind energy potential. Journal of Renewable and Sustainable
Energy, 9(5), 2017.
[121] J. T. G. Pierik, J. W. M. Dekker, H. Braam, B. H. Bulder, D. Winkelaar, G. C. Larsen, E. Mor-
fiadakis, P. Chaviaropoulos, A. Derrick, and J. P. Molly. European wind turbine standards II
(EWTS-II). In Proceedings of Wind energy for the next millennium, pages 568–571, 1999.
[122] R.-E. Plessix. A review of the adjoint-state method for computing the gradient of a functional
with geophysical applications. Geophysical Journal International, 167(2):495–503, 2006.
[123] E. S. Politis, J. M. Prospathopoulos, D. Cabezon, K. S. Hansen, P. K. Chaviaropoulos, and R. J.
Barthelmie. Modeling wake effects in large wind farms in complex terrain: the problem, the
methods and the issues. Wind Energy, 15(1):161–182, 2012.
[124] S. Pookpunt and W. Ongsakul. Optimal placement of wind turbines within wind farm using
binary particle swarm optimization with time-varying acceleration coefficients. Renewable Energy,
55:266–276, 2013.
Bibliography 112
[125] S. B. Pope. Turbulent flows. Cambridge University Press, 2001.
[126] F. Porte-Agel, Y.-T. Wu, and C. H. Chen. A numerical study of the effects ofwind direction on
turbine wakes and power losses in a largewind farm. Energies, 6(10):5297–5313, 2013.
[127] J. M. Prospathopoulos, E. S. Politis, and P. K. Chaviaropoulos. Modelling Wind Turbine Wakes
in Complex Terrain. In Proceedings of the European Wind Energy Conference, Brussels, Belgium,
2008.
[128] J. M. Prospathopoulos, E. S. Politis, K. G. Rados, and P. K. Chaviaropoulos. Evaluation of
the effects of turbulence model enhancements on wind turbine wake predictions. Wind Energy,
14(2):285–300, 2011.
[129] J. Quick, K. Dykes, P. Graf, and F. Zahle. Optimization under Uncertainty of Site-Specific Turbine
Configurations. Journal of Physics: Conference Series, 753(6), 2016.
[130] R. Rahmani, A. Khairuddin, S. M. Cherati, and H. A. Mahmoud Pesaran. A novel method for
optimal placing wind turbines in a wind farm using particle swarm optimization (PSO). In 2010
Conference Proceedings IPEC, pages 134–139, oct 2010.
[131] D. J. Renkema. Validation of wind turbine wake models. Master’s thesis, Delft University of
Tecnology, 2007.
[132] P.-E. Rethore. Wind Turbine Wake in Atmospheric Turbulence. PhD thesis, Aalborg University,
2009.
[133] P.-E. Rethore, N. N. Sørensen, A. Bechmann, and F. Zhale. Study of the atmospheric wake
turbulence of a CFD actuator disc model. European Wind Energy Conference and Exhibition
2009, 6:4054–4062, 2009.
[134] P. J. Richards and R. P. Hoxey. Appropriate boundary conditions for computational wind en-
gineering models using the k- turbulence model. Journal of Wind Engineering and Industrial
Aerodynamics, 46-47:145–153, 1993.
[135] E. Rinne, H. Holttinen, J. Kiviluoma, and S. Rissanen. Effects of turbine technology and land use
on wind power resource potential. Nature Energy, 3(June):1–7, 2018.
[136] R. Saidur, N. A. Rahim, M. R. Islam, and K. H. Solangi. Environmental impact of wind energy.
Renewable and Sustainable Energy Reviews, 15(5):2423–2430, 2011.
Bibliography 113
[137] B. Sanderse, S. P. van der Pijl, and B. Koren. Review of computational fluid dynamics for wind
turbine wake aerodynamics. Wind Energy, 14(7):799–819, 2011.
[138] J. G. Schepers. ENDOW: validation and improvement of ECNs wake model. Technical Report
ECN-C-03-034, European Competition Network, 2003.
[139] F. Seim, A. R. Gravdahl, and M. S. Adaramola. Validation of kinematic wind turbine wake models
in complex terrain using actual windfarm production data. Energy, 123:742–753, 2017.
[140] J. Serrano Gonzalez, M. Burgos Payan, J. M. Riquelme Santos, and F. Gonzalez-Longatt. A
review and recent developments in the optimal wind-turbine micro-siting problem. Renewable and
Sustainable Energy Reviews, 30:133–144, 2014.
[141] J. Serrano Gonzalez, A. G. Gonzalez Rodriguez, J. Castro Mora, J. M. Riquelme Santos, and
M. Burgos Payan. Optimization of wind farm turbines layout using an evolutive algorithm. Re-
newable Energy, 35(8):1671–1681, 2010.
[142] R. Shakoor, M. Y. Hassan, A. Raheem, and Y. K. Wu. Wake effect modeling: A review of
wind farm layout optimization using Jensen’s model. Renewable and Sustainable Energy Reviews,
58:1048–1059, 2016.
[143] M. Shives and C. Crawford. Adapted two-equation turbulence closures for actuator disk RANS
simulations of wind & tidal turbine wakes. Renewable Energy, 92:273–292, 2016.
[144] N. Simisiroglou, S. P. Breton, G. Crasto, K. S. Hansen, and S. Ivanell. Numerical CFD comparison
of Lillgrund employing RANS. Energy Procedia, 53:342–351, 2014.
[145] J. N. Sørensen and A. Myken. Unsteady actuator disc model for horizontal axis wind turbines.
Journal of Wind Engineering and Industrial Aerodynamics, 39(1-3):139–149, 1992.
[146] C. G. Speziale, S. Sarkar, and T. B. Gatski. Modelling the pressurestrain correlation of turbulence
: an invariant dynamical systems approach. Journal of Fluid Mechanics, 227:245–272, 1991.
[147] R. J. A. M. Stevens and C. Meneveau. Flow Structure and Turbulence in Wind Farms. Annual
Review of Fluid Mechanics, 49(1):311–339, 2017.
[148] T. F. Stocker, D. Qin, G.-K. Plattner, M. Tignor, S. Allen, J. Boschung, A. Nauels, Y. Xia,
V. Bex, and P. M. Midgley. IPCC, 2013: Summary for Policymakers. In Climate Change 2013:
The Physical Science Basis. Contribution of Working Group I to the Fifth Assessment Report of
the Intergovernmental Panel on Climate Change, 2013.
Bibliography 114
[149] A. Stuck. Adjoint NavierStokes Methods for Hydrodynamic Shape Optimisation. PhD thesis,
Technischen Universitat Hamburg, 2012.
[150] M. Talavera and F. Shu. Experimental study of turbulence intensity influence on wind turbine
performance and wake recovery in a low-speed wind tunnel. Renewable Energy, 109:363–371, 2017.
[151] G. J. Taylor. Wake measurements on the Nibe wind-turbines in Denmark. Technical report,
National Power - Technology and Environment Centre, 1990.
[152] G. Tescione, C. J. Simao Ferreira, and G. J. W. van Bussel. Analysis of a free vortex wake model
for the study of the rotor and near wake flow of a vertical axis wind turbine. Renewable Energy,
87:552–563, 2016.
[153] The OpenFOAM Foundation Ltd. OpenFOAM 2.4.0. http://www.openfoam.org/. accessed: June
2016.
[154] D. Thevenin and G. Janiga. Optimization and Computational Fluid Dynamics. Springer, 2008.
[155] S. D. O. Turner, D. A. Romero, P. Y. Zhang, C. H. Amon, and T. C. Y. Chan. A new mathematical
programming approach to optimize wind farm layouts. Renewable Energy, 63:674–680, 2014.
[156] United Nations Framework Convention on Climate Change. Paris Agreement, 2015.
[157] S. V. Valentine. Emerging symbiosis: Renewable energy and energy security. Renewable and
Sustainable Energy Reviews, 15(9):4572–4578, 2011.
[158] M. P. van der Laan, N. N. Sørensen, P.-E. Rethore, J. Mann, M. C. Kelly, N. Troldborg, J. G.
Schepers, and E. Machefaux. An improved k- model applied to a wind turbine wake in atmospheric
turbulence. Wind Energy, 18(5):889–907, 2015.
[159] L. J. Vermeer, J. N. Sørensen, and A. Crespo. Wind turbine wake aerodynamics. Progress in
Aerospace Sciences, 39(6-7):467–510, 2003.
[160] L. Vervecken, J. Camps, and J. Meyers. Accounting for wind-direction fluctuations in Reynolds-
averaged simulation of near-range atmospheric dispersion. Atmospheric Environment, 72:142–150,
2013.
[161] L. Vollmer, G. Steinfeld, D. Heinemann, and M. Kuhn. Estimating the wake deflection down-
stream of a wind turbine in different atmospheric stabilities: an LES study. Wind Energy Science,
1(2):129–141, 2016.
Bibliography 115
[162] C. Wan, J. Wang, G. Yang, and X. Zhang. Optimal micro-siting of wind farms by particle swarm
optimization. In Proceedings of the international conference on swarm intelligence, pages 198–205,
2010.
[163] K. P. Waye and E. Ohrstrom. Psycho-acoustic characters of relevance for annoyance of wind
turbine noise. Journal of Sound and Vibration, 250(1):65–73, 2002.
[164] H. G. Weller, G. Tabor, H. Jasak, and C. Fureby. A tensorial approach to computational continuum
mechanics using object-oriented techniques. Computers in Physics, 12(6):620, 1998.
[165] D. C. Wilcox. Reassessment of the Scale-Determining Equation for Advanced Turbulence Models.
AIAA Journal, 26(11):1299–1310, 1988.
[166] D. C. Wilcox. Turbulence Modeling for CFD. DCW Industries, 1994.
[167] Y.-T. Wu and F. Porte-Agel. Atmospheric turbulence effects on wind-turbine wakes: An LES
study. Energies, 5(12):5340–5362, 2012.
[168] Y.-T. Wu and F. Porte-Agel. Simulation of Turbulent Flow Inside and Above Wind Farms: Model
Validation and Layout Effects. Boundary-Layer Meteorology, 146(2):181–205, 2012.
[169] S. Yamani Douzi Sorkhabi, D. A. Romero, G. K. Yan, M. D. Gu, J. Moran, M. Morgenroth, and
C. H. Amon. The impact of land use constraints in multi-objective energy-noise wind farm layout
optimization. Renewable Energy, 85:359–370, 2016.
[170] X. Yang, S. Kang, and F. Sotiropoulos. Computational study and modeling of turbine spacing
effects infinite aligned wind farms. Physics of Fluids, 24(11), 2012.
[171] W. Yin Kwong, P. Y. Zhang, D. A. Romero, J. Moran, M. Morgenroth, and C. H. Amon. Multi-
Objective Wind Farm Layout Optimization Considering Energy Generation and Noise Propagation
With NSGA-II. Journal of Mechanical Design, 136(9):091010, 2014.
[172] P. Y. Zhang, D. A. Romero, J. C. Beck, and C. H. Amon. Solving wind farm layout optimization
with mixed integer programming and constraint programming. In Integration of AI and OR
Techniques in Constraint Programming for Combinatorial Optimization Problems, pages 284–299,
2013.