foxes 0.7.4.24__tar.gz → 0.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of foxes might be problematic. Click here for more details.
- {foxes-0.7.4.24/foxes.egg-info → foxes-0.8}/PKG-INFO +20 -116
- {foxes-0.7.4.24 → foxes-0.8}/README.md +5 -110
- foxes-0.8/foxes/VERSION +1 -0
- {foxes-0.7.4.24 → foxes-0.8/foxes.egg-info}/PKG-INFO +20 -116
- {foxes-0.7.4.24 → foxes-0.8}/foxes.egg-info/SOURCES.txt +0 -26
- {foxes-0.7.4.24 → foxes-0.8}/foxes.egg-info/requires.txt +6 -4
- {foxes-0.7.4.24 → foxes-0.8}/setup.cfg +14 -5
- foxes-0.7.4.24/foxes/VERSION +0 -1
- foxes-0.7.4.24/foxes/opt/__init__.py +0 -9
- foxes-0.7.4.24/foxes/opt/constraints/__init__.py +0 -6
- foxes-0.7.4.24/foxes/opt/constraints/area_geometry.py +0 -214
- foxes-0.7.4.24/foxes/opt/constraints/min_dist.py +0 -239
- foxes-0.7.4.24/foxes/opt/core/__init__.py +0 -9
- foxes-0.7.4.24/foxes/opt/core/farm_constraint.py +0 -96
- foxes-0.7.4.24/foxes/opt/core/farm_objective.py +0 -97
- foxes-0.7.4.24/foxes/opt/core/farm_opt_problem.py +0 -346
- foxes-0.7.4.24/foxes/opt/core/farm_vars_problem.py +0 -219
- foxes-0.7.4.24/foxes/opt/core/pop_states.py +0 -206
- foxes-0.7.4.24/foxes/opt/objectives/__init__.py +0 -6
- foxes-0.7.4.24/foxes/opt/objectives/farm_vars.py +0 -323
- foxes-0.7.4.24/foxes/opt/objectives/max_n_turbines.py +0 -142
- foxes-0.7.4.24/foxes/opt/problems/__init__.py +0 -7
- foxes-0.7.4.24/foxes/opt/problems/layout/__init__.py +0 -9
- foxes-0.7.4.24/foxes/opt/problems/layout/farm_layout.py +0 -137
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/__init__.py +0 -10
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/constraints.py +0 -802
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/geom_layout.py +0 -290
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/geom_layout_gridded.py +0 -276
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/geom_reggrid.py +0 -351
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/geom_reggrids.py +0 -482
- foxes-0.7.4.24/foxes/opt/problems/layout/geom_layouts/objectives.py +0 -666
- foxes-0.7.4.24/foxes/opt/problems/layout/reggrids_layout.py +0 -417
- foxes-0.7.4.24/foxes/opt/problems/layout/regular_layout.py +0 -350
- foxes-0.7.4.24/foxes/opt/problems/opt_farm_vars.py +0 -586
- {foxes-0.7.4.24 → foxes-0.8}/LICENSE +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/Logo_FOXES.svg +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/MANIFEST.in +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/downwind.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/farm_wakes_calc.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/init_farm_data.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/point_wakes_calc.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/reorder_farm_output.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/set_amb_farm_results.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/downwind/models/set_amb_point_results.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/iterative.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/models/convergence.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/models/farm_wakes_calc.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/iterative/models/urelax.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/sequential/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/sequential/models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/sequential/models/plugin.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/sequential/models/seq_state.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/algorithms/sequential/sequential.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/constants.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/algorithm.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/axial_induction_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/data.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/data_calc_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/farm_controller.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/farm_data_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/farm_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/ground_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/partial_wakes_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/point_data_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/rotor_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/states.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/turbine.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/turbine_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/turbine_type.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/vertical_profile.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/wake_frame.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/wake_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/wake_superposition.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/core/wind_farm.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/farms/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/farms/test_farm_67.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/parse.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/power_ct_curves/DTU-10MW-D178d3-H119.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/power_ct_curves/IEA-15MW-D240-H150.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/power_ct_curves/IWT-7d5MW-D164-H100.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/power_ct_curves/NREL-5MW-D126-H90.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/power_ct_curves/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/WRF-Timeseries-3000.nc +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/WRF-Timeseries-4464.csv.gz +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/abl_states_6000.csv.gz +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/timeseries_100.csv.gz +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/timeseries_3000.csv.gz +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/timeseries_8000.csv.gz +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/wind_rose_bremen.csv +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/wind_rotation.nc +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/windio_timeseries_5000.nc +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/states/winds100.tab +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/static_data.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/windio/DTU_10MW_turbine.yaml +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/windio/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/data/windio/windio_5turbines_timeseries.yaml +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/from_csv.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/from_df.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/from_file.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/from_json.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/from_random.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/grid.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/farm_layout/row.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/create/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/create/random_abl_states.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/create/random_timeseries.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/field_data_nc.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/multi_height.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/scan_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/single.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/states/states_table.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/get_states.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/read_attributes.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/read_farm.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/read_fields.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/read_outputs.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/runner.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/input/windio/windio.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/axial_induction/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/axial_induction/betz.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/axial_induction/madsen.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/farm_controllers/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/farm_controllers/basic.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/farm_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/farm_models/turbine2farm.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/ground_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/ground_models/no_ground.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/ground_models/wake_mirror.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/model_book.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/axiwake.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/centre.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/grid.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/rotor_points.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/segregated.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/partial_wakes/top_hat.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/point_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/point_models/set_uniform_data.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/point_models/tke2ti.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/point_models/wake_deltas.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/rotor_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/rotor_models/centre.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/rotor_models/grid.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/rotor_models/levels.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/calculator.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/kTI_model.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/lookup_table.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/power_mask.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/rotor_centre_calc.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/sector_management.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/set_farm_vars.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/table_factors.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/thrust2ct.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/yaw2yawm.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_models/yawm2yaw.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/CpCt_file.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/CpCt_from_two.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/PCt_file.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/PCt_from_two.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/null_type.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/wsrho2PCt_from_two.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/turbine_types/wsti2PCt_from_two.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/abl_log_neutral_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/abl_log_stable_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/abl_log_unstable_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/abl_log_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/data_profile.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/sheared_ws.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/vertical_profiles/uniform.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/farm_order.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/rotor_wd.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/seq_dynamic_wakes.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/streamlines.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/timelines.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_frames/yawed_wakes.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/axisymmetric.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/dist_sliced.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/gaussian.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/rankine_half_body.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/rathmann.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/self_similar.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/self_similar2020.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/induction/vortex_sheet.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/ti/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/ti/crespo_hernandez.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/ti/iec_ti.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/top_hat.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/wind/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/wind/bastankhah14.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/wind/bastankhah16.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/wind/jensen.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_models/wind/turbopark.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ti_linear.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ti_max.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ti_pow.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ti_quadratic.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ws_linear.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ws_max.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ws_pow.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ws_product.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/models/wake_superpositions/ws_quadratic.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/animation.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/calc_points.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/farm_layout.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/farm_results_eval.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/flow_plots_2d/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/flow_plots_2d/flow_plots.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/flow_plots_2d/get_fig.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/flow_plots_2d/seq_flow_ani_plugin.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/flow_plots_2d.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/grids.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/output.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/results_writer.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/rose_plot.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/rotor_point_plots.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/round.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/slice_data.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/state_turbine_map.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/state_turbine_table.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/output/turbine_type_curves.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/abl/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/abl/neutral.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/abl/sheared.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/abl/stable.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/abl/unstable.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/cubic_roots.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/data_book.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/dict.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/exec_python.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/factory.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/area_geometry.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/circle.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/example_intersection.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/example_union.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/half_plane.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geom2d/polygon.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geopandas_helpers.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/geopandas_utils.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/load.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/pandas_helpers.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/pandas_utils.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/plotly_helpers.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/random_xy.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/regularize.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/runners/__init__.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/runners/runners.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/subclasses.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/tab_files.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/two_circles.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/wind_dir.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/windrose_plot.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/utils/xarray_utils.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes/variables.py +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes.egg-info/dependency_links.txt +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes.egg-info/top_level.txt +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/foxes.egg-info/zip-safe +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/pyproject.toml +0 -0
- {foxes-0.7.4.24 → foxes-0.8}/setup.py +0 -0
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: foxes
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8
|
|
4
4
|
Summary: Farm Optimization and eXtended yield Evaluation Software
|
|
5
5
|
Author: Fraunhofer IWES
|
|
6
|
-
Author-email: jonas.
|
|
6
|
+
Author-email: jonas.schulte@iwes.fraunhofer.de
|
|
7
7
|
License: MIT
|
|
8
8
|
Project-URL: Source Code, https://github.com/FraunhoferIWES/foxes
|
|
9
9
|
Project-URL: Bug Tracker, https://github.com/FraunhoferIWES/foxes/issues
|
|
10
10
|
Project-URL: Documentation, https://fraunhoferiwes.github.io/foxes.docs/index.html
|
|
11
11
|
Keywords: Wind farm,Wake modelling,Wind farm optimization
|
|
12
|
+
Classifier: Topic :: Scientific/Engineering
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Intended Audience :: Science/Research
|
|
12
15
|
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
21
|
Classifier: License :: OSI Approved :: MIT License
|
|
14
22
|
Classifier: Operating System :: OS Independent
|
|
15
23
|
Classifier: Development Status :: 4 - Beta
|
|
@@ -17,7 +25,7 @@ Requires-Python: >=3.8
|
|
|
17
25
|
Description-Content-Type: text/markdown
|
|
18
26
|
License-File: LICENSE
|
|
19
27
|
Requires-Dist: matplotlib
|
|
20
|
-
Requires-Dist: numpy
|
|
28
|
+
Requires-Dist: numpy
|
|
21
29
|
Requires-Dist: pandas
|
|
22
30
|
Requires-Dist: xarray
|
|
23
31
|
Requires-Dist: dask
|
|
@@ -25,14 +33,14 @@ Requires-Dist: distributed
|
|
|
25
33
|
Requires-Dist: scipy
|
|
26
34
|
Requires-Dist: netcdf4
|
|
27
35
|
Requires-Dist: windrose
|
|
28
|
-
Requires-Dist: iwopy>=0.1.4
|
|
29
36
|
Requires-Dist: pyarrow
|
|
30
37
|
Provides-Extra: io
|
|
31
38
|
Requires-Dist: windio>=1; extra == "io"
|
|
39
|
+
Provides-Extra: opt
|
|
40
|
+
Requires-Dist: foxes-opt; extra == "opt"
|
|
32
41
|
Provides-Extra: test
|
|
33
42
|
Requires-Dist: flake8; extra == "test"
|
|
34
43
|
Requires-Dist: pytest; extra == "test"
|
|
35
|
-
Requires-Dist: pymoo>=0.6; extra == "test"
|
|
36
44
|
Provides-Extra: doc
|
|
37
45
|
Requires-Dist: sphinx; extra == "doc"
|
|
38
46
|
Requires-Dist: sphinx-immaterial; extra == "doc"
|
|
@@ -45,13 +53,14 @@ Provides-Extra: all
|
|
|
45
53
|
Requires-Dist: windio>=1; extra == "all"
|
|
46
54
|
Requires-Dist: flake8; extra == "all"
|
|
47
55
|
Requires-Dist: pytest; extra == "all"
|
|
48
|
-
Requires-Dist:
|
|
56
|
+
Requires-Dist: foxes-opt; extra == "all"
|
|
49
57
|
Requires-Dist: sphinx; extra == "all"
|
|
50
58
|
Requires-Dist: sphinx-immaterial; extra == "all"
|
|
51
59
|
Requires-Dist: nbsphinx; extra == "all"
|
|
52
60
|
Requires-Dist: ipykernel; extra == "all"
|
|
53
61
|
Requires-Dist: ipywidgets; extra == "all"
|
|
54
62
|
Requires-Dist: m2r2; extra == "all"
|
|
63
|
+
Requires-Dist: lxml_html_clean; extra == "all"
|
|
55
64
|
Provides-Extra: scripts
|
|
56
65
|
|
|
57
66
|
# Welcome to foxes
|
|
@@ -105,7 +114,7 @@ Evaluation Software"`
|
|
|
105
114
|
}
|
|
106
115
|
```
|
|
107
116
|
|
|
108
|
-
##
|
|
117
|
+
## Requirements
|
|
109
118
|
|
|
110
119
|
The supported Python versions are:
|
|
111
120
|
|
|
@@ -115,125 +124,20 @@ The supported Python versions are:
|
|
|
115
124
|
- `Python 3.11`
|
|
116
125
|
- `Python 3.12`
|
|
117
126
|
|
|
118
|
-
|
|
127
|
+
## Installation
|
|
119
128
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
```console
|
|
123
|
-
python3 -m venv ~/venv/foxes
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
Then activate the environment every time you work with `foxes`, by
|
|
127
|
-
|
|
128
|
-
```console
|
|
129
|
-
source ~/venv/foxes/bin/activate
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
You can leave the environment by
|
|
133
|
-
|
|
134
|
-
```console
|
|
135
|
-
deactivate
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
The `pip` installation commands below should be executed within the active `foxes` environment.
|
|
139
|
-
|
|
140
|
-
### Standard users
|
|
141
|
-
|
|
142
|
-
As a standard user, you can install the latest release via [pip](https://pypi.org/project/foxes/) by
|
|
129
|
+
Either install via pip:
|
|
143
130
|
|
|
144
131
|
```console
|
|
145
132
|
pip install foxes
|
|
146
133
|
```
|
|
147
134
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
```console
|
|
151
|
-
pip install git+https://github.com/FraunhoferIWES/foxes@dev#egg=foxes
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Developers
|
|
155
|
-
|
|
156
|
-
For developers using `pip`, simply invoke the `-e` flag in the installation command in your local clone:
|
|
157
|
-
|
|
158
|
-
```console
|
|
159
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
160
|
-
cd foxes
|
|
161
|
-
pip install -e .
|
|
162
|
-
```
|
|
163
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
164
|
-
|
|
165
|
-
## Installation via conda
|
|
166
|
-
|
|
167
|
-
The supported Python versions are:
|
|
168
|
-
|
|
169
|
-
- `Python 3.8`
|
|
170
|
-
- `Python 3.9`
|
|
171
|
-
- `Python 3.10`
|
|
172
|
-
- `Python 3.11`
|
|
173
|
-
- `Python 3.12`
|
|
174
|
-
|
|
175
|
-
### Preparation (optional)
|
|
176
|
-
|
|
177
|
-
It is strongly recommend to use the `libmamba` dependency solver instead of the default solver. Install it once by
|
|
178
|
-
|
|
179
|
-
```console
|
|
180
|
-
conda install conda-libmamba-solver -n base -c conda-forge
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
We recommend that you set this to be your default solver, by
|
|
184
|
-
|
|
185
|
-
```console
|
|
186
|
-
conda config --set solver libmamba
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
### Virtual Python environment
|
|
190
|
-
|
|
191
|
-
First create a new `conda` environment, for example called `foxes`, by
|
|
192
|
-
|
|
193
|
-
```console
|
|
194
|
-
conda create -n foxes -c conda-forge
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
Then activate the environment every time you work with `foxes`, by
|
|
198
|
-
|
|
199
|
-
```console
|
|
200
|
-
conda activate foxes
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
You can leave the environment by
|
|
135
|
+
Alternatively, install via conda:
|
|
204
136
|
|
|
205
137
|
```console
|
|
206
|
-
conda
|
|
138
|
+
conda install foxes -c conda-forge
|
|
207
139
|
```
|
|
208
140
|
|
|
209
|
-
The `conda` installation commands below should be executed within the active `foxes` environment.
|
|
210
|
-
|
|
211
|
-
### Standard users
|
|
212
|
-
|
|
213
|
-
The `foxes` package is available on the channel [conda-forge](https://anaconda.org/conda-forge/foxes). You can install the latest version by
|
|
214
|
-
|
|
215
|
-
```console
|
|
216
|
-
conda install foxes -c conda-forge --solver=libmamba
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
220
|
-
|
|
221
|
-
### Developers
|
|
222
|
-
|
|
223
|
-
For developers using `conda`, we recommend first installing foxes as described above, then removing only the `foxes` package while keeping the dependencies, and then adding `foxes` again from a git using `conda develop`:
|
|
224
|
-
|
|
225
|
-
```console
|
|
226
|
-
conda install foxes conda-build -c conda-forge --solver=libmamba
|
|
227
|
-
conda remove foxes --force
|
|
228
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
229
|
-
cd foxes
|
|
230
|
-
conda develop .
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
234
|
-
|
|
235
|
-
Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
236
|
-
|
|
237
141
|
## Usage
|
|
238
142
|
|
|
239
143
|
For detailed examples of how to run _foxes_, check the `examples` and `notebooks` folders in this repository. A minimal running example is the following, based on provided static `csv` data files:
|
|
@@ -49,7 +49,7 @@ Evaluation Software"`
|
|
|
49
49
|
}
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
-
##
|
|
52
|
+
## Requirements
|
|
53
53
|
|
|
54
54
|
The supported Python versions are:
|
|
55
55
|
|
|
@@ -59,125 +59,20 @@ The supported Python versions are:
|
|
|
59
59
|
- `Python 3.11`
|
|
60
60
|
- `Python 3.12`
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
## Installation
|
|
63
63
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
```console
|
|
67
|
-
python3 -m venv ~/venv/foxes
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
Then activate the environment every time you work with `foxes`, by
|
|
71
|
-
|
|
72
|
-
```console
|
|
73
|
-
source ~/venv/foxes/bin/activate
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
You can leave the environment by
|
|
77
|
-
|
|
78
|
-
```console
|
|
79
|
-
deactivate
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
The `pip` installation commands below should be executed within the active `foxes` environment.
|
|
83
|
-
|
|
84
|
-
### Standard users
|
|
85
|
-
|
|
86
|
-
As a standard user, you can install the latest release via [pip](https://pypi.org/project/foxes/) by
|
|
64
|
+
Either install via pip:
|
|
87
65
|
|
|
88
66
|
```console
|
|
89
67
|
pip install foxes
|
|
90
68
|
```
|
|
91
69
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
```console
|
|
95
|
-
pip install git+https://github.com/FraunhoferIWES/foxes@dev#egg=foxes
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
### Developers
|
|
99
|
-
|
|
100
|
-
For developers using `pip`, simply invoke the `-e` flag in the installation command in your local clone:
|
|
101
|
-
|
|
102
|
-
```console
|
|
103
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
104
|
-
cd foxes
|
|
105
|
-
pip install -e .
|
|
106
|
-
```
|
|
107
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
108
|
-
|
|
109
|
-
## Installation via conda
|
|
110
|
-
|
|
111
|
-
The supported Python versions are:
|
|
112
|
-
|
|
113
|
-
- `Python 3.8`
|
|
114
|
-
- `Python 3.9`
|
|
115
|
-
- `Python 3.10`
|
|
116
|
-
- `Python 3.11`
|
|
117
|
-
- `Python 3.12`
|
|
118
|
-
|
|
119
|
-
### Preparation (optional)
|
|
120
|
-
|
|
121
|
-
It is strongly recommend to use the `libmamba` dependency solver instead of the default solver. Install it once by
|
|
122
|
-
|
|
123
|
-
```console
|
|
124
|
-
conda install conda-libmamba-solver -n base -c conda-forge
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
We recommend that you set this to be your default solver, by
|
|
128
|
-
|
|
129
|
-
```console
|
|
130
|
-
conda config --set solver libmamba
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
### Virtual Python environment
|
|
134
|
-
|
|
135
|
-
First create a new `conda` environment, for example called `foxes`, by
|
|
136
|
-
|
|
137
|
-
```console
|
|
138
|
-
conda create -n foxes -c conda-forge
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
Then activate the environment every time you work with `foxes`, by
|
|
142
|
-
|
|
143
|
-
```console
|
|
144
|
-
conda activate foxes
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
You can leave the environment by
|
|
70
|
+
Alternatively, install via conda:
|
|
148
71
|
|
|
149
72
|
```console
|
|
150
|
-
conda
|
|
73
|
+
conda install foxes -c conda-forge
|
|
151
74
|
```
|
|
152
75
|
|
|
153
|
-
The `conda` installation commands below should be executed within the active `foxes` environment.
|
|
154
|
-
|
|
155
|
-
### Standard users
|
|
156
|
-
|
|
157
|
-
The `foxes` package is available on the channel [conda-forge](https://anaconda.org/conda-forge/foxes). You can install the latest version by
|
|
158
|
-
|
|
159
|
-
```console
|
|
160
|
-
conda install foxes -c conda-forge --solver=libmamba
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
164
|
-
|
|
165
|
-
### Developers
|
|
166
|
-
|
|
167
|
-
For developers using `conda`, we recommend first installing foxes as described above, then removing only the `foxes` package while keeping the dependencies, and then adding `foxes` again from a git using `conda develop`:
|
|
168
|
-
|
|
169
|
-
```console
|
|
170
|
-
conda install foxes conda-build -c conda-forge --solver=libmamba
|
|
171
|
-
conda remove foxes --force
|
|
172
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
173
|
-
cd foxes
|
|
174
|
-
conda develop .
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
178
|
-
|
|
179
|
-
Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
180
|
-
|
|
181
76
|
## Usage
|
|
182
77
|
|
|
183
78
|
For detailed examples of how to run _foxes_, check the `examples` and `notebooks` folders in this repository. A minimal running example is the following, based on provided static `csv` data files:
|
foxes-0.8/foxes/VERSION
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.8
|
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: foxes
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8
|
|
4
4
|
Summary: Farm Optimization and eXtended yield Evaluation Software
|
|
5
5
|
Author: Fraunhofer IWES
|
|
6
|
-
Author-email: jonas.
|
|
6
|
+
Author-email: jonas.schulte@iwes.fraunhofer.de
|
|
7
7
|
License: MIT
|
|
8
8
|
Project-URL: Source Code, https://github.com/FraunhoferIWES/foxes
|
|
9
9
|
Project-URL: Bug Tracker, https://github.com/FraunhoferIWES/foxes/issues
|
|
10
10
|
Project-URL: Documentation, https://fraunhoferiwes.github.io/foxes.docs/index.html
|
|
11
11
|
Keywords: Wind farm,Wake modelling,Wind farm optimization
|
|
12
|
+
Classifier: Topic :: Scientific/Engineering
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Intended Audience :: Science/Research
|
|
12
15
|
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
21
|
Classifier: License :: OSI Approved :: MIT License
|
|
14
22
|
Classifier: Operating System :: OS Independent
|
|
15
23
|
Classifier: Development Status :: 4 - Beta
|
|
@@ -17,7 +25,7 @@ Requires-Python: >=3.8
|
|
|
17
25
|
Description-Content-Type: text/markdown
|
|
18
26
|
License-File: LICENSE
|
|
19
27
|
Requires-Dist: matplotlib
|
|
20
|
-
Requires-Dist: numpy
|
|
28
|
+
Requires-Dist: numpy
|
|
21
29
|
Requires-Dist: pandas
|
|
22
30
|
Requires-Dist: xarray
|
|
23
31
|
Requires-Dist: dask
|
|
@@ -25,14 +33,14 @@ Requires-Dist: distributed
|
|
|
25
33
|
Requires-Dist: scipy
|
|
26
34
|
Requires-Dist: netcdf4
|
|
27
35
|
Requires-Dist: windrose
|
|
28
|
-
Requires-Dist: iwopy>=0.1.4
|
|
29
36
|
Requires-Dist: pyarrow
|
|
30
37
|
Provides-Extra: io
|
|
31
38
|
Requires-Dist: windio>=1; extra == "io"
|
|
39
|
+
Provides-Extra: opt
|
|
40
|
+
Requires-Dist: foxes-opt; extra == "opt"
|
|
32
41
|
Provides-Extra: test
|
|
33
42
|
Requires-Dist: flake8; extra == "test"
|
|
34
43
|
Requires-Dist: pytest; extra == "test"
|
|
35
|
-
Requires-Dist: pymoo>=0.6; extra == "test"
|
|
36
44
|
Provides-Extra: doc
|
|
37
45
|
Requires-Dist: sphinx; extra == "doc"
|
|
38
46
|
Requires-Dist: sphinx-immaterial; extra == "doc"
|
|
@@ -45,13 +53,14 @@ Provides-Extra: all
|
|
|
45
53
|
Requires-Dist: windio>=1; extra == "all"
|
|
46
54
|
Requires-Dist: flake8; extra == "all"
|
|
47
55
|
Requires-Dist: pytest; extra == "all"
|
|
48
|
-
Requires-Dist:
|
|
56
|
+
Requires-Dist: foxes-opt; extra == "all"
|
|
49
57
|
Requires-Dist: sphinx; extra == "all"
|
|
50
58
|
Requires-Dist: sphinx-immaterial; extra == "all"
|
|
51
59
|
Requires-Dist: nbsphinx; extra == "all"
|
|
52
60
|
Requires-Dist: ipykernel; extra == "all"
|
|
53
61
|
Requires-Dist: ipywidgets; extra == "all"
|
|
54
62
|
Requires-Dist: m2r2; extra == "all"
|
|
63
|
+
Requires-Dist: lxml_html_clean; extra == "all"
|
|
55
64
|
Provides-Extra: scripts
|
|
56
65
|
|
|
57
66
|
# Welcome to foxes
|
|
@@ -105,7 +114,7 @@ Evaluation Software"`
|
|
|
105
114
|
}
|
|
106
115
|
```
|
|
107
116
|
|
|
108
|
-
##
|
|
117
|
+
## Requirements
|
|
109
118
|
|
|
110
119
|
The supported Python versions are:
|
|
111
120
|
|
|
@@ -115,125 +124,20 @@ The supported Python versions are:
|
|
|
115
124
|
- `Python 3.11`
|
|
116
125
|
- `Python 3.12`
|
|
117
126
|
|
|
118
|
-
|
|
127
|
+
## Installation
|
|
119
128
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
```console
|
|
123
|
-
python3 -m venv ~/venv/foxes
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
Then activate the environment every time you work with `foxes`, by
|
|
127
|
-
|
|
128
|
-
```console
|
|
129
|
-
source ~/venv/foxes/bin/activate
|
|
130
|
-
```
|
|
131
|
-
|
|
132
|
-
You can leave the environment by
|
|
133
|
-
|
|
134
|
-
```console
|
|
135
|
-
deactivate
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
The `pip` installation commands below should be executed within the active `foxes` environment.
|
|
139
|
-
|
|
140
|
-
### Standard users
|
|
141
|
-
|
|
142
|
-
As a standard user, you can install the latest release via [pip](https://pypi.org/project/foxes/) by
|
|
129
|
+
Either install via pip:
|
|
143
130
|
|
|
144
131
|
```console
|
|
145
132
|
pip install foxes
|
|
146
133
|
```
|
|
147
134
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
```console
|
|
151
|
-
pip install git+https://github.com/FraunhoferIWES/foxes@dev#egg=foxes
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Developers
|
|
155
|
-
|
|
156
|
-
For developers using `pip`, simply invoke the `-e` flag in the installation command in your local clone:
|
|
157
|
-
|
|
158
|
-
```console
|
|
159
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
160
|
-
cd foxes
|
|
161
|
-
pip install -e .
|
|
162
|
-
```
|
|
163
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
164
|
-
|
|
165
|
-
## Installation via conda
|
|
166
|
-
|
|
167
|
-
The supported Python versions are:
|
|
168
|
-
|
|
169
|
-
- `Python 3.8`
|
|
170
|
-
- `Python 3.9`
|
|
171
|
-
- `Python 3.10`
|
|
172
|
-
- `Python 3.11`
|
|
173
|
-
- `Python 3.12`
|
|
174
|
-
|
|
175
|
-
### Preparation (optional)
|
|
176
|
-
|
|
177
|
-
It is strongly recommend to use the `libmamba` dependency solver instead of the default solver. Install it once by
|
|
178
|
-
|
|
179
|
-
```console
|
|
180
|
-
conda install conda-libmamba-solver -n base -c conda-forge
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
We recommend that you set this to be your default solver, by
|
|
184
|
-
|
|
185
|
-
```console
|
|
186
|
-
conda config --set solver libmamba
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
### Virtual Python environment
|
|
190
|
-
|
|
191
|
-
First create a new `conda` environment, for example called `foxes`, by
|
|
192
|
-
|
|
193
|
-
```console
|
|
194
|
-
conda create -n foxes -c conda-forge
|
|
195
|
-
```
|
|
196
|
-
|
|
197
|
-
Then activate the environment every time you work with `foxes`, by
|
|
198
|
-
|
|
199
|
-
```console
|
|
200
|
-
conda activate foxes
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
You can leave the environment by
|
|
135
|
+
Alternatively, install via conda:
|
|
204
136
|
|
|
205
137
|
```console
|
|
206
|
-
conda
|
|
138
|
+
conda install foxes -c conda-forge
|
|
207
139
|
```
|
|
208
140
|
|
|
209
|
-
The `conda` installation commands below should be executed within the active `foxes` environment.
|
|
210
|
-
|
|
211
|
-
### Standard users
|
|
212
|
-
|
|
213
|
-
The `foxes` package is available on the channel [conda-forge](https://anaconda.org/conda-forge/foxes). You can install the latest version by
|
|
214
|
-
|
|
215
|
-
```console
|
|
216
|
-
conda install foxes -c conda-forge --solver=libmamba
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
220
|
-
|
|
221
|
-
### Developers
|
|
222
|
-
|
|
223
|
-
For developers using `conda`, we recommend first installing foxes as described above, then removing only the `foxes` package while keeping the dependencies, and then adding `foxes` again from a git using `conda develop`:
|
|
224
|
-
|
|
225
|
-
```console
|
|
226
|
-
conda install foxes conda-build -c conda-forge --solver=libmamba
|
|
227
|
-
conda remove foxes --force
|
|
228
|
-
git clone https://github.com/FraunhoferIWES/foxes.git
|
|
229
|
-
cd foxes
|
|
230
|
-
conda develop .
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
The last line makes sure that all your code changes are included whenever importing `foxes`. The `--solver=libmamba` is optional. Note that it is not necessary if you have set the `libmamba` solver as your default, see above.
|
|
234
|
-
|
|
235
|
-
Concerning the `git clone` line, we actually recommend that you fork `foxes` on GitHub and then replace that command by cloning your fork instead.
|
|
236
|
-
|
|
237
141
|
## Usage
|
|
238
142
|
|
|
239
143
|
For detailed examples of how to run _foxes_, check the `examples` and `notebooks` folders in this repository. A minimal running example is the following, based on provided static `csv` data files:
|
|
@@ -199,32 +199,6 @@ foxes/models/wake_superpositions/ws_max.py
|
|
|
199
199
|
foxes/models/wake_superpositions/ws_pow.py
|
|
200
200
|
foxes/models/wake_superpositions/ws_product.py
|
|
201
201
|
foxes/models/wake_superpositions/ws_quadratic.py
|
|
202
|
-
foxes/opt/__init__.py
|
|
203
|
-
foxes/opt/constraints/__init__.py
|
|
204
|
-
foxes/opt/constraints/area_geometry.py
|
|
205
|
-
foxes/opt/constraints/min_dist.py
|
|
206
|
-
foxes/opt/core/__init__.py
|
|
207
|
-
foxes/opt/core/farm_constraint.py
|
|
208
|
-
foxes/opt/core/farm_objective.py
|
|
209
|
-
foxes/opt/core/farm_opt_problem.py
|
|
210
|
-
foxes/opt/core/farm_vars_problem.py
|
|
211
|
-
foxes/opt/core/pop_states.py
|
|
212
|
-
foxes/opt/objectives/__init__.py
|
|
213
|
-
foxes/opt/objectives/farm_vars.py
|
|
214
|
-
foxes/opt/objectives/max_n_turbines.py
|
|
215
|
-
foxes/opt/problems/__init__.py
|
|
216
|
-
foxes/opt/problems/opt_farm_vars.py
|
|
217
|
-
foxes/opt/problems/layout/__init__.py
|
|
218
|
-
foxes/opt/problems/layout/farm_layout.py
|
|
219
|
-
foxes/opt/problems/layout/reggrids_layout.py
|
|
220
|
-
foxes/opt/problems/layout/regular_layout.py
|
|
221
|
-
foxes/opt/problems/layout/geom_layouts/__init__.py
|
|
222
|
-
foxes/opt/problems/layout/geom_layouts/constraints.py
|
|
223
|
-
foxes/opt/problems/layout/geom_layouts/geom_layout.py
|
|
224
|
-
foxes/opt/problems/layout/geom_layouts/geom_layout_gridded.py
|
|
225
|
-
foxes/opt/problems/layout/geom_layouts/geom_reggrid.py
|
|
226
|
-
foxes/opt/problems/layout/geom_layouts/geom_reggrids.py
|
|
227
|
-
foxes/opt/problems/layout/geom_layouts/objectives.py
|
|
228
202
|
foxes/output/__init__.py
|
|
229
203
|
foxes/output/animation.py
|
|
230
204
|
foxes/output/calc_points.py
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
matplotlib
|
|
2
|
-
numpy
|
|
2
|
+
numpy
|
|
3
3
|
pandas
|
|
4
4
|
xarray
|
|
5
5
|
dask
|
|
@@ -7,20 +7,20 @@ distributed
|
|
|
7
7
|
scipy
|
|
8
8
|
netcdf4
|
|
9
9
|
windrose
|
|
10
|
-
iwopy>=0.1.4
|
|
11
10
|
pyarrow
|
|
12
11
|
|
|
13
12
|
[all]
|
|
14
13
|
windio>=1
|
|
15
14
|
flake8
|
|
16
15
|
pytest
|
|
17
|
-
|
|
16
|
+
foxes-opt
|
|
18
17
|
sphinx
|
|
19
18
|
sphinx-immaterial
|
|
20
19
|
nbsphinx
|
|
21
20
|
ipykernel
|
|
22
21
|
ipywidgets
|
|
23
22
|
m2r2
|
|
23
|
+
lxml_html_clean
|
|
24
24
|
|
|
25
25
|
[doc]
|
|
26
26
|
sphinx
|
|
@@ -34,9 +34,11 @@ lxml_html_clean
|
|
|
34
34
|
[io]
|
|
35
35
|
windio>=1
|
|
36
36
|
|
|
37
|
+
[opt]
|
|
38
|
+
foxes-opt
|
|
39
|
+
|
|
37
40
|
[scripts]
|
|
38
41
|
|
|
39
42
|
[test]
|
|
40
43
|
flake8
|
|
41
44
|
pytest
|
|
42
|
-
pymoo>=0.6
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
name = foxes
|
|
3
3
|
version = file: foxes/VERSION
|
|
4
4
|
author = Fraunhofer IWES
|
|
5
|
-
author_email = jonas.
|
|
5
|
+
author_email = jonas.schulte@iwes.fraunhofer.de
|
|
6
6
|
description = Farm Optimization and eXtended yield Evaluation Software
|
|
7
7
|
keywords = Wind farm, Wake modelling, Wind farm optimization
|
|
8
8
|
license = MIT
|
|
@@ -13,7 +13,15 @@ project_urls =
|
|
|
13
13
|
Bug Tracker = https://github.com/FraunhoferIWES/foxes/issues
|
|
14
14
|
Documentation = https://fraunhoferiwes.github.io/foxes.docs/index.html
|
|
15
15
|
classifiers =
|
|
16
|
+
Topic :: Scientific/Engineering
|
|
17
|
+
Intended Audience :: Developers
|
|
18
|
+
Intended Audience :: Science/Research
|
|
16
19
|
Programming Language :: Python :: 3
|
|
20
|
+
Programming Language :: Python :: 3.8
|
|
21
|
+
Programming Language :: Python :: 3.9
|
|
22
|
+
Programming Language :: Python :: 3.10
|
|
23
|
+
Programming Language :: Python :: 3.11
|
|
24
|
+
Programming Language :: Python :: 3.12
|
|
17
25
|
License :: OSI Approved :: MIT License
|
|
18
26
|
Operating System :: OS Independent
|
|
19
27
|
Development Status :: 4 - Beta
|
|
@@ -27,7 +35,7 @@ python_requires =
|
|
|
27
35
|
>=3.8
|
|
28
36
|
install_requires =
|
|
29
37
|
matplotlib
|
|
30
|
-
numpy
|
|
38
|
+
numpy
|
|
31
39
|
pandas
|
|
32
40
|
xarray
|
|
33
41
|
dask
|
|
@@ -35,16 +43,16 @@ install_requires =
|
|
|
35
43
|
scipy
|
|
36
44
|
netcdf4
|
|
37
45
|
windrose
|
|
38
|
-
iwopy>=0.1.4
|
|
39
46
|
pyarrow
|
|
40
47
|
|
|
41
48
|
[options.extras_require]
|
|
42
49
|
io =
|
|
43
50
|
windio>=1
|
|
51
|
+
opt =
|
|
52
|
+
foxes-opt
|
|
44
53
|
test =
|
|
45
54
|
flake8
|
|
46
55
|
pytest
|
|
47
|
-
pymoo>=0.6
|
|
48
56
|
doc =
|
|
49
57
|
sphinx
|
|
50
58
|
sphinx-immaterial
|
|
@@ -57,13 +65,14 @@ all =
|
|
|
57
65
|
windio>=1
|
|
58
66
|
flake8
|
|
59
67
|
pytest
|
|
60
|
-
|
|
68
|
+
foxes-opt
|
|
61
69
|
sphinx
|
|
62
70
|
sphinx-immaterial
|
|
63
71
|
nbsphinx
|
|
64
72
|
ipykernel
|
|
65
73
|
ipywidgets
|
|
66
74
|
m2r2
|
|
75
|
+
lxml_html_clean
|
|
67
76
|
scripts =
|
|
68
77
|
|
|
69
78
|
[egg_info]
|
foxes-0.7.4.24/foxes/VERSION
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0.7.4.24
|