Local flow and loads estimation on wake-affected wind turbines using graph neural networks and PyWake

Gregory Duthé*, Francisco de Nolasco Santos, Imad Abdallah, Pierre-Élouan Réthore, Wout Weijtjens, Eleni Chatzi, Christof Devriendt

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

44 Downloads (Pure)


The estimation of the flow conditions throughout a modern wind farm is a relevant albeit complex problem involving several different modelling scales. In this context, recent years have seen the rise of the demand - normally industry-driven - of quick, computationally inexpensive, wind farm flow field simulators upon which further calculations might be undertaken (e.g. power output, fatigue loads, etc.). Naturally, the trustworthiness of such models hinges upon their ability to accurately estimate wakes, under the evident trade-off between computational time and accuracy. One such simulator that has been recently gaining traction within the wind community is PyWake, a Python-based flow solver, with several possible add-ons and modularity options. Based on runs from PyWake, this contribution studies the applicability of graph neural networks (GNN) as a simultaneous wind turbine fleet, wind inflow and loads surrogate. As graphs are discrete mathematical sets of dependent objects, one can see how the layout-dependent interaction between wind turbines’ aerodynamics, from which wake arises, lends itself to be modelled as a graph. Thus, we introduce the use of GNNs for layout-agnostic joint modelling of rotor-averaged wind speed, turbulence intensity, power production and damage equivalent loads (DEL) on individual turbines of wind farms. To this end, probabilistic samples of inflow conditions from a Weibull distribution for wind speed, uniform wind direction and conditional normal distributions of wind shear and nacelle yaw angles are generated as main inflow properties in the numerical simulations. Additionally, arbitrary wind farm layouts are created based on varied geometric shapes with random parametrization (varying orientations, length/width ratio). Both the arbitrary layouts and the random inflow conditions are then used as inputs for PyWake. PyWake’s output, namely, rotor averaged wind speed, turbulence intensity, power production and DELs of each individual wind turbine in the wind farms, are used to train a general GNN model. We elect to implement an Encode-Process-Decode GNN as a graph learning model. We compare the performance of various approaches of the relational dependency representation (edge-forming techniques) amongst the nodes (wind turbines) on the graph, such as Delaunay triangulation, KNN, radius-based methods and fully connected scheme. In our analysis, we evaluate the accuracy of GNNs and its ability to generalize their joint predictions for unseen layouts and varying inflow conditions.
Original languageEnglish
Title of host publicationWake Conference 2023, 20/06/2023 - 22/06/2023, Visby, Sweden
Number of pages11
PublisherIOP Publishing
Publication date2023
Article number012014
Publication statusPublished - 2023
EventWake Conference 2023 - Visby, Sweden
Duration: 20 Jun 202322 Jun 2023


ConferenceWake Conference 2023
SeriesJournal of Physics: Conference Series


Dive into the research topics of 'Local flow and loads estimation on wake-affected wind turbines using graph neural networks and PyWake'. Together they form a unique fingerprint.

Cite this