foxes 1.2.5__py3-none-any.whl → 1.3__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.

Files changed (52) hide show
  1. examples/quickstart/run.py +17 -0
  2. foxes/__init__.py +1 -1
  3. foxes/algorithms/downwind/downwind.py +9 -15
  4. foxes/algorithms/downwind/models/farm_wakes_calc.py +13 -7
  5. foxes/algorithms/downwind/models/init_farm_data.py +4 -4
  6. foxes/algorithms/downwind/models/reorder_farm_output.py +5 -1
  7. foxes/algorithms/downwind/models/set_amb_point_results.py +1 -1
  8. foxes/algorithms/iterative/models/farm_wakes_calc.py +6 -3
  9. foxes/algorithms/sequential/models/seq_state.py +0 -18
  10. foxes/algorithms/sequential/sequential.py +5 -18
  11. foxes/constants.py +6 -0
  12. foxes/core/data.py +44 -18
  13. foxes/core/engine.py +19 -1
  14. foxes/core/farm_data_model.py +1 -0
  15. foxes/core/rotor_model.py +42 -38
  16. foxes/core/states.py +2 -47
  17. foxes/input/states/__init__.py +1 -0
  18. foxes/input/states/field_data_nc.py +39 -61
  19. foxes/input/states/multi_height.py +31 -54
  20. foxes/input/states/one_point_flow.py +22 -21
  21. foxes/input/states/scan.py +6 -19
  22. foxes/input/states/single.py +5 -17
  23. foxes/input/states/states_table.py +15 -37
  24. foxes/input/states/wrg_states.py +148 -36
  25. foxes/models/partial_wakes/rotor_points.py +8 -2
  26. foxes/models/partial_wakes/segregated.py +9 -4
  27. foxes/models/rotor_models/centre.py +6 -4
  28. foxes/models/wake_frames/seq_dynamic_wakes.py +5 -2
  29. foxes/models/wake_frames/timelines.py +10 -0
  30. foxes/output/farm_layout.py +12 -4
  31. foxes/output/farm_results_eval.py +36 -12
  32. foxes/output/rose_plot.py +20 -2
  33. foxes/output/slice_data.py +16 -19
  34. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/METADATA +10 -8
  35. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/RECORD +52 -51
  36. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/WHEEL +1 -1
  37. tests/0_consistency/iterative/test_iterative.py +2 -3
  38. tests/0_consistency/partial_wakes/test_partial_wakes.py +2 -2
  39. tests/1_verification/flappy_0_6/PCt_files/test_PCt_files.py +48 -56
  40. tests/1_verification/flappy_0_6/abl_states/test_abl_states.py +33 -36
  41. tests/1_verification/flappy_0_6/row_Jensen_linear_centre/test_row_Jensen_linear_centre.py +3 -2
  42. tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/test_row_Jensen_linear_tophat.py +3 -3
  43. tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/test_row_Jensen_linear_tophat_IECTI_2005.py +3 -3
  44. tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/test_row_Jensen_linear_tophat_IECTI_2019.py +3 -3
  45. tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/test_row_Jensen_quadratic_centre.py +3 -3
  46. tests/1_verification/flappy_0_6_2/grid_rotors/test_grid_rotors.py +3 -3
  47. tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/test_row_Bastankhah_Crespo.py +3 -2
  48. tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/test_row_Bastankhah_linear_centre.py +3 -3
  49. tests/3_examples/test_examples.py +3 -2
  50. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/LICENSE +0 -0
  51. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/entry_points.txt +0 -0
  52. {foxes-1.2.5.dist-info → foxes-1.3.dist-info}/top_level.txt +0 -0
@@ -7,6 +7,7 @@ examples/field_data_nc/run.py,sha256=EYx9B5axIPW2yfVet4QpMGyPMbMbPoTRvGrl249L_RM
7
7
  examples/induction/run.py,sha256=eTxEdKJ_8MtYuxI0QNECqJ31x-zb9Zen5bUpwPtujPE,6334
8
8
  examples/multi_height/run.py,sha256=KsY5tN8z9QHitQQdxnTjHzPSPlYPn5pkcMskjd94D74,3288
9
9
  examples/power_mask/run.py,sha256=YK8RU0TLd7TgBJkPZQVrn8log-UQNZ7L3B3-yE8qu64,7584
10
+ examples/quickstart/run.py,sha256=COWglulEie_2mqW-A1UTc1bXLMKx_Y1BlmyP4BDQf8o,428
10
11
  examples/random_timeseries/run.py,sha256=bo-fLF647mc97we30ci9klw23kXISk4KtCBxRc1lIqA,6106
11
12
  examples/scan_row/run.py,sha256=japzROlgEa71u2KYy03bQ8dBso-ejURUV3vZsg5m3AI,5844
12
13
  examples/sector_management/run.py,sha256=WQvrHqtC7_u6JvZfbRsVSb3SPYDjCp-ZJpC-nZsQf5M,4451
@@ -20,47 +21,47 @@ examples/timeseries/run.py,sha256=aCuEjWpwGXTeS1s9frOtAnpAHRnQoe4tu4Q0BHoPDys,53
20
21
  examples/timeseries_slurm/run.py,sha256=j-tJlCVDMp1FiPnfNTPcJhwV_MCmsvwi_umNTaDEG_Q,5581
21
22
  examples/wind_rose/run.py,sha256=shKCX4-HOZwVBDrgnOaI0ycMpWLOBvhSw7SU_x7CzWo,4247
22
23
  examples/yawed_wake/run.py,sha256=V_02HSuHQufzwhnVNGsJoQQpTgMlYtuZZVIDEaLU4U4,6166
23
- foxes/__init__.py,sha256=V0D5TDEqDNgZCcqm8kHaQdOksc2eUG-mql9YTL6HREs,1124
24
- foxes/constants.py,sha256=HN5UrxQBt2vO1AmiiWThdK9rY_AtFsOQuwYUZb7JgXY,3387
24
+ foxes/__init__.py,sha256=FnSO-p4sc7lI780lWm8HttIHNZ6jNMZFdf32aCkU260,1120
25
+ foxes/constants.py,sha256=d6jGdKGtBb1KC2GncBJx5DDIwk51TiLqI9vymrJRpE8,3494
25
26
  foxes/variables.py,sha256=1xbGQx6ceUjAYeK0wZiS_D_MTFQ6mEJoY9VnlE2iVc4,5113
26
27
  foxes/algorithms/__init__.py,sha256=gCr5DK2wXhAAJf8eylkevN8yiwPdEC-pqY_LgjKzMv8,249
