Releases: FraunhoferIWES/foxes
v1.1.1
- Dependencies:
- Removing optional dependencies
io
. The installation advice will be printed when trying to use thefoxes.input.windio
sub package. The reason is that for now this depends on a personal fork by kilojoules, and the inclusion of such dependencies is not supported by PyPi.
- Removing optional dependencies
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v1.1.1
v1.1.0.2
- Python versions:
- Adding support for Python3.13
- Engines:
- Default number of processes is now os.cpu_count(), or os.process_cpu_count() for python3.13
- New engine:
RayEngine
(short nameray
), runs parallel computations based on the Ray package
- Inputs:
- New states
SliceDataNC
, much likeFieldDataNC
but without height dependency
- New states
- Models:
- New turbine type
TBLFile
: Reads power, ct, D, H, P_rated from a *.tbl file - Turbine induction models
SelfSimilar
,SelfSimilar2020
,Rathmann
,VortexSheet
now optionally accept any wind speed superposition model, i.e., they are no longer based on hard-coded linear superposition
- New turbine type
- Bug fixes:
- Bug fixed in
WSProduct
, causing zero wind speed at regions not touched by wakes - Bugs fixes in
FarmLayoutOutput
, concerning the writing of the layout csv file
- Bug fixed in
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v1.1
v1.0
This major version introduces the concept of Engines
which handle the chunking and parallelization of all foxes calculations. The default choice now prefers the concurrent.futures package and provides a significant speedup compared to previous versions. See the documentation for more details and all engine choices. The Engines
replace the Runners
of previous versions.
- Engines
- New engine
ThreadsEngine
(shortthreads
): Sends chunks to threads, based onconcurrent.futures
- New engine
ProcessEngine
(shortprocess
): Sends chunks to processes, based onconcurrent.futures
- New engine
MultiprocessEngine
(shortmultiprocess
): Sends chunks to a multiprocessing pool - New engine
XArrayEngine
(shortxarray
): Runs parallelization via xarray.apply_ufunc - New engine
DaskEngine
(shortdask
): Submits chunk calculation functions todask
- New engine
LocalClusterEngine
(shortlocal_cluster
): Creates a virtual cluster on the local machine - New engine
MPIEngine
(shortmpi
): Parallel computation viampi4py
, also multi-node - New engine
SlurmClusterEngine
(shortslurm_cluster
): Submits jobs to a SLURM system - New engine
NumpyEngine
(shortnumpy
): Runs a loop over chunks - New engine
SingleChunkEngine
(shortsingle
): Runs single-chunk calculations - New engine
DefaultEngine
(shortdefault
): Switches betweensingle
andprocess
, depending on the case size
- New engine
- Inputs:
- New states
OnePointFlowStates
,OnePointFlowTimeseries
,OnePointFlowMultiHeightTimeseries
,OnePointFlowMultiHeightNCTimeseries
: Generating horizontally inhomogeneous inflow from horizontally homogeneous input data - New farm layout option:
add_ring
, adding a ring of turbines
- New states
- Models:
- Wake frame
Timelines
now also accept spatially uniform multi-height states - New wake frame
DynamicWakes
: Dynamic wakes for any kind of timeseries states, compatible with chunking - New turbine type
FromLookupTable
, computes power and thrust coefficient from a lookup table
- Wake frame
- Outputs:
- New sub package
seq_plugins
, in case more of these will be added in the future - New sequential plugin
SeqWakeDebugPlugin
, adding wake centres and velocity vectors to flow animations, for debugging
- New sub package
- Examples:
- New example:
dyn_wakes
, similar totimelines
but with dynamic wakes andOnePointFlowTimeseries
inflow
- New example:
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v1.0
v0.8.2
- Removing
plotly_helpers.py
fromutils
- Updating dependencies
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v0.8.2
v0.8.1
- Updated requirements.txt
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v0.8.1
v0.8
Starting with this version, the previous foxes.opt
sub-package is is now its own package at github, pypi and conda-forge: foxes-opt, with its own documentation.
If you are planning to run wind farm optimizations, install it via
pip install foxes[opt]
or
pip install foxes-opt
or
conda install foxes-opt -c conda-forge
Compared to older versions, replace foxes.opt
by foxes_opt
in all your scripts - then everything should just run as before.
If you are not running any optimizations, just don't do any of the above and enjoy the lighter version with less dependencies.
Full Changelog: https://github.com/FraunhoferIWES/foxes/commits/v0.8
v0.7.4.25
dev workflow publish_conda
v0.7.4.24
dev workflow publish_conda
v0.7.4.23
dev workflow publish_conda
v0.7.4.22
dev workflow publish_conda