foxes 1.3__py3-none-any.whl → 1.4__py3-none-any.whl
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.
- docs/source/conf.py +3 -3
- examples/abl_states/run.py +2 -2
- examples/compare_rotors_pwakes/run.py +1 -1
- examples/compare_wakes/run.py +1 -2
- examples/dyn_wakes/run.py +29 -6
- examples/induction/run.py +3 -3
- examples/multi_height/run.py +1 -1
- examples/power_mask/run.py +2 -2
- examples/quickstart/run.py +0 -1
- examples/random_timeseries/run.py +3 -4
- examples/scan_row/run.py +3 -3
- examples/sequential/run.py +33 -10
- examples/single_state/run.py +3 -4
- examples/states_lookup_table/run.py +3 -3
- examples/streamline_wakes/run.py +27 -4
- examples/tab_file/run.py +3 -3
- examples/timelines/run.py +29 -5
- examples/timeseries/run.py +3 -3
- examples/timeseries_slurm/run.py +3 -3
- examples/wind_rose/run.py +3 -3
- examples/yawed_wake/run.py +16 -8
- foxes/__init__.py +21 -17
- foxes/algorithms/__init__.py +6 -6
- foxes/algorithms/downwind/__init__.py +2 -2
- foxes/algorithms/downwind/downwind.py +44 -12
- foxes/algorithms/downwind/models/__init__.py +6 -6
- foxes/algorithms/downwind/models/farm_wakes_calc.py +11 -9
- foxes/algorithms/downwind/models/init_farm_data.py +0 -1
- foxes/algorithms/downwind/models/point_wakes_calc.py +7 -13
- foxes/algorithms/downwind/models/set_amb_point_results.py +6 -6
- foxes/algorithms/iterative/__init__.py +7 -3
- foxes/algorithms/iterative/iterative.py +1 -2
- foxes/algorithms/iterative/models/__init__.py +7 -3
- foxes/algorithms/iterative/models/farm_wakes_calc.py +9 -5
- foxes/algorithms/sequential/__init__.py +3 -3
- foxes/algorithms/sequential/models/__init__.py +2 -2
- foxes/algorithms/sequential/sequential.py +3 -4
- foxes/config/__init__.py +5 -1
- foxes/constants.py +16 -0
- foxes/core/__init__.py +45 -22
- foxes/core/algorithm.py +0 -1
- foxes/core/data.py +19 -18
- foxes/core/engine.py +9 -13
- foxes/core/farm_controller.py +2 -2
- foxes/core/ground_model.py +4 -13
- foxes/core/model.py +5 -5
- foxes/core/partial_wakes_model.py +147 -10
- foxes/core/point_data_model.py +2 -3
- foxes/core/rotor_model.py +3 -3
- foxes/core/states.py +2 -3
- foxes/core/turbine.py +2 -1
- foxes/core/wake_deflection.py +130 -0
- foxes/core/wake_model.py +222 -9
- foxes/core/wake_superposition.py +122 -4
- foxes/core/wind_farm.py +6 -6
- foxes/data/__init__.py +7 -2
- foxes/data/states/weibull_sectors_12.csv +13 -0
- foxes/data/states/weibull_sectors_12.nc +0 -0
- foxes/engines/__init__.py +14 -15
- foxes/engines/dask.py +39 -14
- foxes/engines/numpy.py +0 -3
- foxes/input/__init__.py +3 -3
- foxes/input/farm_layout/__init__.py +8 -8
- foxes/input/farm_layout/from_csv.py +1 -1
- foxes/input/farm_layout/ring.py +0 -1
- foxes/input/states/__init__.py +22 -12
- foxes/input/states/create/__init__.py +3 -2
- foxes/input/states/field_data_nc.py +10 -24
- foxes/input/states/multi_height.py +9 -6
- foxes/input/states/one_point_flow.py +0 -4
- foxes/input/states/single.py +1 -1
- foxes/input/states/states_table.py +10 -7
- foxes/input/states/weibull_sectors.py +225 -0
- foxes/input/states/wrg_states.py +7 -5
- foxes/input/yaml/__init__.py +9 -3
- foxes/input/yaml/dict.py +19 -19
- foxes/input/yaml/windio/__init__.py +10 -5
- foxes/input/yaml/windio/read_attributes.py +2 -2
- foxes/input/yaml/windio/read_farm.py +5 -5
- foxes/input/yaml/windio/read_fields.py +4 -2
- foxes/input/yaml/windio/read_site.py +52 -0
- foxes/input/yaml/windio/windio.py +1 -1
- foxes/models/__init__.py +15 -14
- foxes/models/axial_induction/__init__.py +2 -2
- foxes/models/farm_controllers/__init__.py +1 -1
- foxes/models/farm_models/__init__.py +1 -1
- foxes/models/ground_models/__init__.py +3 -2
- foxes/models/ground_models/wake_mirror.py +3 -3
- foxes/models/model_book.py +175 -49
- foxes/models/partial_wakes/__init__.py +6 -6
- foxes/models/partial_wakes/axiwake.py +30 -5
- foxes/models/partial_wakes/centre.py +47 -0
- foxes/models/partial_wakes/rotor_points.py +41 -11
- foxes/models/partial_wakes/segregated.py +2 -25
- foxes/models/partial_wakes/top_hat.py +27 -2
- foxes/models/point_models/__init__.py +4 -4
- foxes/models/rotor_models/__init__.py +3 -3
- foxes/models/turbine_models/__init__.py +11 -11
- foxes/models/turbine_models/set_farm_vars.py +0 -1
- foxes/models/turbine_types/PCt_file.py +0 -2
- foxes/models/turbine_types/PCt_from_two.py +0 -2
- foxes/models/turbine_types/__init__.py +9 -9
- foxes/models/vertical_profiles/__init__.py +7 -7
- foxes/models/wake_deflections/__init__.py +3 -0
- foxes/models/{wake_frames/yawed_wakes.py → wake_deflections/bastankhah2016.py} +32 -111
- foxes/models/wake_deflections/jimenez.py +277 -0
- foxes/models/wake_deflections/no_deflection.py +94 -0
- foxes/models/wake_frames/__init__.py +6 -7
- foxes/models/wake_frames/dynamic_wakes.py +12 -3
- foxes/models/wake_frames/rotor_wd.py +3 -1
- foxes/models/wake_frames/seq_dynamic_wakes.py +41 -7
- foxes/models/wake_frames/streamlines.py +8 -6
- foxes/models/wake_frames/timelines.py +9 -3
- foxes/models/wake_models/__init__.py +7 -7
- foxes/models/wake_models/dist_sliced.py +50 -84
- foxes/models/wake_models/gaussian.py +20 -0
- foxes/models/wake_models/induction/__init__.py +5 -5
- foxes/models/wake_models/induction/rankine_half_body.py +30 -71
- foxes/models/wake_models/induction/rathmann.py +65 -64
- foxes/models/wake_models/induction/self_similar.py +65 -68
- foxes/models/wake_models/induction/self_similar2020.py +0 -3
- foxes/models/wake_models/induction/vortex_sheet.py +71 -75
- foxes/models/wake_models/ti/__init__.py +2 -2
- foxes/models/wake_models/ti/crespo_hernandez.py +5 -3
- foxes/models/wake_models/ti/iec_ti.py +6 -4
- foxes/models/wake_models/top_hat.py +58 -7
- foxes/models/wake_models/wind/__init__.py +6 -4
- foxes/models/wake_models/wind/bastankhah14.py +25 -7
- foxes/models/wake_models/wind/bastankhah16.py +35 -3
- foxes/models/wake_models/wind/jensen.py +15 -2
- foxes/models/wake_models/wind/turbopark.py +28 -2
- foxes/models/wake_superpositions/__init__.py +18 -9
- foxes/models/wake_superpositions/ti_linear.py +4 -4
- foxes/models/wake_superpositions/ti_max.py +4 -4
- foxes/models/wake_superpositions/ti_pow.py +4 -4
- foxes/models/wake_superpositions/ti_quadratic.py +4 -4
- foxes/models/wake_superpositions/wind_vector.py +257 -0
- foxes/models/wake_superpositions/ws_linear.py +9 -10
- foxes/models/wake_superpositions/ws_max.py +8 -8
- foxes/models/wake_superpositions/ws_pow.py +8 -8
- foxes/models/wake_superpositions/ws_product.py +4 -4
- foxes/models/wake_superpositions/ws_quadratic.py +8 -8
- foxes/output/__init__.py +21 -19
- foxes/output/farm_layout.py +2 -2
- foxes/output/farm_results_eval.py +15 -15
- foxes/output/flow_plots_2d/__init__.py +2 -2
- foxes/output/flow_plots_2d/get_fig.py +4 -2
- foxes/output/rose_plot.py +3 -3
- foxes/output/seq_plugins/__init__.py +2 -2
- foxes/output/seq_plugins/seq_flow_ani_plugin.py +0 -3
- foxes/output/seq_plugins/seq_wake_debug_plugin.py +0 -1
- foxes/output/turbine_type_curves.py +7 -8
- foxes/utils/__init__.py +37 -19
- foxes/utils/abl/__init__.py +4 -4
- foxes/utils/cubic_roots.py +1 -1
- foxes/utils/data_book.py +4 -3
- foxes/utils/dict.py +3 -3
- foxes/utils/exec_python.py +5 -5
- foxes/utils/factory.py +1 -3
- foxes/utils/geom2d/__init__.py +7 -5
- foxes/utils/geopandas_utils.py +2 -2
- foxes/utils/pandas_utils.py +4 -3
- foxes/utils/tab_files.py +0 -1
- foxes/utils/weibull.py +28 -0
- foxes/utils/wrg_utils.py +3 -1
- foxes/utils/xarray_utils.py +9 -2
- foxes/variables.py +67 -9
- {foxes-1.3.dist-info → foxes-1.4.dist-info}/METADATA +6 -15
- foxes-1.4.dist-info/RECORD +320 -0
- {foxes-1.3.dist-info → foxes-1.4.dist-info}/WHEEL +1 -1
- tests/1_verification/flappy_0_6/PCt_files/flappy/run.py +2 -3
- tests/1_verification/flappy_0_6/PCt_files/test_PCt_files.py +1 -1
- tests/1_verification/flappy_0_6/abl_states/flappy/run.py +0 -1
- tests/1_verification/flappy_0_6/partial_top_hat/flappy/run.py +0 -1
- tests/1_verification/flappy_0_6/partial_top_hat/test_partial_top_hat.py +0 -2
- tests/1_verification/flappy_0_6/row_Jensen_linear_centre/test_row_Jensen_linear_centre.py +0 -1
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/test_row_Jensen_linear_tophat.py +0 -1
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/test_row_Jensen_linear_tophat_IECTI_2005.py +0 -1
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/test_row_Jensen_linear_tophat_IECTI_2019.py +0 -1
- tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/test_row_Jensen_quadratic_centre.py +0 -1
- tests/1_verification/flappy_0_6_2/grid_rotors/flappy/run.py +0 -2
- tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/test_row_Bastankhah_Crespo.py +0 -1
- tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/flappy/run.py +0 -1
- tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/test_row_Bastankhah_linear_centre.py +0 -1
- foxes/output/round.py +0 -10
- foxes/utils/pandas_helpers.py +0 -178
- foxes-1.3.dist-info/RECORD +0 -313
- {foxes-1.3.dist-info → foxes-1.4.dist-info}/entry_points.txt +0 -0
- {foxes-1.3.dist-info → foxes-1.4.dist-info/licenses}/LICENSE +0 -0
- {foxes-1.3.dist-info → foxes-1.4.dist-info}/top_level.txt +0 -0
foxes/utils/wrg_utils.py
CHANGED
|
@@ -42,7 +42,9 @@ class ReaderWRG:
|
|
|
42
42
|
int(self._res),
|
|
43
43
|
)
|
|
44
44
|
|
|
45
|
-
cols_sel
|
|
45
|
+
def cols_sel(name, secs):
|
|
46
|
+
"""little helper to create column names"""
|
|
47
|
+
return [f"{name}_{i}" for i in range(secs)]
|
|
46
48
|
|
|
47
49
|
cols = [0] * (8 + 3 * self._n_sectors)
|
|
48
50
|
cols[0] = "utmx"
|
foxes/utils/xarray_utils.py
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import numpy as np
|
|
2
|
+
from xarray import Dataset
|
|
1
3
|
from pathlib import Path
|
|
2
4
|
|
|
3
5
|
from foxes.variables import get_default_digits
|
|
@@ -31,18 +33,23 @@ def write_nc(
|
|
|
31
33
|
"""
|
|
32
34
|
fpath = Path(fpath)
|
|
33
35
|
if round is not None:
|
|
36
|
+
crds = {}
|
|
34
37
|
for v in ds.coords.keys():
|
|
35
38
|
d = round.get(v, get_default_digits(v))
|
|
36
39
|
if d is not None:
|
|
37
40
|
if verbosity > 1:
|
|
38
41
|
print(f"File {fpath.name}: Rounding {v} to {d} decimals")
|
|
39
|
-
|
|
42
|
+
crds[v] = np.round(ds[v].to_numpy(), d)
|
|
43
|
+
else:
|
|
44
|
+
crds[v] = ds[v].to_numpy()
|
|
45
|
+
dvrs = {}
|
|
40
46
|
for v in ds.data_vars.keys():
|
|
41
47
|
d = round.get(v, get_default_digits(v))
|
|
42
48
|
if d is not None:
|
|
43
49
|
if verbosity > 1:
|
|
44
50
|
print(f"File {fpath.name}: Rounding {v} to {d} decimals")
|
|
45
|
-
|
|
51
|
+
dvrs[v] = (ds[v].dims, np.round(ds[v].to_numpy(), d))
|
|
52
|
+
ds = Dataset(coords=crds, data_vars=dvrs)
|
|
46
53
|
|
|
47
54
|
enc = None
|
|
48
55
|
if complevel is not None and complevel > 0:
|
foxes/variables.py
CHANGED
|
@@ -54,6 +54,21 @@ WD = "WD"
|
|
|
54
54
|
:group: foxes.variables
|
|
55
55
|
"""
|
|
56
56
|
|
|
57
|
+
UV = "UV"
|
|
58
|
+
""" The 2D wind vector in m/s
|
|
59
|
+
:group: foxes.variables
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
U = "U"
|
|
63
|
+
""" The first horizontal wind vector component in m/s
|
|
64
|
+
:group: foxes.variables
|
|
65
|
+
"""
|
|
66
|
+
|
|
67
|
+
V = "V"
|
|
68
|
+
""" The second horizontal wind vector component in m/s
|
|
69
|
+
:group: foxes.variables
|
|
70
|
+
"""
|
|
71
|
+
|
|
57
72
|
TI = "TI"
|
|
58
73
|
""" The turbulence intensity
|
|
59
74
|
:group: foxes.variables
|
|
@@ -128,6 +143,17 @@ calculated from third moment
|
|
|
128
143
|
"""
|
|
129
144
|
|
|
130
145
|
|
|
146
|
+
WEIBULL_A = "Weibull_A"
|
|
147
|
+
""" The Weibull scale parameter,
|
|
148
|
+
:group: foxes.variables
|
|
149
|
+
"""
|
|
150
|
+
|
|
151
|
+
WEIBULL_k = "Weibull_k"
|
|
152
|
+
""" The Weibull shape parameter,
|
|
153
|
+
:group: foxes.variables
|
|
154
|
+
"""
|
|
155
|
+
|
|
156
|
+
|
|
131
157
|
AMB_WS = "AMB_WS"
|
|
132
158
|
""" The ambient wind speed in m/s
|
|
133
159
|
:group: foxes.variables
|
|
@@ -138,6 +164,21 @@ AMB_WD = "AMB_WD"
|
|
|
138
164
|
:group: foxes.variables
|
|
139
165
|
"""
|
|
140
166
|
|
|
167
|
+
AMB_UV = "AMB_UV"
|
|
168
|
+
""" The ambient 2D wind vector in m/s
|
|
169
|
+
:group: foxes.variables
|
|
170
|
+
"""
|
|
171
|
+
|
|
172
|
+
AMB_U = "AMB_U"
|
|
173
|
+
""" The first horizontal ambient wind vector component in m/s
|
|
174
|
+
:group: foxes.variables
|
|
175
|
+
"""
|
|
176
|
+
|
|
177
|
+
AMB_V = "AMB_V"
|
|
178
|
+
""" The second horizontal ambient wind vector component in m/s
|
|
179
|
+
:group: foxes.variables
|
|
180
|
+
"""
|
|
181
|
+
|
|
141
182
|
AMB_TI = "AMB_TI"
|
|
142
183
|
""" The ambient turbulence intensity
|
|
143
184
|
:group: foxes.variables
|
|
@@ -203,6 +244,16 @@ calculated from third moment
|
|
|
203
244
|
:group: foxes.variables
|
|
204
245
|
"""
|
|
205
246
|
|
|
247
|
+
AMB_WEIBULL_A = "AMB_Weibull_A"
|
|
248
|
+
""" Ambient Weibull scale parameter,
|
|
249
|
+
:group: foxes.variables
|
|
250
|
+
"""
|
|
251
|
+
|
|
252
|
+
AMB_WEIBULL_k = "AMB_Weibull_k"
|
|
253
|
+
""" Ambient Weibull shape parameter,
|
|
254
|
+
:group: foxes.variables
|
|
255
|
+
"""
|
|
256
|
+
|
|
206
257
|
|
|
207
258
|
var2amb = {
|
|
208
259
|
v: f"AMB_{v}"
|
|
@@ -219,8 +270,13 @@ var2amb = {
|
|
|
219
270
|
REWS,
|
|
220
271
|
REWS2,
|
|
221
272
|
REWS3,
|
|
273
|
+
WEIBULL_A,
|
|
274
|
+
WEIBULL_k,
|
|
222
275
|
YLD,
|
|
223
276
|
CAP,
|
|
277
|
+
UV,
|
|
278
|
+
U,
|
|
279
|
+
V,
|
|
224
280
|
]
|
|
225
281
|
}
|
|
226
282
|
""" Mapping from variable to the corresponding
|
|
@@ -282,9 +338,10 @@ PA_BETA = "PA_beta"
|
|
|
282
338
|
:group: foxes.variables
|
|
283
339
|
"""
|
|
284
340
|
|
|
285
|
-
DEFAULT_DIGITS =
|
|
341
|
+
DEFAULT_DIGITS = 4
|
|
342
|
+
|
|
343
|
+
ROUND_DIGITS = {
|
|
286
344
|
WD: 3,
|
|
287
|
-
WS: 4,
|
|
288
345
|
TI: 6,
|
|
289
346
|
RHO: 5,
|
|
290
347
|
P: 3,
|
|
@@ -293,10 +350,14 @@ DEFAULT_DIGITS = {
|
|
|
293
350
|
YLD: 3,
|
|
294
351
|
CAP: 5,
|
|
295
352
|
EFF: 5,
|
|
353
|
+
WEIBULL_A: 3,
|
|
354
|
+
WEIBULL_k: 3,
|
|
355
|
+
YAW: 3,
|
|
356
|
+
YAWM: 3,
|
|
296
357
|
}
|
|
297
|
-
|
|
298
|
-
:
|
|
299
|
-
|
|
358
|
+
ROUND_DIGITS.update(
|
|
359
|
+
{var2amb[v]: ROUND_DIGITS[v] for v in var2amb.keys() if v in ROUND_DIGITS}
|
|
360
|
+
)
|
|
300
361
|
|
|
301
362
|
|
|
302
363
|
def get_default_digits(variable):
|
|
@@ -314,7 +375,4 @@ def get_default_digits(variable):
|
|
|
314
375
|
The default number of output digits
|
|
315
376
|
|
|
316
377
|
"""
|
|
317
|
-
|
|
318
|
-
if v in [REWS, REWS2, REWS3]:
|
|
319
|
-
v = WS
|
|
320
|
-
return DEFAULT_DIGITS.get(v, None)
|
|
378
|
+
return ROUND_DIGITS.get(variable, DEFAULT_DIGITS)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: foxes
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4
|
|
4
4
|
Summary: Farm Optimization and eXtended yield Evaluation Software
|
|
5
5
|
Author: Jonas Schulte
|
|
6
6
|
Maintainer: Jonas Schulte
|
|
@@ -56,16 +56,15 @@ Requires-Dist: scipy
|
|
|
56
56
|
Requires-Dist: cycler
|
|
57
57
|
Requires-Dist: tqdm
|
|
58
58
|
Requires-Dist: pyyaml
|
|
59
|
+
Requires-Dist: h5netcdf
|
|
59
60
|
Provides-Extra: opt
|
|
60
61
|
Requires-Dist: foxes-opt; extra == "opt"
|
|
61
62
|
Provides-Extra: dask
|
|
62
|
-
Requires-Dist: h5netcdf; extra == "dask"
|
|
63
63
|
Requires-Dist: dask; extra == "dask"
|
|
64
64
|
Requires-Dist: distributed; extra == "dask"
|
|
65
65
|
Requires-Dist: dask-jobqueue; extra == "dask"
|
|
66
66
|
Requires-Dist: setuptools; extra == "dask"
|
|
67
67
|
Provides-Extra: eng
|
|
68
|
-
Requires-Dist: h5netcdf; extra == "eng"
|
|
69
68
|
Requires-Dist: multiprocess; extra == "eng"
|
|
70
69
|
Requires-Dist: dask; extra == "eng"
|
|
71
70
|
Requires-Dist: distributed; extra == "eng"
|
|
@@ -74,7 +73,6 @@ Requires-Dist: setuptools; extra == "eng"
|
|
|
74
73
|
Requires-Dist: mpi4py; extra == "eng"
|
|
75
74
|
Requires-Dist: ray; extra == "eng"
|
|
76
75
|
Provides-Extra: eng0
|
|
77
|
-
Requires-Dist: h5netcdf; extra == "eng0"
|
|
78
76
|
Requires-Dist: multiprocess; extra == "eng0"
|
|
79
77
|
Requires-Dist: dask; extra == "eng0"
|
|
80
78
|
Requires-Dist: distributed; extra == "eng0"
|
|
@@ -84,7 +82,6 @@ Requires-Dist: ray; extra == "eng0"
|
|
|
84
82
|
Provides-Extra: test
|
|
85
83
|
Requires-Dist: flake8; extra == "test"
|
|
86
84
|
Requires-Dist: pytest; extra == "test"
|
|
87
|
-
Requires-Dist: h5netcdf; extra == "test"
|
|
88
85
|
Provides-Extra: doc
|
|
89
86
|
Requires-Dist: setuptools; extra == "doc"
|
|
90
87
|
Requires-Dist: sphinx; extra == "doc"
|
|
@@ -101,7 +98,8 @@ Requires-Dist: flake8; extra == "dev"
|
|
|
101
98
|
Requires-Dist: pytest; extra == "dev"
|
|
102
99
|
Requires-Dist: jupyter; extra == "dev"
|
|
103
100
|
Requires-Dist: objsize; extra == "dev"
|
|
104
|
-
Requires-Dist:
|
|
101
|
+
Requires-Dist: ruff; extra == "dev"
|
|
102
|
+
Dynamic: license-file
|
|
105
103
|
|
|
106
104
|
# Welcome to foxes
|
|
107
105
|
|
|
@@ -161,14 +159,7 @@ Evaluation Software"`
|
|
|
161
159
|
|
|
162
160
|
## Requirements
|
|
163
161
|
|
|
164
|
-
The supported Python versions are
|
|
165
|
-
|
|
166
|
-
- `Python 3.8`
|
|
167
|
-
- `Python 3.9`
|
|
168
|
-
- `Python 3.10`
|
|
169
|
-
- `Python 3.11`
|
|
170
|
-
- `Python 3.12`
|
|
171
|
-
- `Python 3.13`
|
|
162
|
+
The supported Python versions are `Python 3.8`...`3.13`.
|
|
172
163
|
|
|
173
164
|
## Installation
|
|
174
165
|
|
|
@@ -0,0 +1,320 @@
|
|
|
1
|
+
docs/source/conf.py,sha256=4Ezd0T115OfGbMkEL9K9ngwk9zzNKDM4SEnYq-V2BKU,12351
|
|
2
|
+
examples/abl_states/run.py,sha256=NUyNTRzPb2mW_oiWj3NWgHb2lx-6F_CZ27g9Y9_a_to,4598
|
|
3
|
+
examples/compare_rotors_pwakes/run.py,sha256=yGvSGguLcgJmYNwTUGKJDRBxRRFFRYKF4v4VLUo9Wfw,6642
|
|
4
|
+
examples/compare_wakes/run.py,sha256=uS3svL5UYcttvtSW6jCUyS0_qW0-ArBkY-msYfvJSkE,7353
|
|
5
|
+
examples/dyn_wakes/run.py,sha256=7L9Ao-U2TIxE8VT1ZT1rFCHrOBlsBeV1Vck0QDzH9Ak,9364
|
|
6
|
+
examples/field_data_nc/run.py,sha256=EYx9B5axIPW2yfVet4QpMGyPMbMbPoTRvGrl249L_RM,3570
|
|
7
|
+
examples/induction/run.py,sha256=Vqrjuw1_inqseihl-8_qgp4rq-7kc2NawsKa39Ux7V4,6340
|
|
8
|
+
examples/multi_height/run.py,sha256=9Gbx-FiMro1pxiMHMO8pomP8tgBbuW6w-jaJW_S5zMA,3294
|
|
9
|
+
examples/power_mask/run.py,sha256=BXR0V_9y1aebzLnj2bXIFXMHQ1veaCMAPLRAH8EMOhY,7596
|
|
10
|
+
examples/quickstart/run.py,sha256=fo8A_oioPyUtNs4EiHZE1fCHH6DRuXFQzWJyHHd_oiI,427
|
|
11
|
+
examples/random_timeseries/run.py,sha256=ASpLTZkG9tLVbG34vyiBK1zJgvvAfl45EhA6r6jHDxM,6111
|
|
12
|
+
examples/scan_row/run.py,sha256=ti3XCL4MSyL5b0qMsbJOZfpLNOm6OiMwHd_sN5939tg,5850
|
|
13
|
+
examples/sector_management/run.py,sha256=WQvrHqtC7_u6JvZfbRsVSb3SPYDjCp-ZJpC-nZsQf5M,4451
|
|
14
|
+
examples/sequential/run.py,sha256=pd7L3obYyqNZXzDxntRKsfhqunG0SIjZslbD42WcveI,6758
|
|
15
|
+
examples/single_state/run.py,sha256=VfZD5Ev4jLo6LQ7antKmZFU8SDfezeI9ERSf4ASvKsU,6162
|
|
16
|
+
examples/states_lookup_table/run.py,sha256=XZkntAbHfZwozQ0GFOQiKl4yjm7v4TjC4lwSsF1Ixgs,3922
|
|
17
|
+
examples/streamline_wakes/run.py,sha256=JT2DrrqatcqP93AKPbjhvWoIziM2O5QFWZtQrHIOBE4,4681
|
|
18
|
+
examples/tab_file/run.py,sha256=xe4VUwyl3eYMUGtyS7kuieGeoYo9mEq_ZvQ6E1rZ1uE,4370
|
|
19
|
+
examples/timelines/run.py,sha256=ca1koiA6qX8LVrAGrYMJRJY7xChwwjHndP6AB5LNlqA,8261
|
|
20
|
+
examples/timeseries/run.py,sha256=QN6xXXUOZFh12FBZ6to_WC1rnLkCzebay2ORiLp1X10,5399
|
|
21
|
+
examples/timeseries_slurm/run.py,sha256=4yHi4SXr7rff4tbJNQEUa9Dd7Dvli2XrJExu-xdE2Us,5587
|
|
22
|
+
examples/wind_rose/run.py,sha256=QeV6tbJcJcDD8vC1kQqRgyyeRjACzTmYkedLQ9eqYe0,4253
|
|
23
|
+
examples/yawed_wake/run.py,sha256=kfs-KrACVYjJm2gAxzdy6QalwkjFJn963KkzBqF1ucU,6503
|
|
24
|
+
foxes/__init__.py,sha256=1RPU7w3WJ3jFb2aJdZKRy-6Fje9qAaH85WYcOCiDvwk,1375
|
|
25
|
+
foxes/constants.py,sha256=jQcyeU53V629Tf8qQWc2F4Xw1rV3ywtJiT-g1JWenNg,3842
|
|
26
|
+
foxes/variables.py,sha256=sK58u3HJRsWo-fbE7GPlQUhF0YUhY-qSg6Vl8Pv1Eo8,6144
|
|
27
|
+
foxes/algorithms/__init__.py,sha256=L0VyK-B81zXr-IFI6NMhJ7Px9XVhlkmX0M0IrKhcf0o,327
|
|
28
|
+
foxes/algorithms/downwind/__init__.py,sha256=tdTnMEVLi58EMkqStollQb4gPug4x8Te2K8ddAxkas8,75
|
|
29
|
+
foxes/algorithms/downwind/downwind.py,sha256=VTuu8_BpQbjcr1Q2L_YPIhXhfuKqJOj-BzIe_xVMcY0,26219
|
|
30
|
+
foxes/algorithms/downwind/models/__init__.py,sha256=R3RAfpvNvDhzFJeyc79si3nk7odfzpeitXnefBgX9co,429
|
|
31
|
+
foxes/algorithms/downwind/models/farm_wakes_calc.py,sha256=dgT9XdygV2aEiSo56mT8TJqbjttT0-9zujMUXn8oeVY,6005
|
|
32
|
+
foxes/algorithms/downwind/models/init_farm_data.py,sha256=_K2eZpuFwZJ3BEl0JnbAbJ0RNy-4Pxe9tZF6QPcVTa0,4146
|
|
33
|
+
foxes/algorithms/downwind/models/point_wakes_calc.py,sha256=PUKfn3j0sh6XwBfn1sYDSnNi-xXxIifLjshdtX1HJwo,4335
|
|
34
|
+
foxes/algorithms/downwind/models/reorder_farm_output.py,sha256=SEZXJNJcYjXd53PGg1mgEQzjevSlLkcUy8Ytz4rvS1Q,2128
|
|
35
|
+
foxes/algorithms/downwind/models/set_amb_farm_results.py,sha256=_xYNjFZiofHLGIFNw671izXUn37psX-NhSIO63IRwvA,1732
|
|
36
|
+
foxes/algorithms/downwind/models/set_amb_point_results.py,sha256=rULe4sVg2QTwROqqEW-kNqOk_Jo6waywhUpY1O8toRo,2328
|
|
37
|
+
foxes/algorithms/iterative/__init__.py,sha256=MxevjE6Rpv9ApaDU7cUGXgAbSPY3CRR0eJACKEoP6Qg,313
|
|
38
|
+
foxes/algorithms/iterative/iterative.py,sha256=cM3NVWvWHQlikcGFszQQS4fog-eAEFv6cJBXK0cr9r8,9928
|
|
39
|
+
foxes/algorithms/iterative/models/__init__.py,sha256=AQcTV886elaXCNaIZUL_CzOy9ylXxbVLcaexMJRWliM,318
|
|
40
|
+
foxes/algorithms/iterative/models/convergence.py,sha256=5fCeTMisYEhgvPRbLKMK0XYsSSr2xWqqzB-pUBrIjYk,6466
|
|
41
|
+
foxes/algorithms/iterative/models/farm_wakes_calc.py,sha256=bbrmwvoiREjtHjjWCtxU76sq_tmPVTH-cbfp8vnNDUE,5220
|
|
42
|
+
foxes/algorithms/iterative/models/urelax.py,sha256=412fHSpi_4MATE1qRzqcZDFff6iJpV1h3QIBL_7giQE,2076
|
|
43
|
+
foxes/algorithms/sequential/__init__.py,sha256=3Amu4cBGzLyy45pjL1rjkMINtAYnanLfs_3Puugj-WI,138
|
|
44
|
+
foxes/algorithms/sequential/sequential.py,sha256=5tBHou_lCZFJ9HsTeZUX7P_sM98vaQNKqFIxhDUN9No,12036
|
|
45
|
+
foxes/algorithms/sequential/models/__init__.py,sha256=bEdIE4djbiNxnW0eNy1nM11TmD5RpZ6LZum-pQcv17A,101
|
|
46
|
+
foxes/algorithms/sequential/models/plugin.py,sha256=HhCeHM_YoJRMXuZKa8rXUJZDhWf5rNl28_UfDLSGWvA,1330
|
|
47
|
+
foxes/algorithms/sequential/models/seq_state.py,sha256=al7XhLKLQSGhfUZw--Bz4RNNbA1jeObKZd1v58hEt-Q,3206
|
|
48
|
+
foxes/config/__init__.py,sha256=M2FrI1gO6SZUUPsQe1KL_-JNyUUt_Lk4nOw7cyNpHew,223
|
|
49
|
+
foxes/config/config.py,sha256=e3HhitD2Xleqm3utoXLGAu8Vg16app35Cpx4nBhnZm8,4318
|
|
50
|
+
foxes/core/__init__.py,sha256=iMuUuPsFERvjY2PQa7PCEsxrZYRJ8IORJs3k3OoerFw,1985
|
|
51
|
+
foxes/core/algorithm.py,sha256=lSeWTdiWu6CEyLe3s7YEw6pewBhtQtMn56maiRooYFE,27445
|
|
52
|
+
foxes/core/axial_induction_model.py,sha256=sGbTHFMjEYKiVjElLP_SCRulKatcK0wsEXf30zty2Vc,1023
|
|
53
|
+
foxes/core/data.py,sha256=Qv_RnLHfOq-EVpz4fizS9GB_uPW9SdNhssUa35m1g_0,23276
|
|
54
|
+
foxes/core/data_calc_model.py,sha256=Hhl2ZapafsIvq5z_YWlGqB3kkF64txohU_MHlfHAvpk,1334
|
|
55
|
+
foxes/core/engine.py,sha256=QQVE_4e3OL5Yq-Vg1mj_Lzo2tiNlh2RggNghn1CV_2k,20712
|
|
56
|
+
foxes/core/farm_controller.py,sha256=W-NQChGkvxwd4MtFWjEdoZi3e7wQ86J2H2_rf4mJ1Q8,13835
|
|
57
|
+
foxes/core/farm_data_model.py,sha256=_1DXJzyfLwha80aL-BT57wHLimOiiw1rPTxH8qxVl54,7384
|
|
58
|
+
foxes/core/farm_model.py,sha256=ogFahCjC2dIBcjnCMmy0cTGulKTDA2ufFUzODf0-KnI,265
|
|
59
|
+
foxes/core/ground_model.py,sha256=taRqQ0Dg_2jEWXLusgEmlpDqo7j7xkCnz9MwkPHgZ4w,6942
|
|
60
|
+
foxes/core/model.py,sha256=WRbaXwHHLmPKAONcXe_Zhy6ZYfuPpgEe5-FAGrLRyiw,19666
|
|
61
|
+
foxes/core/partial_wakes_model.py,sha256=aOG-vss4yiw7upWl6EPue-4Dsl4z1drd3LndPTt74Kc,9782
|
|
62
|
+
foxes/core/point_data_model.py,sha256=qaqi7woSNCNwr4k0EGruu51SvJ6ubpdV-6s6_kCdQhE,7521
|
|
63
|
+
foxes/core/rotor_model.py,sha256=MPQoTafjuTkkrfSD90yua6dg5HOU3XuORRsynjCnvcc,13149
|
|
64
|
+
foxes/core/states.py,sha256=aG1jRR1EVTwQQ-dj-dsx_FL3y9XjFy9uJ8kYNPgA58U,6968
|
|
65
|
+
foxes/core/turbine.py,sha256=BVTMZpueogoNF84PNVUrcy54Qpk5Z9_lQIs68-3hb5o,3090
|
|
66
|
+
foxes/core/turbine_model.py,sha256=I-t-2lNVDaifg_cHEurqan9Ko9kcI1k-VEkKS_nyX-o,1585
|
|
67
|
+
foxes/core/turbine_type.py,sha256=DbzDmSfSow7RPCyRlQ_WrzWJ7fPnIN0BBGVzWhhG8FU,3174
|
|
68
|
+
foxes/core/vertical_profile.py,sha256=5fRmvTc-9afFDfaDLt2UY7xATK36o8Jq2hxATueuelw,1364
|
|
69
|
+
foxes/core/wake_deflection.py,sha256=kpw8Qx42snzkECxvlZ6sbtU_jdLrcQBsep9KUJC5Up0,3182
|
|
70
|
+
foxes/core/wake_frame.py,sha256=h5yR2_dEVOvroAizhszexfYqDvU7E7TiFfETELMKkBs,9240
|
|
71
|
+
foxes/core/wake_model.py,sha256=F2gj7_N7c6cliZAZS62eoxdEQIAL1ynjno3qUmtc16U,14163
|
|
72
|
+
foxes/core/wake_superposition.py,sha256=AOrELRpgtN7JMizh0EAdBBIj4YEW5gRE46jXxWOl3AY,6548
|
|
73
|
+
foxes/core/wind_farm.py,sha256=KZXjyBXn4btYJXcRQExYcbKlziRhRvpEGgUqM7nltZE,4891
|
|
74
|
+
foxes/data/__init__.py,sha256=IqcFyDcc4dnLhXoGqMmVgaYHDB2nMNFQ0GJbyIGGgo4,334
|
|
75
|
+
foxes/data/parse.py,sha256=x71oWLyvVsMJ7XVL9VRQXZbflnTXqBaxyBdoMQdZExs,2947
|
|
76
|
+
foxes/data/static_data.py,sha256=3_1ngRLCxBHxYAqD_kwz8_EcxlNa-RcB5Wjrx6swfwM,712
|
|
77
|
+
foxes/data/farms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
78
|
+
foxes/data/farms/test_farm_67.csv,sha256=TwHt8NVuyP6p2G1VaM_Mi4ENBaHyg4eF6jz0zXQQDro,1872
|
|
79
|
+
foxes/data/power_ct_curves/DTU-10MW-D178d3-H119.csv,sha256=71C1HTf9QtAvavYLwo6US-JmEGyiByrnvZPysua8muE,410
|
|
80
|
+
foxes/data/power_ct_curves/IEA-15MW-D240-H150.csv,sha256=ITmkbLIG-jsAoxg1eYgJEbxohEE414pRUO7bzwkv6VU,300
|
|
81
|
+
foxes/data/power_ct_curves/IWT-7d5MW-D164-H100.csv,sha256=K9yAhgkCZfRBKZibxKbHtWrKg5mIHnMCswdOVd2uyQ0,851
|
|
82
|
+
foxes/data/power_ct_curves/NREL-5MW-D126-H90.csv,sha256=u2b6LUCCKL6bYn2lNrB02MqBnwT-veL4CCi6Km4am-E,401
|
|
83
|
+
foxes/data/power_ct_curves/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
84
|
+
foxes/data/states/WRF-Timeseries-3000.nc,sha256=ZB1b-CTCu_yiLH4sKhQFmb47O-pOh7Ab2qyhx6P0Z5I,453633
|
|
85
|
+
foxes/data/states/WRF-Timeseries-4464.csv.gz,sha256=bjZxvnVp_iyVmIhd-N9lE5TJUZQvunsuueVXu_MnLpk,427815
|
|
86
|
+
foxes/data/states/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
|
+
foxes/data/states/abl_states_6000.csv.gz,sha256=wzbMKNk3jZ3sRlV4aYJSv_ycncEryXaFT1uQ3oNYJSQ,126124
|
|
88
|
+
foxes/data/states/timeseries_100.csv.gz,sha256=7jIJPuseoMyc6kB-4JTzWJuPmugfXjg5gP5AKnvOdIs,501
|
|
89
|
+
foxes/data/states/timeseries_3000.csv.gz,sha256=e6hkBMl2oQ0y9zy1I2uh3xyv4YyH9NbRnLwbR4EU1Jc,29085
|
|
90
|
+
foxes/data/states/timeseries_8000.csv.gz,sha256=CzayW5CtnP9Y2kxCE4jlsDZwr6G_RMfacnp17mUUQ_4,78694
|
|
91
|
+
foxes/data/states/weibull_sectors_12.csv,sha256=2oW08RYEUM5UhZuPTBIr0uOQwAOSgSvgZdtSUtRjm6w,670
|
|
92
|
+
foxes/data/states/weibull_sectors_12.nc,sha256=PL69YnXUhpTgc3AxXCialvZRTKyQH3zyvCjDv2iRyPQ,9471
|
|
93
|
+
foxes/data/states/wind_rose_bremen.csv,sha256=ixSf8-_esjFsBtfT3Y92k67QrJPDx6dY3uBhOSV-hj4,4943
|
|
94
|
+
foxes/data/states/wind_rotation.nc,sha256=-ZLfpxa_BJpRUABgJsK5I7c8ogAWTrYNE18un7FxhnU,10990
|
|
95
|
+
foxes/data/states/winds100.tab,sha256=X2Cw0H_-HzYEcb7ezn3ntWlKQXIxrWLNONVsrkmsof8,3061
|
|
96
|
+
foxes/engines/__init__.py,sha256=NvN4Kw3AjWYYhCRqXC1woyAchA1P6C507H2X-WfKOV8,712
|
|
97
|
+
foxes/engines/dask.py,sha256=ExGROdm2x7QaW_XvA4J89vISNXxsdfmhBGe9AkKU694,32326
|
|
98
|
+
foxes/engines/default.py,sha256=UJGUq-F6eUejb91RtXLT_OBx9bh6upN2sTNFG3wCgIM,2799
|
|
99
|
+
foxes/engines/futures.py,sha256=_VQXNLb0AxTtTouy96LhBnwPldHiG0xldHjpChKyNxs,1503
|
|
100
|
+
foxes/engines/mpi.py,sha256=XR9xFX6Spw8OKQ7x4qYOSeUlxcFWkwndNRiQ3IomkdM,650
|
|
101
|
+
foxes/engines/multiprocess.py,sha256=X4S-AnhnYuONpfZ3pKWi4VH9mm68ZMNm43ELPoeb-Ek,1328
|
|
102
|
+
foxes/engines/numpy.py,sha256=_lJFXBCGPt8FZ5rWKqtIl1o8z3dTdSlm4dczX9DpoLw,5761
|
|
103
|
+
foxes/engines/pool.py,sha256=Zye2gBs8NnBXy-Oz0lgvJCltX94yrEALNKMgh4CYtl0,8631
|
|
104
|
+
foxes/engines/ray.py,sha256=Otlc1ZfoTiNE6sq9rq1y212tVbaVDfxryqAl4T0AM_A,1622
|
|
105
|
+
foxes/engines/single.py,sha256=kd_qrfFRq9LFFnAfdKPcjIJ52ogxf_x05yAxbcsjSdQ,4692
|
|
106
|
+
foxes/input/__init__.py,sha256=JodEdc77y5I-CsgfT5HadMK7DH5EKcr9uGLEVcgM-wY,157
|
|
107
|
+
foxes/input/farm_layout/__init__.py,sha256=jsSCCAZtYQk9DX2QUYeRFarbxZ1UPN9ghglFJakyafw,428
|
|
108
|
+
foxes/input/farm_layout/from_csv.py,sha256=MAmsS83rvoZUfCeXTC6JixL92kZ7PQpvqtmz9iKlckE,3441
|
|
109
|
+
foxes/input/farm_layout/from_df.py,sha256=F5CKXHyL2rcrpCQqqqOr2HHX-BJ5VU1JQymzywmkBtc,574
|
|
110
|
+
foxes/input/farm_layout/from_file.py,sha256=PBUOq0Gb-Tq_6aS1HmSJBTNpDAT2UUGlgX1BDJ2CqAs,1643
|
|
111
|
+
foxes/input/farm_layout/from_json.py,sha256=0tib1J7h-x_wgI79pWhT-Vu90UcfZvUKj5rERfecTmE,1711
|
|
112
|
+
foxes/input/farm_layout/from_random.py,sha256=6ZYKbdV6x11MbQRAHs5nVYBAG-1K295xsMXtfCfAfts,1126
|
|
113
|
+
foxes/input/farm_layout/grid.py,sha256=CsVIYfCPyznEhDLO_tsTxBPJ591x8l-axDg4M5yArg0,1492
|
|
114
|
+
foxes/input/farm_layout/ring.py,sha256=JpqD-va-lu69VpZyT4v2MyUCyNwjdkXAq5g4_LLVs_A,1454
|
|
115
|
+
foxes/input/farm_layout/row.py,sha256=Bx9woFNkXbFXJg51GX2p2PbVgdxV3Ckxr-3TkB04PS4,1198
|
|
116
|
+
foxes/input/states/__init__.py,sha256=mmAnkGBrss3QhgbF7SJFShFYxHVCk-y3-RwqsyR0m44,1138
|
|
117
|
+
foxes/input/states/field_data_nc.py,sha256=EOr0h28orhw9nZ8_QfNX8adxLMpBY5riRRkELTkKLsw,28648
|
|
118
|
+
foxes/input/states/multi_height.py,sha256=Rd1nk3eG_6N4njLNfRj6E-4TDfw2CzuoV3bzgIZASTc,23386
|
|
119
|
+
foxes/input/states/one_point_flow.py,sha256=FZJrCxSfLIeF7nDkxe50uLz0WJ-Zw6R_Juvp76DmGjk,18165
|
|
120
|
+
foxes/input/states/scan.py,sha256=p-hmC3nod2oomV34AwkRK95dEU1Objs-Snqrn-UnZ7g,5863
|
|
121
|
+
foxes/input/states/single.py,sha256=A_oEACeWjJz-171MQiXySgUv7we2IrNSehWOjHyri0s,5910
|
|
122
|
+
foxes/input/states/states_table.py,sha256=Ucjyga3HwsThfAg43T0sleJm08Z0cqfuo7ctS0txz5A,20004
|
|
123
|
+
foxes/input/states/weibull_sectors.py,sha256=MnjlrSyBMBBssClQKTXRlnNEtWR1pVB6DerYv-Dvh7Q,7933
|
|
124
|
+
foxes/input/states/wrg_states.py,sha256=kbWxoUqquc8W2pntBoyzBPyBkvop8wBWTT8LZW90JZ8,9440
|
|
125
|
+
foxes/input/states/create/__init__.py,sha256=BNeDf2eAkNgHFvocXJBfpHSUU5uPcc0EkMb6BQRp_Y8,244
|
|
126
|
+
foxes/input/states/create/random_abl_states.py,sha256=LFCA19TCInXmB2FbKDaOkqCDsN0eOUIp34yzR2NQjtQ,3425
|
|
127
|
+
foxes/input/states/create/random_timeseries.py,sha256=gJpaQ4nEXxOjI4hp3xjNcVbCsmZUm-brXUxoqDb63WE,1266
|
|
128
|
+
foxes/input/yaml/__init__.py,sha256=XGCJlbE1SwavEWEKDRAuJwqAi9Afm_qwPnQLxPKjzP4,385
|
|
129
|
+
foxes/input/yaml/dict.py,sha256=QSNbhJF6mU4NP51XyQuKmfK2JK55CxdRfsAqhfvt9UU,14988
|
|
130
|
+
foxes/input/yaml/yaml.py,sha256=s6d-nPMdzNFis_sfnN3LPSn_Cco7hWseSeqKHJrvGjs,2715
|
|
131
|
+
foxes/input/yaml/windio/__init__.py,sha256=HXJEBEDd1FbATkDfjXzA3sgo9detUxgvekmC32QOc5E,446
|
|
132
|
+
foxes/input/yaml/windio/read_attributes.py,sha256=K1NOwhiPx7UtQ6pRCXXhYTPejXSBUebs69DBDmaDbEc,12466
|
|
133
|
+
foxes/input/yaml/windio/read_farm.py,sha256=5g7_gcRWq3Vt7q5MnCptENRU3YCLvbb1WW2afp8U57k,7565
|
|
134
|
+
foxes/input/yaml/windio/read_fields.py,sha256=lWMm5GQ6AcnQ_bQPHpIDpClya6yQd9GdpR0qrImGyIs,4738
|
|
135
|
+
foxes/input/yaml/windio/read_outputs.py,sha256=OGMO60ISXRJJihiRDrJr98xpSF10KwryUMHB4rUeCyE,7341
|
|
136
|
+
foxes/input/yaml/windio/read_site.py,sha256=CJVnsvjhaiMXkfwJuJ4D2AQx_tIT8SR4Gk6ReuQ27YI,9856
|
|
137
|
+
foxes/input/yaml/windio/windio.py,sha256=rItWiFUwmaBVzVq5Dx5p1-XoqX9EZTvUCVvwjKV6TlQ,5274
|
|
138
|
+
foxes/models/__init__.py,sha256=-wXjx9PkxWT2Koq4tmtCuasnlb8RIeLVWP7iSYPQ1Fc,727
|
|
139
|
+
foxes/models/model_book.py,sha256=o7F1o-btP4QnY6jT5cwk9UEBxD5TQ-DXkHcZv2f4V8s,29968
|
|
140
|
+
foxes/models/axial_induction/__init__.py,sha256=QJN1RLxIt1EhQXIDVLjPSZ1zIoaS6YjK9VDdgw7NwsA,124
|
|
141
|
+
foxes/models/axial_induction/betz.py,sha256=rAaq7pnu-FmfYh61BU5Af1h4_bG2AAimP4Qah1aZo88,894
|
|
142
|
+
foxes/models/axial_induction/madsen.py,sha256=_-ycfh8SnIpCKWm1uwx5VH7f49FQvR0y1Nbb_U8xWyU,1403
|
|
143
|
+
foxes/models/farm_controllers/__init__.py,sha256=0HEGiWEsrKjm8Opf890DzVHwTptSlTSgeo5QJMx9gnw,95
|
|
144
|
+
foxes/models/farm_controllers/basic.py,sha256=6pinNXiyfoG3apXhqQWcnxx4vN_7Q63YryXX5Z7kTE0,249
|
|
145
|
+
foxes/models/farm_models/__init__.py,sha256=8qV0dQ2N3HJpbOolhLtBs0LMdC8hctxy8J-OiqcSvKo,87
|
|
146
|
+
foxes/models/farm_models/turbine2farm.py,sha256=LuK-qAy4aVXBqFCM4-1qogwAA4qfHsjYRFsrZy_OUro,2276
|
|
147
|
+
foxes/models/ground_models/__init__.py,sha256=r_MuSulOGQ1SnrojfpwU9kky7tZhPtCwXbXIVvGdrkg,148
|
|
148
|
+
foxes/models/ground_models/no_ground.py,sha256=pDuHAFHHgpEVIi1spie9ooR7OG-4l8_KPrGYQhdCT3I,149
|
|
149
|
+
foxes/models/ground_models/wake_mirror.py,sha256=haPEut2_r06PK9xg8qYSd3bEN4NoVDUavPL6vdrPWso,4493
|
|
150
|
+
foxes/models/partial_wakes/__init__.py,sha256=rw71ElknHErJ3Cz1EKRKLtFpA6izWSjPPaovCQIJ1m4,348
|
|
151
|
+
foxes/models/partial_wakes/axiwake.py,sha256=QfB6rMsYCaBXVurdV8GytIxy53ur7WLk5F81hfgM6_w,7699
|
|
152
|
+
foxes/models/partial_wakes/centre.py,sha256=Vq_Y3m1IsHAc9L7DwdUaqR2PmF8I3440GCLbWfcGaPw,2198
|
|
153
|
+
foxes/models/partial_wakes/grid.py,sha256=SOymgn0MGvUFSAWd9YKDCzXYtizsuiNV-yP0oqrKS1E,600
|
|
154
|
+
foxes/models/partial_wakes/rotor_points.py,sha256=KrMsPg59UrdYkjCKV0v084M7NHLqKw2N-FP3-tw_FPA,3577
|
|
155
|
+
foxes/models/partial_wakes/segregated.py,sha256=G-fd84yUAyUlBkI-5TJSlxiPgpjyaZBwjN9jyxsOkLw,3828
|
|
156
|
+
foxes/models/partial_wakes/top_hat.py,sha256=D15MughXnUvk6uO_q5C2BJecuRuXDR48iUcsI8obkz8,6744
|
|
157
|
+
foxes/models/point_models/__init__.py,sha256=MRjb3NHv0GKzoF8gAigUsHwmrMT1-CtPIqoeSinKrjw,216
|
|
158
|
+
foxes/models/point_models/set_uniform_data.py,sha256=dK6f-Nk_qvWqUPt3jnMkkIftGs9YmF_hpklFl5dJMAo,4529
|
|
159
|
+
foxes/models/point_models/tke2ti.py,sha256=0mrhpGy0xP_zCqp26_ts81WAHdCqyz_fC6A9BgXIrrI,1407
|
|
160
|
+
foxes/models/point_models/ustar2ti.py,sha256=kghpLGyfOTdbjVWY9DMhXJ5XbrE-Qvq2BNJJWF8Nkxk,1995
|
|
161
|
+
foxes/models/point_models/wake_deltas.py,sha256=nwpallRan2tfSPU9acESHiSg30_gpShsDd-nU65FAIA,2035
|
|
162
|
+
foxes/models/rotor_models/__init__.py,sha256=IluUNC--Q1psqlfTdFg9Z0E_iVJbiBeEn3Arnno7Za8,156
|
|
163
|
+
foxes/models/rotor_models/centre.py,sha256=aL6oP3aC3hgNm0Yc6foReapeTlbJnmnG2z_aLpmdgrA,5774
|
|
164
|
+
foxes/models/rotor_models/grid.py,sha256=yNdl7cJmSWY5wfWw58t0OqVm4gZdaCiTu87rs5G9fKc,4484
|
|
165
|
+
foxes/models/rotor_models/levels.py,sha256=qmjjX7It1nwQ8lej8UIZ5FhQvMsODaf7oi8dG-4T6JM,4007
|
|
166
|
+
foxes/models/turbine_models/__init__.py,sha256=tWAWkm7tGk8QGgRdoppr742Q-ywtPMBF1jrxGBpDi1s,584
|
|
167
|
+
foxes/models/turbine_models/calculator.py,sha256=R5EwXvRCWg8zwrRGDmmX-SnCi6XraBmeQzgbHKkcRv8,2776
|
|
168
|
+
foxes/models/turbine_models/kTI_model.py,sha256=q_B4zR5j-z8Fe0Ux9cbczB-kgLn5rZDZelZV4PMXLtU,3577
|
|
169
|
+
foxes/models/turbine_models/lookup_table.py,sha256=jT_LASopYXn2Tf8jxPd8nLoQyeudFaYwrqInYQiNDyg,7352
|
|
170
|
+
foxes/models/turbine_models/power_mask.py,sha256=gZzcRTiidLxYpY3KKV6KnKKwgOEQtpM9yCfRVRMP8Ds,5953
|
|
171
|
+
foxes/models/turbine_models/rotor_centre_calc.py,sha256=I-0zH6RSkN9iLH3WQGpOLMouh3IxJrPh4HXwXA-M8Fs,3542
|
|
172
|
+
foxes/models/turbine_models/sector_management.py,sha256=D4Ir3YzOo3K7MSwaGwHNf9LrTQ_AMPTvtA8IB6gvcxw,7190
|
|
173
|
+
foxes/models/turbine_models/set_farm_vars.py,sha256=4LZmb6H-gja3Jz_3A9yaVssqNrtbLhni0VxIzgV2oMU,8613
|
|
174
|
+
foxes/models/turbine_models/table_factors.py,sha256=8_A_lWTh1ebyDy2DHveuX_Mr9zbOR75MFdnUQRsVQl4,4760
|
|
175
|
+
foxes/models/turbine_models/thrust2ct.py,sha256=mr26P7PoPD7QIgKCxylL1aMsr3g-ulNmP08T5g52MGw,2289
|
|
176
|
+
foxes/models/turbine_models/yaw2yawm.py,sha256=iqrnaROFcn8_k2iHPeltq5yVFP-zV6w6gaCaPxRurhc,1572
|
|
177
|
+
foxes/models/turbine_models/yawm2yaw.py,sha256=I9sBNfu0p0ASrq5n-yWR9oA3yMJlu_6_x_NF8Sh50Ts,1563
|
|
178
|
+
foxes/models/turbine_types/CpCt_file.py,sha256=IvwuEfZFBipQqXAhKExL6ys29WcEtvHVUz_h91l9tSw,2150
|
|
179
|
+
foxes/models/turbine_types/CpCt_from_two.py,sha256=yXlMydWvoBCddnVNGXgYJ6wJFnut9FwGr3W-IjsQEWE,2843
|
|
180
|
+
foxes/models/turbine_types/PCt_file.py,sha256=4lj4i8Wb-iIMzlBSP6jBe3lE7YLbVYidFSEejgWkyiQ,10813
|
|
181
|
+
foxes/models/turbine_types/PCt_from_two.py,sha256=O3N8LkKnioSxr1-6Vyun3aEVhZ5oZ2iSh8XWPGlSX6Q,12664
|
|
182
|
+
foxes/models/turbine_types/TBL_file.py,sha256=oaEGkG6xn9diPJKhZu8rGhw5oHyhUc2j9-Sw07slUAQ,1718
|
|
183
|
+
foxes/models/turbine_types/__init__.py,sha256=W8QfqvRO6I_PJjFa_lcDX9cW7ph7-kKbd6P64PGSjAU,495
|
|
184
|
+
foxes/models/turbine_types/lookup.py,sha256=3qUCaNkl1MytEl3uaORhEJeTFdG8pCFhHmvUeOCGCFQ,9251
|
|
185
|
+
foxes/models/turbine_types/null_type.py,sha256=svHqmx8TJ0Nvo_s22gtaMejxAxPwGeMD6DbDFR5kgKs,2415
|
|
186
|
+
foxes/models/turbine_types/wsrho2PCt_from_two.py,sha256=q1GzThs4fLFogpOkEB1eDIi45mJ57uzQK2KmGLyctXI,12007
|
|
187
|
+
foxes/models/turbine_types/wsti2PCt_from_two.py,sha256=vgiO1F_V7OHfpLbZKsCr0tC-gkj0HpffI9cKu6uswKI,13151
|
|
188
|
+
foxes/models/vertical_profiles/__init__.py,sha256=2r_czfdPKncQSGoQ4W1N2OkTZx6pfZhEe2xGaf2djGw,500
|
|
189
|
+
foxes/models/vertical_profiles/abl_log_neutral_ws.py,sha256=kX-VUkiyOnZmRVnl9xmb9M134XuyZ1rnYKAn2KFw2B4,1849
|
|
190
|
+
foxes/models/vertical_profiles/abl_log_stable_ws.py,sha256=E0uZ753fyhkEecVefztatZUGic2BvaQsd6l_zruTdZU,1937
|
|
191
|
+
foxes/models/vertical_profiles/abl_log_unstable_ws.py,sha256=tXr9-Q1TcrLU8UpP1olbR9GBiIAiqXhUxSkhJ1Iikek,1949
|
|
192
|
+
foxes/models/vertical_profiles/abl_log_ws.py,sha256=hZbsXhyPCRwCme5z3HCkWHvVWPUPboGRnnfZpF3hL78,3396
|
|
193
|
+
foxes/models/vertical_profiles/data_profile.py,sha256=R9KkADNILXftfIPvcwiLHRHs7nGnEXiyfXAO0llzVQo,2906
|
|
194
|
+
foxes/models/vertical_profiles/sheared_ws.py,sha256=kC108pLPa3fHVJXQugU6R1VKz-JdXY1mhX2PQPmG-wI,1225
|
|
195
|
+
foxes/models/vertical_profiles/uniform.py,sha256=bG0vCiBZqUiJQJreRuTUxb0X1WnJW6pGdpPoQd3A3WQ,1187
|
|
196
|
+
foxes/models/wake_deflections/__init__.py,sha256=JXiepSo0Ob1qsl3rYP7XAzy0yCFdXOk75uk-n7zhaw8,197
|
|
197
|
+
foxes/models/wake_deflections/bastankhah2016.py,sha256=Eh4BH5xH7dYBgFu3Cnon9ZdmsMie70BXfzhc8kAm1EM,7057
|
|
198
|
+
foxes/models/wake_deflections/jimenez.py,sha256=q4gAfRlcAeQtR0TolxPtnLJTbftc1p9fvF24WHj0VMA,7796
|
|
199
|
+
foxes/models/wake_deflections/no_deflection.py,sha256=mma8alZ_Xqs3CRgexm69hzj3zbLHV8r567_4CbNXLW8,2341
|
|
200
|
+
foxes/models/wake_frames/__init__.py,sha256=BcZKC_Ec-z50w4R4YeqptZNB1W-3vfQgtGIR4jnpyi8,340
|
|
201
|
+
foxes/models/wake_frames/dynamic_wakes.py,sha256=vQlQOjSPWrvVHFdUC1bhqmZhUMoUdjstHw9VJKAt5Z4,15642
|
|
202
|
+
foxes/models/wake_frames/farm_order.py,sha256=f400ERLg9ecsrBaJSkAuTkC_2BNhWCMhbsrBk802cek,4052
|
|
203
|
+
foxes/models/wake_frames/rotor_wd.py,sha256=Q8PmcPRtN_mas6lmBeq9r_eJi4NSdrALhyXLUacSmPM,3957
|
|
204
|
+
foxes/models/wake_frames/seq_dynamic_wakes.py,sha256=Po6PQdH2BCiF_hKnOJwHNrHhHdyj1_2O5PR3hDz0JvY,11818
|
|
205
|
+
foxes/models/wake_frames/streamlines.py,sha256=lXHUDybKCh6N_CvwFHJt_XzePItoUi0a3p3oHRgkmzg,9263
|
|
206
|
+
foxes/models/wake_frames/timelines.py,sha256=zb_aXvXso4gqRK9IvVu-cC_C3icKAIbb_TwhReAwV9Y,17748
|
|
207
|
+
foxes/models/wake_models/__init__.py,sha256=n9NMR-rDeDm_zVSPVJolNIYvaQbKm0YAwcMxyW-b2Cc,368
|
|
208
|
+
foxes/models/wake_models/axisymmetric.py,sha256=3dS-1Br9ZvDaGa_KVy0sotnuMku4QpL_Nz3T5dyQXm8,2788
|
|
209
|
+
foxes/models/wake_models/dist_sliced.py,sha256=-sQgO9icCe3YKXJw5hIAOfVKRbE5alhWNyYSzDcjZyc,5249
|
|
210
|
+
foxes/models/wake_models/gaussian.py,sha256=5gW5IsyNteF3_tUssxJ2YAY0wqTvyTYKKt7yP8wWBHA,3566
|
|
211
|
+
foxes/models/wake_models/top_hat.py,sha256=APZf6r26jfi2rP_rrmk4qXs1NGlzc1hsFxrj6Gi_ntA,7609
|
|
212
|
+
foxes/models/wake_models/induction/__init__.py,sha256=xw5LiTh2YWRRNF8cyYACQc-735C23NarCMHWiHQ_5-8,311
|
|
213
|
+
foxes/models/wake_models/induction/rankine_half_body.py,sha256=1NaV5eqcsxjlQwCSUDC-w3wO_SGgh4ykEYvNJX8ToBk,6427
|
|
214
|
+
foxes/models/wake_models/induction/rathmann.py,sha256=ZPF16PESm1wWA7SL7sNbj_XPb4rAGGcmfBrby8VoU3o,7964
|
|
215
|
+
foxes/models/wake_models/induction/self_similar.py,sha256=v3bQjX-RAYwJ-WbZfOpAVb-7Wbq8HXgsgqenP6Jel40,8505
|
|
216
|
+
foxes/models/wake_models/induction/self_similar2020.py,sha256=kteNnjRG4SptcYiW3avBgiDjmX3NMefTB2G2rpb-Hjs,1527
|
|
217
|
+
foxes/models/wake_models/induction/vortex_sheet.py,sha256=Iy3QX_2lUA7MiEEYKFeRh7jz9s7KpyyS7qBLhfCEsAo,7197
|
|
218
|
+
foxes/models/wake_models/ti/__init__.py,sha256=0ZKF4sHbtU3QCRzC1Ff0vnVymbdby7s12Qcy3PnBgKU,163
|
|
219
|
+
foxes/models/wake_models/ti/crespo_hernandez.py,sha256=UVxeDbxPu7beKNm5b8jwvgOdqJFGUQxG9Wybwfwy5p8,8990
|
|
220
|
+
foxes/models/wake_models/ti/iec_ti.py,sha256=P9SUNaxf9UdA_rufuJcmpgLXM1Fj1FRhFHU4DNxYFa4,7064
|
|
221
|
+
foxes/models/wake_models/wind/__init__.py,sha256=QOCeb8E7TYuwkX5jhgPUST1kGmv9c59qvclLhtUeLnQ,379
|
|
222
|
+
foxes/models/wake_models/wind/bastankhah14.py,sha256=zMhlZq9YMTMje-zbbx4BKHl9DwZK_e0SoODlNuVumvo,5567
|
|
223
|
+
foxes/models/wake_models/wind/bastankhah16.py,sha256=6yBMInYi0Zg3Ly6x2gU9GbjTho6lmfQ1CkGd4uXIFgg,18742
|
|
224
|
+
foxes/models/wake_models/wind/jensen.py,sha256=rGEtBgTtT1z3_sGVHkAlqSP4sSErD2yQu-lDwqfykIw,4493
|
|
225
|
+
foxes/models/wake_models/wind/turbopark.py,sha256=Vu69CeFnWfGfSlLRp0p4M7GCYezEUFt12ia_elCm7fg,15222
|
|
226
|
+
foxes/models/wake_superpositions/__init__.py,sha256=fMrBOoBGSa45xbc2E1Jdgjfkm2ahKBKgPeBVq8s9uH0,690
|
|
227
|
+
foxes/models/wake_superpositions/ti_linear.py,sha256=Cqteww87M94ZDIrSoAoXSouCcH-Auj0u8NSD6JCv9Lw,3895
|
|
228
|
+
foxes/models/wake_superpositions/ti_max.py,sha256=s2NYnqMIk-Bj6-SAUyhBX0WWEye5yu4hRoe5dGcLEAw,3920
|
|
229
|
+
foxes/models/wake_superpositions/ti_pow.py,sha256=IXVXs4gpbXxy3B7tpexgFU0bh6OQyNnh2oK4P4JaE0k,4144
|
|
230
|
+
foxes/models/wake_superpositions/ti_quadratic.py,sha256=HxWA5zQ2voghD2PWQeaOJcw1Jbadv_OA6rmFN8DlteI,3910
|
|
231
|
+
foxes/models/wake_superpositions/wind_vector.py,sha256=fsZERHMtZrgutgpEtljYDl8bEdJKLn7fFqH84-UDcWI,7796
|
|
232
|
+
foxes/models/wake_superpositions/ws_linear.py,sha256=VQNx5SPSJiwQ1bp55oNDooTeum3OWa45oBKkPTe4MAQ,9123
|
|
233
|
+
foxes/models/wake_superpositions/ws_max.py,sha256=jdbEUc1CKgfA0DIfTaEVd3L-heIvW-U3Jcwm7m3F3vo,9367
|
|
234
|
+
foxes/models/wake_superpositions/ws_pow.py,sha256=yi1eCxRloV9U2daO_4IWM0G_p9Lc8ahXQvUGzr2WoEk,9588
|
|
235
|
+
foxes/models/wake_superpositions/ws_product.py,sha256=uzhF6l1IMLLFSNkj1QO_EVehnjaK6j-VxFKCeiEABRg,4614
|
|
236
|
+
foxes/models/wake_superpositions/ws_quadratic.py,sha256=Cziei39FDDtxNsJFuNULJeKiS66n5s-ERdRiQn4AZr4,9183
|
|
237
|
+
foxes/output/__init__.py,sha256=Q6US-vMm2HP0l58Vmvga2V2U4H91gaiuV_3SpN83ZbA,1212
|
|
238
|
+
foxes/output/animation.py,sha256=zljekg6k2DjqVaBw0OamB4i3eopi6g2j0a12B9hx7VQ,2637
|
|
239
|
+
foxes/output/calc_points.py,sha256=paFBNUCbg0Vw-VKsvoXygQcq-T3y10IvcVmSUoHb5Do,4567
|
|
240
|
+
foxes/output/farm_layout.py,sha256=ZXODRgmJlycMuBkutg_UL5DEoAfBLCfSUHg1n_3zsp0,12046
|
|
241
|
+
foxes/output/farm_results_eval.py,sha256=-_VF8ugQUOYUFYGjZx8AvfHUdc1qFM3xp1tSGOgioko,19561
|
|
242
|
+
foxes/output/grids.py,sha256=tjQjF3Q_OyI7iOUsbED_P625yDSvHGoIKbS4T_ZB8uI,22504
|
|
243
|
+
foxes/output/output.py,sha256=654XWA2WPwqOzlYbKdHMEjQSSCWrjmtTFN6FNsyZ43E,3297
|
|
244
|
+
foxes/output/plt.py,sha256=6_4Zniv6iqVctNCbxFn2gMYE0aC0FqwNaaBJgIROlHI,356
|
|
245
|
+
foxes/output/results_writer.py,sha256=zUlj7szylvudYmwLciD6TcStmv7gBcp4bE1xQQ5JL_s,5789
|
|
246
|
+
foxes/output/rose_plot.py,sha256=M6McgJURA_3wKl-n666R8w8WhA2DE6eMRTHbjMl7JDk,18620
|
|
247
|
+
foxes/output/rotor_point_plots.py,sha256=KW4t_2lCSc90BzvJDT9xBOAe6JXWSc75UDu4tlK3Se0,3276
|
|
248
|
+
foxes/output/slice_data.py,sha256=bnY8D0ITFFN-i1mSkm0e2ukIMqxjev2KaUINbxo62pA,33788
|
|
249
|
+
foxes/output/slices_data.py,sha256=FqulnXnZ5aI2fOns4ffBYSw5j42IEGq-lLCNJxWG5HA,8671
|
|
250
|
+
foxes/output/state_turbine_map.py,sha256=XhrqRyfSz-hE8gwN5vzC_J-RejCr9dix-D6206Oionw,2724
|
|
251
|
+
foxes/output/state_turbine_table.py,sha256=ldG0LcC126YsXQZtJY9OSWxW3ETbHdBehjtU21caTDw,2228
|
|
252
|
+
foxes/output/turbine_type_curves.py,sha256=IzXanKmz6_ThJkMXOqmimUpNNHG_g0cpD-ARpuYqi3w,5676
|
|
253
|
+
foxes/output/flow_plots_2d/__init__.py,sha256=5pFJqvSuZKkm1TkN3d7won0mPLvr9MUg9m0TMlOqbec,91
|
|
254
|
+
foxes/output/flow_plots_2d/flow_plots.py,sha256=gRGAtB4JAGZ_NkT3osHDaLOg4bYGhhY3u05gu9yA9z0,29931
|
|
255
|
+
foxes/output/flow_plots_2d/get_fig.py,sha256=5IL8KWgphC3pqd957LmdtiZm0ePHAwLBW1cMlTQm0Nk,6230
|
|
256
|
+
foxes/output/seq_plugins/__init__.py,sha256=45ij67anjQWEg52J-UQEFbNwtUmyFDiEVMBWsepzbKI,158
|
|
257
|
+
foxes/output/seq_plugins/seq_flow_ani_plugin.py,sha256=1r-3tJnVq7RvOrgD6lWA2btndH--Ah-y1257XW9Ogpk,3626
|
|
258
|
+
foxes/output/seq_plugins/seq_wake_debug_plugin.py,sha256=4cxmKy1m6ShLX-BJYoYmn9efQJKactxhPdv0JSg1ybc,3968
|
|
259
|
+
foxes/utils/__init__.py,sha256=irmN-H02DXleZ2ugClW48JaVnq6FcYQBglwlA-12TfI,1523
|
|
260
|
+
foxes/utils/cubic_roots.py,sha256=rnvfeGCF-snzNqjd-J68pSXTDsvgKqmx0jmj4z8yo68,3324
|
|
261
|
+
foxes/utils/data_book.py,sha256=SfpVyTeeUGFlQ8dP7HxU30juRoQeYiMKHuzC59gRrbc,5358
|
|
262
|
+
foxes/utils/dev_utils.py,sha256=6vryhcTg8lNXhtZOsQ0F8PTVpmUw250VNE-UyR0G70Y,1241
|
|
263
|
+
foxes/utils/dict.py,sha256=jfp2TwlrfNqa9PuvV0rhh_bBrNWeBXUR8TQuwTbmnjw,4020
|
|
264
|
+
foxes/utils/exec_python.py,sha256=XGLgKZzwArGldj0DlLi_JHs-c4pysq0RDq5r8bg5qBw,1771
|
|
265
|
+
foxes/utils/factory.py,sha256=9RW_ENK0ZQW0amtChNpCkaVh4IN14ENf6x23EIAc6d8,19441
|
|
266
|
+
foxes/utils/geopandas_utils.py,sha256=oLH217n0qNfbb8RoCZLp6DjOyjJ21VZbOHi4Tgey7UM,7910
|
|
267
|
+
foxes/utils/load.py,sha256=x7EE_frepjFEb_bUeYYSKFPnBcXQVzSuLmlYyZTsWN0,1619
|
|
268
|
+
foxes/utils/pandas_utils.py,sha256=8kZMEMd83GmXdtj5erF7XTGBwI81bB2o9qR8E27PXbA,4677
|
|
269
|
+
foxes/utils/random_xy.py,sha256=i0AZ04BLL6TxC3Lg1ZfwI_o4zJbHR6hm-BNd0Sydu_c,1376
|
|
270
|
+
foxes/utils/regularize.py,sha256=OnJ88ZCSu289aLHgrOb96j1A9JVvg_7OjZ3lWZAnNHo,512
|
|
271
|
+
foxes/utils/subclasses.py,sha256=wCfhuialpBOQOPMwNbaplkVmf60vR9AIkY_o3tdkgXI,1737
|
|
272
|
+
foxes/utils/tab_files.py,sha256=FQ82mSPjyelVqZ19Kpq19DB4b6dv0UletCLtDas5dWw,1810
|
|
273
|
+
foxes/utils/two_circles.py,sha256=xkj-SA_x-VXY7KtmSU4lcV4gFdplyhU3sBAC9vTdkF4,2810
|
|
274
|
+
foxes/utils/weibull.py,sha256=2fUWt-vZVMu55fFrXuo0M3B771xtoWeVVmqE7Nr5yXM,656
|
|
275
|
+
foxes/utils/wind_dir.py,sha256=6W0njWDvnIdOOjwqcMr64MW9ApjdtFA75blVUxirPMo,2823
|
|
276
|
+
foxes/utils/wrg_utils.py,sha256=QzaASvn50Pzegk2NoCJhC9WozO95KiQPIwiWGNMeA4w,3604
|
|
277
|
+
foxes/utils/xarray_utils.py,sha256=pqtBkCzSXJMlTM0VTI-Su4SGxOP57sYVlZORBr7Z2qw,1880
|
|
278
|
+
foxes/utils/abl/__init__.py,sha256=yDbyZodXZ_dsmIJ4QH981CZ7xvVQyLneGzjOgYB7ZNE,179
|
|
279
|
+
foxes/utils/abl/neutral.py,sha256=E4DEhvXvw74BPrYr1MjQjeIaoz6ZOTWVlqScKflm-0M,1358
|
|
280
|
+
foxes/utils/abl/sheared.py,sha256=nS6gxa5cR7B7XcZbEk3rwOvbF6m4cinXAIhhn9gGBBs,446
|
|
281
|
+
foxes/utils/abl/stable.py,sha256=frNsTK6nNhTpWTTyZuDbYPbt-9-ytx50GkT3RnuOlio,1830
|
|
282
|
+
foxes/utils/abl/unstable.py,sha256=K0b1VE2RrOET4_zkYV-dbHz5H3drFWMRkOhdgnAeK70,1611
|
|
283
|
+
foxes/utils/geom2d/__init__.py,sha256=Xu_4fStF3SPThrJ4mnauLWigTFxOH7sX94yZDkrI5vQ,417
|
|
284
|
+
foxes/utils/geom2d/area_geometry.py,sha256=CvkhXqfGM7g_gQKtyeCNg0_Xk5Wf46fipK8H7Bo_Ag4,19120
|
|
285
|
+
foxes/utils/geom2d/circle.py,sha256=xgI9zuOS6rx6NnN56FINHYAh07L0FCDesjpZVwoBA_I,4529
|
|
286
|
+
foxes/utils/geom2d/example_intersection.py,sha256=4e6sjpZEk_bNc462YvwKPzwxdV1B90M82bC63ICV4Lw,1626
|
|
287
|
+
foxes/utils/geom2d/example_union.py,sha256=BKfLt1mtQcSto-qExeMQkq8tQ6kfFXVJ93Cc7DhOal8,1750
|
|
288
|
+
foxes/utils/geom2d/half_plane.py,sha256=kzZD6pkZxZ03MK9WAboWzXb5Ws5dWLQY9GIahD4D9mA,6167
|
|
289
|
+
foxes/utils/geom2d/polygon.py,sha256=Xj7triA5Pe4-48sNSAvGxEXlQGptV161LUpKKCf3YOY,5535
|
|
290
|
+
foxes-1.4.dist-info/licenses/LICENSE,sha256=bBCH6mYTPzSepk2s2UUZ3II_ZYXrn1bnSqB85-aZHxU,1071
|
|
291
|
+
tests/0_consistency/iterative/test_iterative.py,sha256=lzagmJ1y241l6Szw4Cu80S8S1ATHIyD7ukr1vVBrusY,2637
|
|
292
|
+
tests/0_consistency/partial_wakes/test_partial_wakes.py,sha256=7rdg2lcUYUzxwCdGhue7A4QYCJQGrOO4E0bytgatYj4,2584
|
|
293
|
+
tests/1_verification/flappy_0_6/PCt_files/test_PCt_files.py,sha256=8tIqifsykvxMCd9eD-mZWxRwT56sKjIxrGf3hf8aCFA,2530
|
|
294
|
+
tests/1_verification/flappy_0_6/PCt_files/flappy/run.py,sha256=PfBmP70Y4ZORB2-tXRVo6qXbloOiupIptzsjmoD4jjw,2143
|
|
295
|
+
tests/1_verification/flappy_0_6/abl_states/test_abl_states.py,sha256=OhsOrPVdY73tXjYwTDj7tnJkusYeRnGHav2ysG_9Jv8,2167
|
|
296
|
+
tests/1_verification/flappy_0_6/abl_states/flappy/run.py,sha256=6S9yeVUFmIuKf_arPnSfZk_f56eqkPZc54Ie9P-_UWQ,2038
|
|
297
|
+
tests/1_verification/flappy_0_6/partial_top_hat/test_partial_top_hat.py,sha256=iU48ALm0us1Y80TFVcHxNXQJvN14yqxVor6DIG4qMnw,2092
|
|
298
|
+
tests/1_verification/flappy_0_6/partial_top_hat/flappy/run.py,sha256=FT04VYQhafV4dSI8QgkapMgfpTPolfKIQSavs5YrLTs,1973
|
|
299
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_centre/test_row_Jensen_linear_centre.py,sha256=usfaa-SuQGiMtqfLd6w434VFCExUPyce7DmbwePxagI,2449
|
|
300
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_centre/flappy/run.py,sha256=xTBI8dssYiqy7WC0IlKonfHQVshUk2ROyCzmecW0hbI,2184
|
|
301
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/test_row_Jensen_linear_tophat.py,sha256=PeaWzKzVC9dLoUGnnu6rstibfXZf65M6kH_qCFKWvB8,2456
|
|
302
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/flappy/run.py,sha256=uhWgRbEbmM5t_ZdcG1U_719eo_2idWfML04wjFQhYL0,2180
|
|
303
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/test_row_Jensen_linear_tophat_IECTI_2005.py,sha256=7CQe3PU7IFjMkBRLp58bbWEsqJP9vKz6kerNzwOUVK8,2983
|
|
304
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/flappy/run.py,sha256=84Vc_F4kZsluiPrKFX7WxWXKwfGZDNzW90npCsStJqQ,2259
|
|
305
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/test_row_Jensen_linear_tophat_IECTI_2019.py,sha256=2CgqGkD_Yc3uRJpqLC6XLU1n5-5tmIfa5nGT5XEvnE0,2983
|
|
306
|
+
tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/flappy/run.py,sha256=cPLIXymqdzu3zxB6-B3g3CU_oDhiYf-TlgWqossDjUw,2259
|
|
307
|
+
tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/test_row_Jensen_quadratic_centre.py,sha256=FOc7SFLIp7Rkhf8krUgTMBTUnfQqxHmxZR3KCVhwIWY,2456
|
|
308
|
+
tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/flappy/run.py,sha256=u-LBBH_MVoqY4Gl__6_EuHUTXp7s-6xVU1OXkywrqrY,2187
|
|
309
|
+
tests/1_verification/flappy_0_6_2/grid_rotors/test_grid_rotors.py,sha256=Yv90h5oiPWEvq06QsWnIca77_cN7gQaDrmnnb54kNuE,3958
|
|
310
|
+
tests/1_verification/flappy_0_6_2/grid_rotors/flappy/run.py,sha256=kwope2eTU_lq5pyk8pBUuefwbfbz0nmEu4YftI1Tk_0,2421
|
|
311
|
+
tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/test_row_Bastankhah_Crespo.py,sha256=lLBG8_RGfrM_WwKtRm_mUPgrHdAJAmFubVg1Fy8OgVU,2988
|
|
312
|
+
tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/flappy/run.py,sha256=nwIyn20ZyYHhCKcPCnm02zjwNKMRzr9t0U8TjKK61QU,2213
|
|
313
|
+
tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/test_row_Bastankhah_linear_centre.py,sha256=QUULW3AJJq8zvUIdIQHkXiNZpaysVYIALh5HOJ6-428,2595
|
|
314
|
+
tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/flappy/run.py,sha256=1paRjCe71AIM8igK4_f0FFH1xiIETvuBwnZAATiwWUU,2102
|
|
315
|
+
tests/3_examples/test_examples.py,sha256=9_PtvlYA6ELsQGHt-xAnsjCYdGj1ekX237ymWvEJaCk,732
|
|
316
|
+
foxes-1.4.dist-info/METADATA,sha256=r9w07687-fq7KDg8IDzMMOsZZo5Tk87meetBbRL42So,8739
|
|
317
|
+
foxes-1.4.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
318
|
+
foxes-1.4.dist-info/entry_points.txt,sha256=KuS44FRH5NnMw201A8Btr76eNRKr2UOoKHjejAsqKwE,123
|
|
319
|
+
foxes-1.4.dist-info/top_level.txt,sha256=G7oHApEz5nc-iP__XsPcvjYe_NyXGmKMUMPHi3C3x6I,26
|
|
320
|
+
foxes-1.4.dist-info/RECORD,,
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import numpy as np
|
|
2
|
-
import pandas as pd
|
|
3
2
|
import time
|
|
4
3
|
import argparse
|
|
5
4
|
from pathlib import Path
|
|
@@ -34,8 +33,8 @@ if __name__ == "__main__":
|
|
|
34
33
|
|
|
35
34
|
# load model book:
|
|
36
35
|
mbook = fl.ModelBook()
|
|
37
|
-
mbook.turbine_models[
|
|
38
|
-
mbook.turbine_models[
|
|
36
|
+
mbook.turbine_models["ws_P"] = fl.models.Ws2P(P_curve_file=tPfile)
|
|
37
|
+
mbook.turbine_models["ws_Ct"] = fl.models.Ws2Ct(ct_curve_file=tCtfile)
|
|
39
38
|
|
|
40
39
|
# create wind farm:
|
|
41
40
|
farm = fl.WindFarm()
|
|
@@ -4,7 +4,6 @@ import inspect
|
|
|
4
4
|
|
|
5
5
|
import foxes
|
|
6
6
|
import foxes.variables as FV
|
|
7
|
-
from foxes.config import config
|
|
8
7
|
|
|
9
8
|
thisdir = Path(inspect.getfile(inspect.currentframe())).parent
|
|
10
9
|
|
|
@@ -36,7 +35,6 @@ def test():
|
|
|
36
35
|
)
|
|
37
36
|
|
|
38
37
|
with foxes.Engine.new("threads", chunk_size_states=1000):
|
|
39
|
-
|
|
40
38
|
algo = foxes.algorithms.Downwind(
|
|
41
39
|
farm,
|
|
42
40
|
states,
|