27
28
  foxes/algorithms/downwind/__init__.py,sha256=lyygq5GMc6NAPmH0b0mhGeccWyuC8JTOEMZl-UlmE5M,53
28
- foxes/algorithms/downwind/downwind.py,sha256=Du0NSVpwZvPgXacLBtDkBmD9bBwDYZfnnlrfe5e_vOM,25297
29
+ foxes/algorithms/downwind/downwind.py,sha256=xgf43janPbVsEcEcG4P1Xww0M-L11rHGZDSvqy3JPEE,25233
29
30
  foxes/algorithms/downwind/models/__init__.py,sha256=0ov8rjIQ02w3iB6yYCxaswPvHDlPM_8_di6xPh1TTkQ,300
30
- foxes/algorithms/downwind/models/farm_wakes_calc.py,sha256=IiO8_hhyT7aqPaMym2d__ZvwnjedoDgGj-x00muqOYg,5735
31
- foxes/algorithms/downwind/models/init_farm_data.py,sha256=KnDXy8NyStLXhQxeZsHMpds-lxisQu9BOBZeYtbJXLk,4108
31
+ foxes/algorithms/downwind/models/farm_wakes_calc.py,sha256=BJEtZdW1PC0uP2cnqaVvg8TaubsSUXVtQnB5LR5qSEY,5951
32
+ foxes/algorithms/downwind/models/init_farm_data.py,sha256=0lXqFAsOW_p4m48VUj-ex-fekksvm3mSxHfG13GZnxM,4147
32
33
  foxes/algorithms/downwind/models/point_wakes_calc.py,sha256=xvFgfXcCpw2WFMfrna480ER1rI3WZOEVBssob5n9Gws,4486
33
- foxes/algorithms/downwind/models/reorder_farm_output.py,sha256=6C2i7C1OWV0pe6nr9BjJiWVETcW2U_lnt_Iv150oV5I,2038
34
+ foxes/algorithms/downwind/models/reorder_farm_output.py,sha256=SEZXJNJcYjXd53PGg1mgEQzjevSlLkcUy8Ytz4rvS1Q,2128
34
35
  foxes/algorithms/downwind/models/set_amb_farm_results.py,sha256=_xYNjFZiofHLGIFNw671izXUn37psX-NhSIO63IRwvA,1732
35
- foxes/algorithms/downwind/models/set_amb_point_results.py,sha256=riXnM_XLixuLmtFBbH8-WNTW-Ih5oJoTDNuzY0cQbZo,2293
36
+ foxes/algorithms/downwind/models/set_amb_point_results.py,sha256=2ZaKEHZMrm2D0EfDHLIo-quohoseUP_qhuKbshne80Q,2307
36
37
  foxes/algorithms/iterative/__init__.py,sha256=Je445cHtS2ERc-dywjhxWttKzdEyHM8JLxPcW5JFtl8,137
37
38
  foxes/algorithms/iterative/iterative.py,sha256=AVDrc4-Jz68ainraLxr7zMYiCMUx4ODf8z50akDhyxE,9930
38
39
  foxes/algorithms/iterative/models/__init__.py,sha256=3lMBUOzq5bKNQBGoV8byVQ7_Keyk1GfwFZDUwaafGsg,152
39
40
  foxes/algorithms/iterative/models/convergence.py,sha256=5fCeTMisYEhgvPRbLKMK0XYsSSr2xWqqzB-pUBrIjYk,6466
40
- foxes/algorithms/iterative/models/farm_wakes_calc.py,sha256=8xSDI9u5deiud80VKyFmXCOT_0THIKSIRPqnGK2wfr0,4946
41
+ foxes/algorithms/iterative/models/farm_wakes_calc.py,sha256=zDv0LIRBr-Ia4dxvfw_-u2TVr2-OVXrV3HOM35JF0Zk,5082
41
42
  foxes/algorithms/iterative/models/urelax.py,sha256=412fHSpi_4MATE1qRzqcZDFff6iJpV1h3QIBL_7giQE,2076
42
43
  foxes/algorithms/sequential/__init__.py,sha256=2o05IH9XePnqxNEAn2Fr1qiCM6OooqmH2VtmdJXtK0c,94
43
- foxes/algorithms/sequential/sequential.py,sha256=9S6eIIWKCD69Q5Ev8IA5h32L9RCQY_jIspd6EDE9xHU,12388
44
+ foxes/algorithms/sequential/sequential.py,sha256=1Cj0ntF39NXyDaaIVKEv3GCHi_Y3tSPT9Zm2Qk9-jdM,12040
44
45
  foxes/algorithms/sequential/models/__init__.py,sha256=OneaRLxMPzVWLKL9cR3JIYHojfzVX_CQaPv-LP6mCZI,69
45
46
  foxes/algorithms/sequential/models/plugin.py,sha256=HhCeHM_YoJRMXuZKa8rXUJZDhWf5rNl28_UfDLSGWvA,1330
46
- foxes/algorithms/sequential/models/seq_state.py,sha256=J1PorBVV5xZFWobHvCrGDCD-q7Egz_Op1p4PDiacBy0,3654
47
+ foxes/algorithms/sequential/models/seq_state.py,sha256=al7XhLKLQSGhfUZw--Bz4RNNbA1jeObKZd1v58hEt-Q,3206
47
48
  foxes/config/__init__.py,sha256=k3irS7dNsXTzQpz9e6GOqoqGZkyMAW_BGxnV8JGcuRs,78
48
49
  foxes/config/config.py,sha256=e3HhitD2Xleqm3utoXLGAu8Vg16app35Cpx4nBhnZm8,4318
49
50
  foxes/core/__init__.py,sha256=3dOuKrFeSM6fCMxfLxTbzUsBPVTZiRp0sFhnibniBko,1021
50
51
  foxes/core/algorithm.py,sha256=ggdvtQT6kbmrgPUma-jCHqW7Q3ISvXHud1xl-t-kcls,27446
51
52
  foxes/core/axial_induction_model.py,sha256=sGbTHFMjEYKiVjElLP_SCRulKatcK0wsEXf30zty2Vc,1023
52
- foxes/core/data.py,sha256=21hSiLzrrAKKVXjFbIF7oska0bR5qPB2XmxYUraNeIg,21931
53
+ foxes/core/data.py,sha256=5G_r0H2lRt5v_hhy1_YWp6Pw8cvI3fy2brLbVSSDOLg,23148
53
54
  foxes/core/data_calc_model.py,sha256=Hhl2ZapafsIvq5z_YWlGqB3kkF64txohU_MHlfHAvpk,1334
