_images/Logo_FOXES.svg

Changed in version 1.2.3: FieldDataNC now with more efficient parallel loading of large data, replacing pre_load flag with load mode options preload, lazy, fly

Changed in version 1.2.3: Removing states class SliceDataNC, since now FieldDataNC can also handle data without height dependency

Changed in version 1.2.1: Output FarmResultsEval: Renaming contraction rule mean as weights. Usually this is the contraction rule of choice for AEP and other weighted mean computations wrt states. Also introducing the rule mean_no_weights, for special cases and debugging.

Added in version 1.2: Running foxes from Input parameter files in yaml format, simply by foxes_yaml imputs.yaml or foxes_windio inputs.yaml - no Python script needed.

Changed in version 1.0: User-selectable Parallelization via the new Engines, replacing Runners. The default is now based on concurrent.futures and comes with a speedup. Also mpi4py is now supported, for simplified multi-node computations.

Added in version 1.0: New wake frame DynamicWakes: Chunk-based vectorized dynamic wakes for any kind of inflow

Welcome to FOXES

Farm Optimization and eXtended yield Evaluation Software

FOXES is a modular wind farm and wake modelling code written in Python by Fraunhofer IWES. It has many applications, for example

  • Wind farm optimization, e.g. layout optimization or wake steering,

  • Wind farm post-construction analysis,

  • Wake model studies, comparison and validation,

  • Wind farm simulations invoking complex model chains.

The fast performance of foxes is owed to vectorization and parallelization, and it is intended to be used for large wind farms and large timeseries inflow data. The parallelization on local or remote clusters is supported, based on mpi4py or dask.distributed. The wind farm optimization capabilities invoke the foxes-opt package which as well supports vectorization and parallelization.

Source code repository (and issue tracker):

https://github.com/FraunhoferIWES/foxes

Please report code issues under the github link above.

License

Contents

Contributing

  1. Fork foxes on github.

  2. Create a branch (git checkout -b new_branch)

  3. Commit your changes (git commit -am “your awesome message”)

  4. Push to the branch (git push origin new_branch)

  5. Create a pull request here

Acknowledgements

The development of foxes and its predecessors flapFOAM and flappy (internal - non public) has been supported through multiple publicly funded research projects. We acknowledge in particular the funding by the Federal Ministry of Economic Affairs and Climate Action (BMWK) through the p rojects Smart Wind Farms (grant no. 0325851B), GW-Wakes (0325397B) and X-Wakes (03EE3008A) as well as the funding by the Federal Ministry of Education and Research (BMBF) in the framework of the project H2Digital (03SF0635). We furthermore acknowledge funding by the Horizon Europe project FLOW (Atmospheric Flow, Loads and pOwer for Wind energy - grant id 101084205).