Projects per year
Abstract
This thesis presents a methodology to enable gradient-based high-fidelity shape optimization using computational fluid dynamics (CFD). Through several decades CFD solvers have matured as analysis tools. In the wind energy research community and industry they are often used to validate and improve lower-fidelity models which in turn are used in design. The next logical step is therefore to use CFD solvers in the context of optimization. This will push the envelope of performance further than we can with conventional methods by enabling the concurrent shaping of planform and cross-sectional shape. Subsequently, one can then include a high-fidelity structural solver to carry out aerostructural optimization. The aerodynamic and structural responses could then be closely tailored to lower loads and increase power production. This thesis details how to efficiently utilize a CFD solver in shape optimization, which is the necessary first step towards such a high-fidelity multidisciplinary optimization framework. The methodology to enable CFD-based shape optimization presented in this thesis is but one of several possibilities. One alternative way to do so is to carry out gradient-free shape optimization. Here, the implementation cost is low. However, high-fidelity shape optimizations can easily involve hundreds of design variables in order to accurately model the rotor and for such a high dimension of the parameter space the gradient-free methods are likely to incur an excessive amount of CFD evaluations before convergence is achieved. To use a gradient-based method one could approximate the gradient with the finite difference method. Still, the method scales poorly with the number of design variables and the gradient precision is inaccurate. While one can remedy the gradient inaccuracy with the so-called complex-step method there is no immediate cure for the prohibitive scaling. Although the above mentioned methods have all been used in several shape optimization efforts we advocate for the use of the adjoint approach to enable high-fidelity shape optimization. The adjoint approach allows for a gradient computation whose computation cost is independent of the number of design variables. Furthermore, the underlying mathematics are intriguing and stunningly counterintuitive. One is bound to appreciate the elegance
of the method as soon as it is grasped, but there are certainly also drawbacks for the adjoint approach. Most importantly, the development of an adjoint method from scratch
is extremely time consuming. Depending on the CFD solver at hand it may take years to complete. In the hope that the account may be of help to other researchers we will
therefore describe this process in great detail. In the process of refining the shape optimization methodology presented herein we set several goals to be attained. These were all achieved during the project and are listed below:
• As an initial step we sought to carry out a comprehensive literature review particularly focused on high-fidelity shape optimization efforts within wind energy research. The (now published) survey helped us map out the promising high-fidelity optimization community which has started to emerge in wind energy.
• The second goal was to develop a deformation library from scratch. The tool should be based on proven methods, have an easy-to-use Python interface and it should provide analytical gradients to support an efficient gradient evaluation. This tool was named FFDlib, and is be presented in Chapter 5.
• The most important goal of this project was to develop an adjoint solver to be able to compute gradients in an efficient manner. A large part of this thesis is dedicated to describe exactly how we did this. In fact, we plan to develop numerous types of adjoint solvers. In the present work we document the first three adjoint solver types. Importantly, the developmental efforts helped identify a road map which has been of immense help during development. Here, there are seven distinct steps to complete. Each step is meticulously designed to isolate the source of error in the emerging code base. This is crucial considering that we have amassed up to 95 thousand lines of Fortran90 code for our adjoint solver (not counting the flow solver or FFDlib).
• Also the in-house CFD solver was enhanced during the project. As we will describe in Chapter 6 one can obtain machine accurate gradients from the flow solver itself albeit with a method that will not scale well with the number of design variables. Still, this enhancement of the flow solver is paramount to ensure a thorough debugging of the adjoint solver.
• A fifth goal was to set up a unifying numerical framework which should be userfriendly. To this end, we provided FFDlib and the adjoint solver with external interfaces. The framework is still maturing but can already be used to carry out high-fidelity shape optimizations. We conclude the thesis with a series of optimization test cases to demonstrate its capabilities.
• Finally, we mention an important and ongoing effort we have prioritized, i.e., to establish a collaboration with experts1 from the aerospace community. In
short, we extended one of the most advanced numerical optimization frameworks, MACH2, developed in the aerospace research community with forward- and reverse algorithmically differentiated routines for rotational viscous fluids and used it on a modern 10 MW reference wind turbine. This resulted in the most comprehensive high-fidelity aerodynamic shape optimization on a wind turbine to date which was recently published [71]. This study demonstrates that it is feasible to carry out large scale free-form shape optimization using CFD on wind turbines. An excerpt of the optimization results will be brought at the end of the thesis together with results from our own optimization framework.
As seen above, it is a laborious endeavor to implement an adjoint method for a CFD solver and use it in a context of optimization. Luckily, it is also a thrilling and exciting task opening up for endless scientific questions to be answered.
of the method as soon as it is grasped, but there are certainly also drawbacks for the adjoint approach. Most importantly, the development of an adjoint method from scratch
is extremely time consuming. Depending on the CFD solver at hand it may take years to complete. In the hope that the account may be of help to other researchers we will
therefore describe this process in great detail. In the process of refining the shape optimization methodology presented herein we set several goals to be attained. These were all achieved during the project and are listed below:
• As an initial step we sought to carry out a comprehensive literature review particularly focused on high-fidelity shape optimization efforts within wind energy research. The (now published) survey helped us map out the promising high-fidelity optimization community which has started to emerge in wind energy.
• The second goal was to develop a deformation library from scratch. The tool should be based on proven methods, have an easy-to-use Python interface and it should provide analytical gradients to support an efficient gradient evaluation. This tool was named FFDlib, and is be presented in Chapter 5.
• The most important goal of this project was to develop an adjoint solver to be able to compute gradients in an efficient manner. A large part of this thesis is dedicated to describe exactly how we did this. In fact, we plan to develop numerous types of adjoint solvers. In the present work we document the first three adjoint solver types. Importantly, the developmental efforts helped identify a road map which has been of immense help during development. Here, there are seven distinct steps to complete. Each step is meticulously designed to isolate the source of error in the emerging code base. This is crucial considering that we have amassed up to 95 thousand lines of Fortran90 code for our adjoint solver (not counting the flow solver or FFDlib).
• Also the in-house CFD solver was enhanced during the project. As we will describe in Chapter 6 one can obtain machine accurate gradients from the flow solver itself albeit with a method that will not scale well with the number of design variables. Still, this enhancement of the flow solver is paramount to ensure a thorough debugging of the adjoint solver.
• A fifth goal was to set up a unifying numerical framework which should be userfriendly. To this end, we provided FFDlib and the adjoint solver with external interfaces. The framework is still maturing but can already be used to carry out high-fidelity shape optimizations. We conclude the thesis with a series of optimization test cases to demonstrate its capabilities.
• Finally, we mention an important and ongoing effort we have prioritized, i.e., to establish a collaboration with experts1 from the aerospace community. In
short, we extended one of the most advanced numerical optimization frameworks, MACH2, developed in the aerospace research community with forward- and reverse algorithmically differentiated routines for rotational viscous fluids and used it on a modern 10 MW reference wind turbine. This resulted in the most comprehensive high-fidelity aerodynamic shape optimization on a wind turbine to date which was recently published [71]. This study demonstrates that it is feasible to carry out large scale free-form shape optimization using CFD on wind turbines. An excerpt of the optimization results will be brought at the end of the thesis together with results from our own optimization framework.
As seen above, it is a laborious endeavor to implement an adjoint method for a CFD solver and use it in a context of optimization. Luckily, it is also a thrilling and exciting task opening up for endless scientific questions to be answered.
Original language | English |
---|
Place of Publication | Roskilde, Denmark |
---|---|
Publisher | DTU Wind Energy |
Number of pages | 222 |
DOIs | |
Publication status | Published - 2020 |
Fingerprint
Dive into the research topics of 'High-Fidelity CFD-based Shape Optimization of Wind Turbine Blades'. Together they form a unique fingerprint.Projects
- 1 Finished
-
High Fidelity CFD-based Shape Optimization of Wind Turbine Blades
Madsen, M. H. A. (PhD Student), Zahle, F. (Main Supervisor), Andersen, S. J. (Supervisor), Sørensen, N. N. (Supervisor), Hanifi, A. (Examiner), Müller, J.-D. (Examiner) & Troldborg, N. (Examiner)
Technical University of Denmark
15/09/2016 → 05/03/2020
Project: PhD