54
- foxes/core/engine.py,sha256=I2CiIH9f__WWPPGeXgL8w8LAR2XUESEpQ0YQiIQ1zFI,20291
55
+ foxes/core/engine.py,sha256=lyuD8KMXN_UHkn1nfVV4d3Mkwyzbec8EcfjB9lerhNc,20886
55
56
  foxes/core/farm_controller.py,sha256=RZXvL24_Z-vVwikgWcTYYXREJTm72fhzGoNhFDEF56c,13832
56
- foxes/core/farm_data_model.py,sha256=uEhPjtyNZqZsVT_ySRg0MjpTWLZ6gg_Em-wmYmFDz8s,7383
57
+ foxes/core/farm_data_model.py,sha256=_1DXJzyfLwha80aL-BT57wHLimOiiw1rPTxH8qxVl54,7384
57
58
  foxes/core/farm_model.py,sha256=ogFahCjC2dIBcjnCMmy0cTGulKTDA2ufFUzODf0-KnI,265
58
59
  foxes/core/ground_model.py,sha256=oRlgrTBAcYaIv8gf5BRccDBlz8GhmAMIlFiVnHt6sXQ,7311
59
60
  foxes/core/model.py,sha256=UgoT99BaBBNXKlhUDY87uGJ5WrJ5cpFDIhHcDDzWMvw,19660
60
61
  foxes/core/partial_wakes_model.py,sha256=L_Wz0U1ps0suw6la-O9xwngYO9HxfGI9wjMGlpARVjA,5413
61
62
  foxes/core/point_data_model.py,sha256=90AEIVHkmGP80RhptyPpQDA7wvOnZfF-0VD2dv3L718,7569
62
- foxes/core/rotor_model.py,sha256=vGKFv_FSjSlxBJQUpbsHGK_q6h3Zd6ow8TzxjSFS_mQ,12772
63
- foxes/core/states.py,sha256=BT1LRIOPNPAslLGzAr3ZeF-CKmt3Ij_F-vn750Wkxm4,8309
63
+ foxes/core/rotor_model.py,sha256=3PhUocdBZ1CPMxQggW9Jl1AopwknnHICKchNTNwOESY,13149
64
+ foxes/core/states.py,sha256=x1yit4gq8oeTZzh3VtOq69UViSamGP1Qxcy6Cwi1S1U,6999
64
65
  foxes/core/turbine.py,sha256=P5qPKmV1qohZdAKW4lPiUerQkRDTxUOhsvBPQqy8mBo,3054
65
66
  foxes/core/turbine_model.py,sha256=I-t-2lNVDaifg_cHEurqan9Ko9kcI1k-VEkKS_nyX-o,1585
66
67
  foxes/core/turbine_type.py,sha256=DbzDmSfSow7RPCyRlQ_WrzWJ7fPnIN0BBGVzWhhG8FU,3174
@@ -109,14 +110,14 @@ foxes/input/farm_layout/from_random.py,sha256=6ZYKbdV6x11MbQRAHs5nVYBAG-1K295xsM
109
110
  foxes/input/farm_layout/grid.py,sha256=CsVIYfCPyznEhDLO_tsTxBPJ591x8l-axDg4M5yArg0,1492
110
111
  foxes/input/farm_layout/ring.py,sha256=ghfLkVVQciWDJJNqGs4jZVnM0XCII9ae3hAh9Wb4938,1455
111
112
  foxes/input/farm_layout/row.py,sha256=Bx9woFNkXbFXJg51GX2p2PbVgdxV3Ckxr-3TkB04PS4,1198
112
- foxes/input/states/__init__.py,sha256=Xkjr0Tn3jKEBcIk3GA1dRVzTDIX9Xco-Y23X-LUV-GA,526
113
- foxes/input/states/field_data_nc.py,sha256=LSSW6Q4Ica3gl9CuBuRm7wqKtYZpvOLGzTVqv8ylFm4,29429
114
- foxes/input/states/multi_height.py,sha256=Bf14Kz_ke9LP314617qgYtGXSbBpEZKnFnfjNyh9sjc,23826
115
- foxes/input/states/one_point_flow.py,sha256=TuMYGSHz3nOwN3gdWxbQNRHzKmtVtV4AbnHTJ6dVceA,17787
116
- foxes/input/states/scan.py,sha256=43CnJl-iRUbRrJCtu-u6Na5DDY19_184myD6ScMfcFA,6101
117
- foxes/input/states/single.py,sha256=jwcZ2quljXS9cDyYbf3wgvbYUe6umqNfyfvRdylYbC0,6137
118
- foxes/input/states/states_table.py,sha256=pUpdhRGYmBvZD9kFQxXvUMP6oWPfiKsGhxX7m209SkE,20481
119
- foxes/input/states/wrg_states.py,sha256=29HBfLaK40GvNNZ2F9hX2iVh3P7AXdRW05By2WO-xjg,5915
113
+ foxes/input/states/__init__.py,sha256=ux2oAz687pcAjrGhOWQ-NK-nxrpNT_VIu9p5jSxqcxE,560
114
+ foxes/input/states/field_data_nc.py,sha256=NW_EIqfid2Xo_-6CxPHw-eUXj_5yH0OPH3QSiMR3JdU,28825
115
+ foxes/input/states/multi_height.py,sha256=pt3JYTx-NMUaNtRbW8W80L6CCguTflr5QPgSuRqfwVM,23305
116
+ foxes/input/states/one_point_flow.py,sha256=rrpICS2lamOhgm-020g8GCSu3TcHnOg6jAKOaiDGxVs,18169
117
+ foxes/input/states/scan.py,sha256=p-hmC3nod2oomV34AwkRK95dEU1Objs-Snqrn-UnZ7g,5863
118
+ foxes/input/states/single.py,sha256=jXF_0uCLP3tsq_S6K7-5bFd7HTHAldHFhRwbBDOesEk,5911
119
+ foxes/input/states/states_table.py,sha256=vC26YS6Wdqprw7rZ84ze5s-AcsqQ5RBIQlR0PuO_kOM,19971
120
+ foxes/input/states/wrg_states.py,sha256=iSk04t25zXg5R96YkBK-lDINKO2FaH08-d4S6RKMFTE,9421
120
121
  foxes/input/states/create/__init__.py,sha256=Ocqzmr9SOefeAvGX5DgawsPXfNdGzWOZ2ssvtqEmtAo,134
