How fraunhoferiwes/foxes works
FOXES is a modular wind-farm and wake-modelling package. The README’s example workflow supplies wind states and a farm layout, runs a Downwind algorithm, and obtains farm results; the package also provides iterative and sequential algorithms, model choices, distributed execution, input formats, and analysis outputs. Source excerpts show algorithm model collection and calculation entry points, but much of the model and input wiring was not sampled, so those relationships are shown as unverified rather than asserted.
Main entry points: downwind.py Downwind algorithm · algorithm.py Algorithm core · wind_farm.py Wind farm · turbine_models Turbine models
Components 23
Farm and wind inputs
- Farm layout
foxes/input/farm_layout - Wind states
foxes/input/states - YAML inputs
foxes/input/yaml
Simulation algorithms
- Wind farm
foxes/core/wind_farm.py - Downwind algorithm
foxes/algorithms/downwind/downwind.py - Iterative algorithm
foxes/algorithms/iterative/iterative.py - Sequential algorithm
foxes/algorithms/sequential/sequential.py - Algorithm core
foxes/core/algorithm.py
Wake and turbine models
- Wake models
foxes/models/wake_models - Wake frames
foxes/models/wake_frames - Turbine models
foxes/models/turbine_models - Turbine types
foxes/models/turbine_types - Rotor models
foxes/models/rotor_models - Farm controllers
foxes/core/farm_controller.py
Calculation runtime
- Calculation data
foxes/core/data.py - Execution engine
foxes/core/engine.py - NumPy engine
foxes/engines/numpy.py
Results and analysis
- Farm results
foxes/output/farm_results_eval.py - Point calculations
foxes/algorithms/downwind/downwind.py - Flow plots
foxes/output/flow_plots_2d/flow_plots.py - Calculation grids
foxes/output/grids.py - Output tools
foxes/output/output.py
Other components
- Engineer
Connections 25
- Engineer → Wind states: provides
- Engineer → Wind farm: creates
- Engineer → Farm layout: loads layout
- Engineer → Downwind algorithm: runs
- Wind states → Downwind algorithm: supplies states
- Wind farm → Downwind algorithm: simulates
- Farm layout → Wind farm: populates
- Downwind algorithm → Farm results: returns results
- YAML inputs → Wind farm: configures
- Iterative algorithm → Algorithm core: extends
- Sequential algorithm → Algorithm core: extends
- Downwind algorithm → Algorithm core: uses core
- Algorithm core → Calculation data: manages data
foxes/core/algorithm.py - Algorithm core → Execution engine: dispatches work
foxes/core/algorithm.py - Execution engine → NumPy engine: selects engine
foxes/core/engine.py - Downwind algorithm → Wake models: evaluates wakes
- Downwind algorithm → Wake frames: orders wakes
- Downwind algorithm → Turbine models: evaluates turbines
- Turbine models → Turbine types: uses turbine types
- Turbine models → Rotor models: uses rotor models
- Downwind algorithm → Farm controllers: collects models
- Downwind algorithm → Point calculations: calculates points
foxes/algorithms/downwind/downwind.py - Point calculations → Flow plots: feeds plots
- Calculation grids → Flow plots: supports plotting
foxes/output/flow_plots_2d/flow_plots.py - Farm results → Output tools: supports analysis