Solar towers use many mirrors to concentrate sun light on a central, tower-mounted receiver. The receiver then transfers the resulting heat to a fluid (i.e. molten salt or air) that, in turn, exchanges the heat to steam which powers a turbine, generating electricity. The placement of the mirrors may lead to individual mirrors being blocked and shaded; this affects the efficiency (and therefore costs) of the power plant. The model is later used for an optimization process which finds the most efficient arrangement of mirrors.
A similar problem is given by offshore wind farms, where an optimal placement of wind turbines is wanted, such that the turbines are not placed in the wake of each other.
Within this practical course several different problems are offered from the field of simulation or optimization of solar thermal power plants or offshore wind farms:
Solar thermal power plants
- Raytracer The ray tracer unit traces rays from the sun and let them reflect on the surface of the mirrors in diretion of the receiver. This method can be accelerated using the convolution method. Implement this method, test it against the existing Monte Carlo method, investigate the influence of the receiver resolution on the run-time and generalize it for different sun shapes. (Issue #78)
- Heliostat Canting A heliostat consists of different facets. Implement a method which supports also triangular facets, such that the heliostats shape is a polygon (which approximate a circle). (Issue #73)
- Pattern optimization Revise existing pattern methods for Cornfield, Hexagonal Grid, Radial Staggered Grid, Biomimetic (Spiral), Contracted Honeycomb and Dense Packing. Use solutions close to the literature. Set up test cases for existing solar tower power plants as Helio100, PS10, Hami and Ashalim. Test all existing optimizer incl. the local search and Multi-Step Optimizer. Furthermore, develop an optimizer for heliostat groups. (Issue #72)
- Topography Support loading the topography, such that the height level of all heliostats can be considered. (Issue #70)
- Annual Simulation Accelerate the annual simulation with a smart choice of time points in a year, such that we do not simulate too often. (Issue #44 #89)
- Multiple receivers Towers can have several flat or cavity receivers. Now we just considered one receiver. Implement this feature and compare the influence on the solution using different receivers. (Issue #43)
- Storage Strategy The thermal power can be stored for several hours or days. Implement two methods, the buffer strategy and the PMP strategy, which store the hot fluid in an optimal way, considering a day and night tariff. (Issue #21)
- Optimal Cabling Support also solar field which are not aligned on circles, e.g. the Zhejiang power plant.
- Validation and Interface for WebApp Test all Service Functions, Write Gtests for all sub-models, Document all interfaces and communicate with the WebApp group. Support them by modifying the output of the simulation model. (Issue #79)
- Technical improvements Replace CGAL with Boost, Improve Cmake and update to latest version, Run Valgrind. (Issue #87)
Offshore wind farms
- Pattern optimization Revise existing pattern methods for Cornfield, Hexagonal Grid, Radial Staggered Grid, Biomimetic (Spiral), Contracted Honeycomb and Dense Packing. Use solutions close to the literature. Set up test cases for existing wind farms as e.g. Horns Rev, DanTysk and Sandbank. Test all existing optimizer incl. the local search and Multi-Step Optimizer. (Issue #42)
- Cost model Change the cost model, such that the costs for single turbines are considered. Consider also power losses. (Issue #10 and #43)
- 3D Printer Revise existing 3D printer function and replace replace CGAL, maybe just BOOST might do already a good job. Improve the existing wind turbine 3D models. Do a test print of any offshore wind farm in the FabLab. (Issue #9)
- Optimal Cabling Implement an advanced heuristic, e.g. Esau Williams which decides how to lay the cables between the turbines. (Issue #22)
- Validation and Interface for WebApp Test all Service Functions, Write Gtests for all sub-models, Document all interfaces and communicate with the WebApp group. Support them by modifying the output of the simulation model. (Issue #26)
- Technical improvements Improve Cmake and update to latest version, Refactor complete wake_model class, Run Valgrind. (Issue #44)
For all topics basic skills in C++ is needed. Please state in which topic (solar or wind) you are interested the most. Do you also have some skills in CMake, Valgrind or the library CGAL?
We are looking for people that like to work in a team, but are capable to solve problems on their own if necessary. You should make time for weekly meetings where we can discuss the work done in the week and plan ahead for the next week.
This lab will take place from begin of April until end of May. Please just register for this lab, if you are interested in a fast and intensive processing time (just 2 instead of 6 months).
This project is a corporation of the Theory of Hybrid Systems (i2) research group headed by Prof. Dr. Erika Ábrahám, and the research group for Continuous Optimization at IGPM. The project will be co-supervised by Pascal Richter. For further questions please contact Pascal Richter.