121
122
  foxes/input/states/create/random_abl_states.py,sha256=LFCA19TCInXmB2FbKDaOkqCDsN0eOUIp34yzR2NQjtQ,3425
122
123
  foxes/input/states/create/random_timeseries.py,sha256=gJpaQ4nEXxOjI4hp3xjNcVbCsmZUm-brXUxoqDb63WE,1266
@@ -146,8 +147,8 @@ foxes/models/partial_wakes/__init__.py,sha256=qlV4zgjTSBfpz4dVh7DSoxCZXkaK_-dW43
146
147
  foxes/models/partial_wakes/axiwake.py,sha256=xDbMyy0HrVb2DHUQ2qdlwGwqlLkEJAUy3mLyHatyfko,6647
147
148
  foxes/models/partial_wakes/centre.py,sha256=YewN1hGjNxNUnvOkNwZD6bIdrHUrX3vd1T6s-bJ5INk,978
148
149
  foxes/models/partial_wakes/grid.py,sha256=SOymgn0MGvUFSAWd9YKDCzXYtizsuiNV-yP0oqrKS1E,600
149
- foxes/models/partial_wakes/rotor_points.py,sha256=qXBP-0TAjSONF80W-9Sh9RGmEOmakc0FaqZTaeucVI0,2785
150
- foxes/models/partial_wakes/segregated.py,sha256=FTBihivU4ejbK-J90CcnOghv9-z8zQbzNDg_5NgalJA,4462
150
+ foxes/models/partial_wakes/rotor_points.py,sha256=_Cjvbb0EUSt5R6Dij6hMnXEQxwvhO_7OGE-iKa60c-0,2927
151
+ foxes/models/partial_wakes/segregated.py,sha256=L-afJYBlniHNlgtqOcYP2Xqh8Fs8EhJm8idJqhxP2sQ,4617
151
152
  foxes/models/partial_wakes/top_hat.py,sha256=TPk9GoyoYDbxxZbcFufNDyNu-Yhnzn4GUwS7X3WelbQ,5557
152
153
  foxes/models/point_models/__init__.py,sha256=36A6VfXTkeNZYsv_JiPtF7Q8ZRcYbdA6Ed7F64DTF08,162
153
154
  foxes/models/point_models/set_uniform_data.py,sha256=dK6f-Nk_qvWqUPt3jnMkkIftGs9YmF_hpklFl5dJMAo,4529
@@ -155,7 +156,7 @@ foxes/models/point_models/tke2ti.py,sha256=0mrhpGy0xP_zCqp26_ts81WAHdCqyz_fC6A9B
155
156
  foxes/models/point_models/ustar2ti.py,sha256=kghpLGyfOTdbjVWY9DMhXJ5XbrE-Qvq2BNJJWF8Nkxk,1995
156
157
  foxes/models/point_models/wake_deltas.py,sha256=nwpallRan2tfSPU9acESHiSg30_gpShsDd-nU65FAIA,2035
157
158
  foxes/models/rotor_models/__init__.py,sha256=peLe_ykp4e_ls_iGDa-1z7-jCTtjurE3ig2R9tJy7Bg,114
158
- foxes/models/rotor_models/centre.py,sha256=oHaHM8RDV_lZc-BXNCYab_5_YeXbflkPEL6ET8CzKvM,5646
159
+ foxes/models/rotor_models/centre.py,sha256=aL6oP3aC3hgNm0Yc6foReapeTlbJnmnG2z_aLpmdgrA,5774
159
160
  foxes/models/rotor_models/grid.py,sha256=yNdl7cJmSWY5wfWw58t0OqVm4gZdaCiTu87rs5G9fKc,4484
160
161
  foxes/models/rotor_models/levels.py,sha256=qmjjX7It1nwQ8lej8UIZ5FhQvMsODaf7oi8dG-4T6JM,4007
161
162
  foxes/models/turbine_models/__init__.py,sha256=eCS66-AS3ivW9qm-yPPfO_0_eHQox5Sp7bQantVPwg0,428
@@ -192,9 +193,9 @@ foxes/models/wake_frames/__init__.py,sha256=DAbiSlvlJWlnb58KQ8e6RpMBN9_ukVxPLIZo
192
193
  foxes/models/wake_frames/dynamic_wakes.py,sha256=FqDDADL0Ohuz9Z2hVt-u9nEC2uM9J_SqXwiq7PuhEJs,15408
193
194
  foxes/models/wake_frames/farm_order.py,sha256=f400ERLg9ecsrBaJSkAuTkC_2BNhWCMhbsrBk802cek,4052
194
195
  foxes/models/wake_frames/rotor_wd.py,sha256=eF9vGHpXU0P21SMnWipW_9CkATR5qxvnOUn6dDqBA9g,3854
195
- foxes/models/wake_frames/seq_dynamic_wakes.py,sha256=xMnGh4oAn_AIxuQ2i4wlnNxmajO9Hp2lBKLzzLFrjyE,10622
196
+ foxes/models/wake_frames/seq_dynamic_wakes.py,sha256=5_CwHf564zbh40wzkY8Ilwf5qdwQGADFPrfSHxLdqqg,10729
196
197
  foxes/models/wake_frames/streamlines.py,sha256=GsUDE896GQDmZz0FiwUeASTiU-a2NgTQD5shq9UukcE,9132
197
- foxes/models/wake_frames/timelines.py,sha256=k_ASK9RI-Nyt8N21BzfjsZC6O-mXDJyjjHfW02KF8ts,17247
198
+ foxes/models/wake_frames/timelines.py,sha256=Xtbo1H3SU6jwdnVesRSgd5gXXZ671GauAqVgQeC-7KM,17613
198
199
  foxes/models/wake_frames/yawed_wakes.py,sha256=QBhXLfoVoJveFdUr1BEqgxUohaqlH2Cn-6q4idtXmAw,9175
199
200
  foxes/models/wake_models/__init__.py,sha256=hwoJF5RzDlr2g5zKgZ532H93F6Hcoo0Gfkc3XLiAJ1Q,253
200
201
  foxes/models/wake_models/axisymmetric.py,sha256=3dS-1Br9ZvDaGa_KVy0sotnuMku4QpL_Nz3T5dyQXm8,2788
@@ -228,16 +229,16 @@ foxes/models/wake_superpositions/ws_quadratic.py,sha256=3pWDd-HSVD4_OKQ5YQaUX1RY
228
229
  foxes/output/__init__.py,sha256=HZFka-9Y5hTOgeuCBxvv0vSvB-zGvkzEKxCqsbdYCgk,820
