diff --git a/README.md b/README.md index c21192c..6dde50c 100755 --- a/README.md +++ b/README.md @@ -3,9 +3,9 @@

# OFF -Welcome to the working repo for a dynamic parametric wake toolbox which combines and connects OnWaRDS, FLORIDyn and FLORIS (OFF). +Welcome to the working repo for a dynamic parametric wake toolbox that combines and connects OnWaRDS, FLORIDyn, and FLORIS (OFF). ## Purpose -The OFF toolbox is meant to provide one interface to dynamic parametric wake modelling. The goal is to enable testing of different approaches, comparisons using the same interface and a environment to develop new approaches. +The OFF toolbox is meant to provide one interface to dynamic parametric wake modeling. The goal is to enable testing of different approaches, comparisons using the same interface, and an environment to develop new approaches. ## Development ### Current state @@ -14,15 +14,15 @@ The toolbox allows you to run dynamic wind farm simulations using a prescribed ( *Current degrees of design-freedom include:* - The flow field can change uniformly in direction and speed, -- the FLORISv4 wake can be changed, +- within FLORISv4 different wake models can be selected, - the number and location of turbines can be altered, -- Wake steerig control is available +- Wake steering control is available *Current limitations include:* -- Heterogeneous flow field behaviour is not included, +- Heterogeneous flow field behavior is not included, - The dynamic solver is a preliminary implementation, and cannot be changed - - OnWaRDS \[3\] approach not yet impemented - - Particle model and behaviour not yet changable + - OnWaRDS \[3\] approach not yet implemented + - Particle model and behavior not yet changeable *Features include:* - Logging @@ -32,21 +32,23 @@ The toolbox allows you to run dynamic wind farm simulations using a prescribed ( - Preliminary effective wind speed flow field plots are possible ### Current development focus -1. Completion of the toolbox - - Implement OnWaRDS - - Implement a low-level controller for yaw and induction - - Validation and reference cases -2. Features - - Input flow field data (heterogeneous flow) - - Improved flow field plotting +1. Features + - Implement a low-level controller for induction control + - Reference cases + - Floating wind turbines + - Reference optimization workflow + - Connect to other steady-state wake solvers (e.g., PyWake) + - Implement OnWaRDS approach - Computational performance -3. User friendliness + - Input flow field data (heterogeneous flow) +2. User-friendliness + - Code refactoring for a better overview + - Improved flow field plotting - Complete the "Interactive Simulation Assembly" - Communicate back what model has been used and under which conditions (Report) ### Longterm vision -FLORIDyn and OnWaRDS are hopefully only the start to create a transparent toolbox to explore dynamic parametric wake modelling choices. We therefore plan to implement more model-design decisions and allow a simple, automatable change of them. -Extensions of the code could include floating turbine descriptions, new wake solvers or modifications of existing ones. +FLORIDyn and OnWaRDS are hopefully only the start of creating a transparent toolbox to explore dynamic parametric wake modeling choices. We therefore plan to implement more model-design decisions and allow a simple, automatable change of them. ## Contributing Fork branch commit push pull! @@ -54,22 +56,33 @@ Fork branch commit push pull! The Git is also meant as a place to discuss and propose new changes. ## How to run a simulation -Run the main.py in the 03_Code folder. +Run the `main.py` in the 03_Code folder. -To change the simulation, you have to change the .yaml file OFF calls. This is defined by one of the first limes of code in the main function. The .yaml structure is showed in 02_Examples_and_Cases/02_Example_Cases/run_example.yaml . This is where you can change the wind farm layout, the flow conditions, the wake model etc. +To change the simulation, you have to change the .yaml file OFF calls. This is defined by one of the first limes of code in the main function. The .yaml structure is showed in `02_Examples_and_Cases/02_Example_Cases/run_example.yaml` . This is where you can change the wind farm layout, the flow conditions, the wake model etc. A thorough description of the code is available [here](https://tudelft-datadrivencontrol.github.io/OFF/). The documentation is handled automatically using Sphinx. ## How to cite -If OFF has played a role in your work, please cite the following publication: - -Becker, M., Lejeune, M., Chatelain, P., Allaerts, D., Mudafort, R., and van Wingerden, J.W.: A dynamic open-source model to investigate wake dynamics in response to wind farm flow control strategies, Wind Energ. Sci. Discuss. [preprint], https://doi.org/10.5194/wes-2024-150, in review, 2024. - - -## Contact and sources -### Core Developers -[Marcus Becker](https://www.tudelft.nl/staff/marcus.becker/?cHash=4e16fc5842bde9873a2a322dcbc17453) (TU Delft) and -[Maxime Lejeune](https://uclouvain.be/fr/repertoires/maxime.lejeune) (UCLouvain) are the current core developers of the OFF toolbox. +If OFF has played a role in your work, please cite the following [publication](https://wes.copernicus.org/articles/10/1055/2025/): + +``` +@Article{wes-10-1055-2025, + AUTHOR = {Becker, M. and Lejeune, M. and Chatelain, P. and Allaerts, D. and Mudafort, R. and van Wingerden, J.-W.}, + TITLE = {A dynamic open-source model to investigate wake dynamics in response to wind farm flow control strategies}, + JOURNAL = {Wind Energy Science}, + VOLUME = {10}, + YEAR = {2025}, + NUMBER = {6}, + PAGES = {1055--1075}, + URL = {https://wes.copernicus.org/articles/10/1055/2025/}, + DOI = {10.5194/wes-10-1055-2025} +} +``` + + +## Developers and sources +### Developers +Marcus Becker (TU Delft) and Maxime Lejeune (UCLouvain/VKI) are the core developers of the OFF toolbox. Leendert Starink (TU Delft) is working on a floating turbine implementation. ### Sources \[1\] FLORIDyn - A dynamic and flexible framework for real-time wind farm control, M. Becker, D. Allaerts, J.W. van Wingerden, 2022 J. Phys.: Conf. Ser. 2265(2022) 032103