229
230
  foxes/output/animation.py,sha256=zljekg6k2DjqVaBw0OamB4i3eopi6g2j0a12B9hx7VQ,2637
230
231
  foxes/output/calc_points.py,sha256=paFBNUCbg0Vw-VKsvoXygQcq-T3y10IvcVmSUoHb5Do,4567
231
- foxes/output/farm_layout.py,sha256=tTE1Ioozh4wU0eMqIpdUd6VLtM_xmXRM_l4iX6-jiIU,11595
232
- foxes/output/farm_results_eval.py,sha256=STGLAFqM06bO7SXcEo0APcmBWhLVo6VzENgqt4Q_JY4,18692
232
+ foxes/output/farm_layout.py,sha256=0FUiIuSb0eWPlJ-QUgLIfYHBMP5sPLDuMLYAOx-LkFc,12048
233
+ foxes/output/farm_results_eval.py,sha256=x61E5s-dGc6kCLkyEkSQB4pWSmVeIUGCRCqgYOCxZMA,19571
233
234
  foxes/output/grids.py,sha256=tjQjF3Q_OyI7iOUsbED_P625yDSvHGoIKbS4T_ZB8uI,22504
234
235
  foxes/output/output.py,sha256=654XWA2WPwqOzlYbKdHMEjQSSCWrjmtTFN6FNsyZ43E,3297
235
236
  foxes/output/plt.py,sha256=6_4Zniv6iqVctNCbxFn2gMYE0aC0FqwNaaBJgIROlHI,356
236
237
  foxes/output/results_writer.py,sha256=zUlj7szylvudYmwLciD6TcStmv7gBcp4bE1xQQ5JL_s,5789
237
- foxes/output/rose_plot.py,sha256=WIkK3vY6yyu7rG8Myr8fiI6gPnXGLFh0AGnqsF99LHs,17712
238
+ foxes/output/rose_plot.py,sha256=fckU__3TGl78unGrNWVoQO52mWoiTKlQr1CKOrXssJE,18648
238
239
  foxes/output/rotor_point_plots.py,sha256=KW4t_2lCSc90BzvJDT9xBOAe6JXWSc75UDu4tlK3Se0,3276
239
240
  foxes/output/round.py,sha256=s8YcXciCtaMY14SnG3ebYccyjQ2IEln256SwN9oJnPI,351
240
- foxes/output/slice_data.py,sha256=oP55t2TYHaBie5Rn-7iRRpa29nfnjaZGmYdn_RCmFxg,33793
241
+ foxes/output/slice_data.py,sha256=bnY8D0ITFFN-i1mSkm0e2ukIMqxjev2KaUINbxo62pA,33788
241
242
  foxes/output/slices_data.py,sha256=FqulnXnZ5aI2fOns4ffBYSw5j42IEGq-lLCNJxWG5HA,8671
242
243
  foxes/output/state_turbine_map.py,sha256=XhrqRyfSz-hE8gwN5vzC_J-RejCr9dix-D6206Oionw,2724
243
244
  foxes/output/state_turbine_table.py,sha256=ldG0LcC126YsXQZtJY9OSWxW3ETbHdBehjtU21caTDw,2228
@@ -279,34 +280,34 @@ foxes/utils/geom2d/example_intersection.py,sha256=4e6sjpZEk_bNc462YvwKPzwxdV1B90
279
280
  foxes/utils/geom2d/example_union.py,sha256=BKfLt1mtQcSto-qExeMQkq8tQ6kfFXVJ93Cc7DhOal8,1750
280
281
  foxes/utils/geom2d/half_plane.py,sha256=kzZD6pkZxZ03MK9WAboWzXb5Ws5dWLQY9GIahD4D9mA,6167
281
282
  foxes/utils/geom2d/polygon.py,sha256=Xj7triA5Pe4-48sNSAvGxEXlQGptV161LUpKKCf3YOY,5535
282
- tests/0_consistency/iterative/test_iterative.py,sha256=2hEMl9RyDORYMHYRioEpv2Qd8vWUzhkLHlCHuMsRUnk,2632
283
- tests/0_consistency/partial_wakes/test_partial_wakes.py,sha256=_c9B3CjIk7A9B0gdTkH4h6ftkBBIMCIxCtnqRV8swSI,2547
284
- tests/1_verification/flappy_0_6/PCt_files/test_PCt_files.py,sha256=QyY1pKWyScruAk_N6zfumU-hwv0Nsqrow3MDvEoOlGc,2749
283
+ tests/0_consistency/iterative/test_iterative.py,sha256=lzagmJ1y241l6Szw4Cu80S8S1ATHIyD7ukr1vVBrusY,2637
284
+ tests/0_consistency/partial_wakes/test_partial_wakes.py,sha256=7rdg2lcUYUzxwCdGhue7A4QYCJQGrOO4E0bytgatYj4,2584
285
+ tests/1_verification/flappy_0_6/PCt_files/test_PCt_files.py,sha256=Y4KkdXE5Wjtc8GYJrQf3CHCkyHhdgjAPyyjVyfEJtuw,2532
285
286
  tests/1_verification/flappy_0_6/PCt_files/flappy/run.py,sha256=wJLKFOKVxOjmncYRarK5EK12HNjpWEUuu3EKgdq-Cvw,2165
286
- tests/1_verification/flappy_0_6/abl_states/test_abl_states.py,sha256=MQkh6KdA1PfsflAsUCCicEouwOd1j5V6tQHhW5SjX4A,2278
287
+ tests/1_verification/flappy_0_6/abl_states/test_abl_states.py,sha256=OhsOrPVdY73tXjYwTDj7tnJkusYeRnGHav2ysG_9Jv8,2167
287
288
  tests/1_verification/flappy_0_6/abl_states/flappy/run.py,sha256=hnPSO_wqk9vYgwNNMWXb_UaYZOCnlwScVlfZl7rriV4,2058
288
289
  tests/1_verification/flappy_0_6/partial_top_hat/test_partial_top_hat.py,sha256=TWdY4qP47KM9L39SeytPsmUzFDD4YObRESXL5iXtiWg,2125
289
290
  tests/1_verification/flappy_0_6/partial_top_hat/flappy/run.py,sha256=NMtLneJLk6J1DXE59FZ1JAGlh-zBwegtCAq8nB-p13I,1993
290
- tests/1_verification/flappy_0_6/row_Jensen_linear_centre/test_row_Jensen_linear_centre.py,sha256=RWEl9e_Wmr7fmdWwtWAQQVe_OD7VoQaR6z0_PJ_p4SQ,2412
291
+ tests/1_verification/flappy_0_6/row_Jensen_linear_centre/test_row_Jensen_linear_centre.py,sha256=ra5N_eTPPRv_laWm3P7x2LYYzf17nHIZVFQ07S4v7U4,2450
291
292
  tests/1_verification/flappy_0_6/row_Jensen_linear_centre/flappy/run.py,sha256=xTBI8dssYiqy7WC0IlKonfHQVshUk2ROyCzmecW0hbI,2184
292
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/test_row_Jensen_linear_tophat.py,sha256=MAL8Au5g4ZURcx8lVZScJjRc2BBHr0ALz_XgGDxMlIA,2451
293
+ tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/test_row_Jensen_linear_tophat.py,sha256=E5296NjRmkbQKd6yITr6zM9-tWvVEUak2uLIsGKvPvI,2457
293
294
  tests/1_verification/flappy_0_6/row_Jensen_linear_tophat/flappy/run.py,sha256=uhWgRbEbmM5t_ZdcG1U_719eo_2idWfML04wjFQhYL0,2180
294
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/test_row_Jensen_linear_tophat_IECTI_2005.py,sha256=oShokXyZWseHONSfbTzure4gXjUVQjZgICGXmtncApg,2978
295
+ tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/test_row_Jensen_linear_tophat_IECTI_2005.py,sha256=JXwZfPuXw-NuKREv-R0OzEM1oPxQ3gSmlicoT-OyTCw,2984
295
296
  tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2005/flappy/run.py,sha256=84Vc_F4kZsluiPrKFX7WxWXKwfGZDNzW90npCsStJqQ,2259
296
- tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/test_row_Jensen_linear_tophat_IECTI_2019.py,sha256=LmhXuo-g7pUDZD7_U3xdbDv0Kzdz_gxv1P5kQ6SpUsg,2978
297
+ tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/test_row_Jensen_linear_tophat_IECTI_2019.py,sha256=Mh6rS6jAqPbUn60_Y6D-VF2xaoigdu_CKWdwgJFetqo,2984
297
298
  tests/1_verification/flappy_0_6/row_Jensen_linear_tophat_IECTI2019/flappy/run.py,sha256=cPLIXymqdzu3zxB6-B3g3CU_oDhiYf-TlgWqossDjUw,2259
298
- tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/test_row_Jensen_quadratic_centre.py,sha256=SU8DWxbvgeP2vNNOpYgJ9cVK6wLlQ4NzMRry3W0VZFE,2451
299
+ tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/test_row_Jensen_quadratic_centre.py,sha256=Co7nl9AuelhZn2n0GLBrhFNqG_vKHCcYOr94Hexm_tk,2457
299
300
  tests/1_verification/flappy_0_6/row_Jensen_quadratic_centre/flappy/run.py,sha256=u-LBBH_MVoqY4Gl__6_EuHUTXp7s-6xVU1OXkywrqrY,2187
300
- tests/1_verification/flappy_0_6_2/grid_rotors/test_grid_rotors.py,sha256=aaS_TRsix7snwt0DucCjHk_0uuHzWR8pmOVJcFIrMnM,3952
301
+ tests/1_verification/flappy_0_6_2/grid_rotors/test_grid_rotors.py,sha256=Yv90h5oiPWEvq06QsWnIca77_cN7gQaDrmnnb54kNuE,3958
301
302
  tests/1_verification/flappy_0_6_2/grid_rotors/flappy/run.py,sha256=-TJAB5L9fj7UonqYILVH0i91PPD6KKd7bpJ2j0MDALk,2453
302
- tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/test_row_Bastankhah_Crespo.py,sha256=1b6_mIWvWwAMKnDN_t-oWHfDwpU7l8TJdyf-aydQgpc,2951
303
+ tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/test_row_Bastankhah_Crespo.py,sha256=FJiQm-4LtbU4QTGNR6uvkxWEs641J2kE0hqoob-biGg,2989
303
304
  tests/1_verification/flappy_0_6_2/row_Bastankhah_Crespo/flappy/run.py,sha256=nwIyn20ZyYHhCKcPCnm02zjwNKMRzr9t0U8TjKK61QU,2213
304
- tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/test_row_Bastankhah_linear_centre.py,sha256=a7CQS-_Mnz3NynaTv1OY1CZ10iAqa7E3YxmkbDtoshw,2590
305
+ tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/test_row_Bastankhah_linear_centre.py,sha256=anlvMyrHvwumrzglkMP-LuvMe2eOzASxH1hJB5PwaHQ,2596
305
306
  tests/1_verification/flappy_0_6_2/row_Bastankhah_linear_centre/flappy/run.py,sha256=s6FbEdpiIdHYmdD8S85_NhLH-S3EOinXvw8RHmR2QOU,2122
306
- tests/3_examples/test_examples.py,sha256=rS2Dz04ktbS6v3TRDr96AkWGypr5u49jihqbEmGFmRU,694
307
- foxes-1.2.5.dist-info/LICENSE,sha256=bBCH6mYTPzSepk2s2UUZ3II_ZYXrn1bnSqB85-aZHxU,1071
308
- foxes-1.2.5.dist-info/METADATA,sha256=t7Ic8ZLWemygBNxnjuLMopK0uz_rI943L00tjHMgEE4,8890
309
- foxes-1.2.5.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
310
- foxes-1.2.5.dist-info/entry_points.txt,sha256=KuS44FRH5NnMw201A8Btr76eNRKr2UOoKHjejAsqKwE,123
311
- foxes-1.2.5.dist-info/top_level.txt,sha256=G7oHApEz5nc-iP__XsPcvjYe_NyXGmKMUMPHi3C3x6I,26
312
- foxes-1.2.5.dist-info/RECORD,,
307
+ tests/3_examples/test_examples.py,sha256=9_PtvlYA6ELsQGHt-xAnsjCYdGj1ekX237ymWvEJaCk,732
308
+ foxes-1.3.dist-info/LICENSE,sha256=bBCH6mYTPzSepk2s2UUZ3II_ZYXrn1bnSqB85-aZHxU,1071
309
+ foxes-1.3.dist-info/METADATA,sha256=Bx1wEAE9_rUOJHpAsWoWOjJ5O06HVi_6IosHT9yQMRM,8940
310
+ foxes-1.3.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
311
+ foxes-1.3.dist-info/entry_points.txt,sha256=KuS44FRH5NnMw201A8Btr76eNRKr2UOoKHjejAsqKwE,123
312
+ foxes-1.3.dist-info/top_level.txt,sha256=G7oHApEz5nc-iP__XsPcvjYe_NyXGmKMUMPHi3C3x6I,26
313
+ foxes-1.3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -3,12 +3,11 @@ import inspect
3
3
 
4
4
  import foxes
5
5
  import foxes.variables as FV
6
- from foxes.config import config
7
-
8
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
9
6
 
10
7
 
11
8
  def test():
9
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
10
+ print("TESTDIR:", thisdir)
12
11
 
13
12
  ttype = "DTU10MW"
14
13
  sfile = "wind_rose_bremen.csv"
@@ -4,10 +4,10 @@ import inspect
4
4
  import foxes
5
5
  import foxes.variables as FV
6
6
 
7
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
8
-
9
7
 
10
8
  def test():
9
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
10
+ print("TESTDIR:", thisdir)
11
11
 
12
12
  tfile = thisdir / "NREL-5MW-D126-H90.csv"
13
13
  sfile = thisdir / "states.csv.gz"
@@ -4,13 +4,11 @@ import inspect
4
4
 
5
5
  import foxes
6
6
  import foxes.variables as FV
7
- from foxes.config import config
8
-
9
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
10
7
 
11
8
 
12
9
  def test():
13
- print(thisdir)
10
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
11
+ print("TESTDIR:", thisdir)
14
12
 
15
13
  cfile = thisdir / "flappy" / "results.csv.gz"
16
14
  tPfile = thisdir / "NREL-5MW-D126-H90-P.csv"
@@ -45,61 +43,55 @@ def test():
45
43
  farm, lfile, turbine_models=[ttype.name], verbosity=0
46
44
  )
47
45
 
48
- with foxes.Engine.new("threads", chunk_size_states=1000):
49
-
50
- algo = foxes.algorithms.Downwind(
51
- farm,
52
- states,
53
- mbook=mbook,
54
- rotor_model="centre",
55
- wake_models=["Jensen_linear_k007"],
56
- wake_frame="rotor_wd",
57
- partial_wakes={"Jensen_linear_k007": "top_hat"},
58
- verbosity=0,
59
- )
46
+ algo = foxes.algorithms.Downwind(
47
+ farm=farm,
48
+ states=states,
49
+ mbook=mbook,
50
+ rotor_model="centre",
51
+ wake_models=["Jensen_linear_k007"],
52
+ wake_frame="rotor_wd",
53
+ partial_wakes={"Jensen_linear_k007": "top_hat"},
54
+ verbosity=0,
55
+ )
60
56
 
57
+ with foxes.Engine.new("threads", chunk_size_states=2000):
61
58
  data = algo.calc_farm()
62
59
 
63
- df = data.to_dataframe()[
64
- [FV.AMB_WD, FV.WD, FV.AMB_REWS, FV.REWS, FV.AMB_P, FV.P]
65
- ]
66
- df = df.reset_index()
67
-
68
- print()
69
- print("TRESULTS\n")
70
- print(df)
71
-
72
- # print("\Reading file", cfile)
73
- fdata = pd.read_csv(cfile)
74
- print(fdata)
75
-
76
- print("\nVERIFYING\n")
77
- df[FV.WS] = df["REWS"]
78
- df[FV.AMB_WS] = df["AMB_REWS"]
79
-
80
- # neglecting ws < 5 and ws > 20
81
- sel_ws = (
82
- (fdata[FV.WS] > 5)
83
- & (fdata[FV.WS] < 20)
84
- & (df["REWS"] > 5)
85
- & (df["REWS"] < 20)
86
- )
87
-
88
- # calculating difference
89
- delta = df.reset_index() - fdata
90
- delta = delta[sel_ws]
91
- print(delta)
92
- print(delta.max())
93
- chk = delta[[FV.AMB_WS, FV.AMB_P, FV.WS, FV.P]].abs()
94
- sel = chk[FV.WS] >= 1e-5
95
- print(sel)
96
- print(df[sel & sel_ws])
97
- print(fdata[sel & sel_ws])
98
- print(chk.loc[sel & sel_ws])
99
- print(chk.max())
100
-
101
- assert ((chk[FV.WS] < 1e-5)).all()
102
- assert (chk[FV.P] < 1e-3).all()
60
+ df = data.to_dataframe()[[FV.AMB_WD, FV.WD, FV.AMB_REWS, FV.REWS, FV.AMB_P, FV.P]]
61
+ df = df.reset_index()
62
+
63
+ print()
64
+ print("TRESULTS\n")
65
+ print(df)
66
+
67
+ # print("\Reading file", cfile)
68
+ fdata = pd.read_csv(cfile)
69
+ print(fdata)
70
+
71
+ print("\nVERIFYING\n")
72
+ df[FV.WS] = df["REWS"]
73
+ df[FV.AMB_WS] = df["AMB_REWS"]
74
+
75
+ # neglecting ws < 5 and ws > 20
76
+ sel_ws = (
77
+ (fdata[FV.WS] > 5) & (fdata[FV.WS] < 20) & (df["REWS"] > 5) & (df["REWS"] < 20)
78
+ )
79
+
80
+ # calculating difference
81
+ delta = df.reset_index() - fdata
82
+ delta = delta[sel_ws]
83
+ print(delta)
84
+ print(delta.max())
85
+ chk = delta[[FV.AMB_WS, FV.AMB_P, FV.WS, FV.P]].abs()
86
+ sel = chk[FV.WS] >= 1e-5
87
+ print(sel)
88
+ print(df[sel & sel_ws])
89
+ print(fdata[sel & sel_ws])
90
+ print(chk.loc[sel & sel_ws])
91
+ print(chk.max())
92
+
93
+ assert ((chk[FV.WS] < 1e-5)).all()
94
+ assert (chk[FV.P] < 1e-3).all()
103
95
 
104
96
 
105
97
  if __name__ == "__main__":
@@ -5,11 +5,11 @@ import inspect
5
5
  import foxes
6
6
  import foxes.variables as FV
7
7
 
8
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
9
-
10
8
 
11
9
  def test():
12
- c = 2000
10
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
11
+ print("TESTDIR:", thisdir)
12
+
13
13
  cfile = thisdir / "flappy" / "results.csv.gz"
14
14
  tfile = thisdir / "NREL-5MW-D126-H90.csv"
15
15
  sfile = thisdir / "states.csv.gz"
@@ -40,47 +40,44 @@ def test():
40
40
  verbosity=0,
41
41
  )
42
42
 
43
- with foxes.Engine.new("threads", chunk_size_states=c):
44
-
45
- algo = foxes.algorithms.Downwind(
46
- farm,
47
- states,
48
- mbook=mbook,
49
- rotor_model="centre",
50
- wake_models=["Jensen_linear_k007"],
51
- wake_frame="rotor_wd",
52
- partial_wakes={"Jensen_linear_k007": "centre"},
53
- verbosity=0,
54
- )
43
+ algo = foxes.algorithms.Downwind(
44
+ farm,
45
+ states,
46
+ mbook=mbook,
47
+ rotor_model="centre",
48
+ wake_models=["Jensen_linear_k007"],
49
+ wake_frame="rotor_wd",
50
+ partial_wakes={"Jensen_linear_k007": "centre"},
51
+ verbosity=0,
52
+ )
55
53
 
54
+ with foxes.Engine.new("threads", chunk_size_states=2000):
56
55
  data = algo.calc_farm()
57
56
 
58
- df = data.to_dataframe()[
59
- [FV.AMB_WD, FV.WD, FV.AMB_REWS, FV.REWS, FV.AMB_P, FV.P]
60
- ]
57
+ df = data.to_dataframe()[[FV.AMB_WD, FV.WD, FV.AMB_REWS, FV.REWS, FV.AMB_P, FV.P]]
61
58
 
62
- print()
63
- print("TRESULTS\n")
64
- print(df)
59
+ print()
60
+ print("TRESULTS\n")
61
+ print(df)
65
62
 
66
- print("\nReading file", cfile)
67
- fdata = pd.read_csv(cfile)
68
- print(fdata)
63
+ print("\nReading file", cfile)
64
+ fdata = pd.read_csv(cfile)
65
+ print(fdata)
69
66
 
70
- print("\nVERIFYING\n")
71
- df[FV.WS] = df["REWS"]
72
- df[FV.AMB_WS] = df["AMB_REWS"]
67
+ print("\nVERIFYING\n")
68
+ df[FV.WS] = df["REWS"]
69
+ df[FV.AMB_WS] = df["AMB_REWS"]
73
70
 
74
- delta = df.reset_index() - fdata
75
- print(delta)
76
- print(delta.max())
77
- chk = delta[[FV.AMB_WS, FV.AMB_P, FV.WS, FV.P]].abs()
78
- print(chk.max())
71
+ delta = df.reset_index() - fdata
72
+ print(delta)
73
+ print(delta.max())
74
+ chk = delta[[FV.AMB_WS, FV.AMB_P, FV.WS, FV.P]].abs()
75
+ print(chk.max())
79
76
 
80
- assert (chk[FV.AMB_WS] < 1e-5).all()
81
- assert (chk[FV.AMB_P] < 1e-3).all()
82
- assert (chk[FV.WS] < 1e-5).all()
83
- assert (chk[FV.P] < 1e-3).all()
77
+ assert (chk[FV.AMB_WS] < 1e-5).all()
78
+ assert (chk[FV.AMB_P] < 1e-3).all()
79
+ assert (chk[FV.WS] < 1e-5).all()
80
+ assert (chk[FV.P] < 1e-3).all()
84
81
 
85
82
 
86
83
  if __name__ == "__main__":
@@ -6,10 +6,11 @@ import inspect
6
6
  import foxes
7
7
  import foxes.variables as FV
8
8
 
9
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
10
-
11
9
 
12
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
13
14
  n_s = 800
14
15
  n_t = 76
15
16
  p0 = np.array([0.0, 0.0])
@@ -5,12 +5,12 @@ import inspect
5
5
 
6
6
  import foxes
7
7
  import foxes.variables as FV
8
- from foxes.config import config
9
-
10
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
11
8
 
12
9
 
13
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
14
14
  n_s = 1000
15
15
  n_t = 55
16
16
  c = 1000
@@ -5,12 +5,12 @@ import inspect
5
5
 
6
6
  import foxes
7
7
  import foxes.variables as FV
8
- from foxes.config import config
9
-
10
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
11
8
 
12
9
 
13
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
14
14
  n_s = 30
15
15
  n_t = 52
16
16
  wd = 270.0
@@ -5,12 +5,12 @@ import inspect
5
5
 
6
6
  import foxes
7
7
  import foxes.variables as FV
8
- from foxes.config import config
9
-
10
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
11
8
 
12
9
 
13
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
14
14
  n_s = 30
15
15
  n_t = 52
16
16
  wd = 270.0
@@ -5,12 +5,12 @@ import inspect
5
5
 
6
6
  import foxes
7
7
  import foxes.variables as FV
8
- from foxes.config import config
9
-
10
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
11
8
 
12
9
 
13
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
14
14
  n_s = 800
15
15
  n_t = 76
16
16
  c = 1000
@@ -4,12 +4,12 @@ import inspect
4
4
 
5
5
  import foxes
6
6
  import foxes.variables as FV
7
- from foxes.config import config
8
-
9
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
10
7
 
11
8
 
12
9
  def test():
10
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
11
+ print("TESTDIR:", thisdir)
12
+
13
13
  c = 500
14
14
  cpath = thisdir / "flappy"
15
15
  tfile = thisdir / "NREL-5MW-D126-H90.csv"
@@ -6,10 +6,11 @@ import inspect
6
6
  import foxes
7
7
  import foxes.variables as FV
8
8
 
9
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
10
-
11
9
 
12
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
13
14
  n_s = 30
14
15
  n_t = 52
15
16
  wd = 270.0
@@ -5,12 +5,12 @@ import inspect
5
5
 
6
6
  import foxes
7
7
  import foxes.variables as FV
8
- from foxes.config import config
9
-
10
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
11
8
 
12
9
 
13
10
  def test():
11
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
12
+ print("TESTDIR:", thisdir)
13
+
14
14
  n_s = 99
15
15
  n_t = 84
16
16
  wd = 88.1
@@ -5,10 +5,11 @@ import os
5
5
 
6
6
  from foxes.utils import load_module
7
7
 
8
- thisdir = Path(inspect.getfile(inspect.currentframe())).parent
9
-
10
8
 
11
9
  def test():
10
+ thisdir = Path(inspect.getabsfile(inspect.currentframe())).parent
11
+ print("TESTDIR:", thisdir)
12
+
12
13
  rdir = thisdir.parent.parent / "examples"
13
14
  rpath = rdir / "run_all.py"
14
15
  print(rpath)
File without changes