rafmudaf-floris 4.6.4.post1.dev9__tar.gz → 4.6.4.post1.dev13__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.
Files changed (304) hide show
  1. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/PKG-INFO +1 -1
  2. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/cpp_core.py +75 -52
  3. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/rafmudaf_floris.egg-info/PKG-INFO +1 -1
  4. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.codecov.yml +0 -0
  5. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  6. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  7. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  8. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  9. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/dependabot.yml +0 -0
  10. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/check-working-examples.yaml +0 -0
  11. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/continuous-integration-workflow.yaml +0 -0
  12. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/cpp-backend-tests.yml +0 -0
  13. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/deploy-pages.yaml +0 -0
  14. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/python-publish.yml +0 -0
  15. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.github/workflows/quality-metrics-workflow.yaml +0 -0
  16. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.gitignore +0 -0
  17. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/.pre-commit-config.yaml +0 -0
  18. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/CONTRIBUTING.md +0 -0
  19. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/LICENSE.txt +0 -0
  20. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/README.md +0 -0
  21. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/benchmarks/bench.py +0 -0
  22. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/.nojekyll +0 -0
  23. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/_config.yml +0 -0
  24. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/_toc.yml +0 -0
  25. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/advanced_concepts.ipynb +0 -0
  26. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/api_docs.md +0 -0
  27. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/architecture.md +0 -0
  28. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/bibliography.md +0 -0
  29. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/cc.yaml +0 -0
  30. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/code_quality.ipynb +0 -0
  31. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/dev_guide.md +0 -0
  32. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/docs_image.png +0 -0
  33. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/empirical_gauss_model.md +0 -0
  34. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/floating_wind_turbine.md +0 -0
  35. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/floris_models.ipynb +0 -0
  36. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/gch.yaml +0 -0
  37. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/heterogeneous_map.ipynb +0 -0
  38. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/index.md +0 -0
  39. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/input_reference_main.md +0 -0
  40. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/input_reference_turbine.md +0 -0
  41. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/installation.md +0 -0
  42. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/intro_concepts.ipynb +0 -0
  43. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/jensen.yaml +0 -0
  44. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/layout_optimization.md +0 -0
  45. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/multidimensional_wind_turbine.ipynb +0 -0
  46. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/nrel_5MW.yaml +0 -0
  47. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/operation_models_user.ipynb +0 -0
  48. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/plot_complex_docs.png +0 -0
  49. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/powerthrust_helix.png +0 -0
  50. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/references.bib +0 -0
  51. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/turbine_library.md +0 -0
  52. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/turbine_models.ipynb +0 -0
  53. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/v3_to_v4.md +0 -0
  54. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/wake_models.ipynb +0 -0
  55. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/docs/wind_data_user.ipynb +0 -0
  56. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/001_opening_floris_computing_power.py +0 -0
  57. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/002_visualizations.py +0 -0
  58. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/003_wind_data_objects.py +0 -0
  59. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/004_set.py +0 -0
  60. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/005_getting_power.py +0 -0
  61. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/006_get_farm_aep.py +0 -0
  62. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/007_sweeping_variables.py +0 -0
  63. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/008_uncertain_models.py +0 -0
  64. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/009_parallel_models.py +0 -0
  65. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/010_compare_farm_power_with_neighbor.py +0 -0
  66. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/_convert_examples_to_notebooks.py +0 -0
  67. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/001_opt_yaw_single_ws.py +0 -0
  68. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/002_opt_yaw_single_ws_uncertain.py +0 -0
  69. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/003_opt_yaw_multiple_ws.py +0 -0
  70. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/004_optimize_yaw_aep.py +0 -0
  71. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/005_optimize_yaw_aep_parallel.py +0 -0
  72. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/006_compare_yaw_optimizers.py +0 -0
  73. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/007_optimize_yaw_with_neighbor_farms.py +0 -0
  74. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_optimization/008_optimize_yaw_with_disabled_turbines.py +0 -0
  75. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_types/001_derating_control.py +0 -0
  76. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_types/002_disable_turbines.py +0 -0
  77. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_types/003_setting_yaw_and_disabling.py +0 -0
  78. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_types/004_helix_active_wake_mixing.py +0 -0
  79. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_control_types/005_peak_shaving.py +0 -0
  80. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_emgauss/001_empirical_gauss_velocity_deficit_parameters.py +0 -0
  81. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_emgauss/002_empirical_gauss_deflection_parameters.py +0 -0
  82. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_floating/001_floating_turbine_models.py +0 -0
  83. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_floating/002_floating_vs_fixedbottom_farm.py +0 -0
  84. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_floating/003_tilt_driven_vertical_wake_deflection.py +0 -0
  85. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_get_flow/001_extract_wind_speed_at_turbines.py +0 -0
  86. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_get_flow/002_extract_wind_speed_at_points.py +0 -0
  87. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_get_flow/003_extract_turbulence_intensity_at_points.py +0 -0
  88. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_get_flow/004_plot_velocity_deficit_profiles.py +0 -0
  89. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_heterogeneous/001_heterogeneous_inflow_single.py +0 -0
  90. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_heterogeneous/002_heterogeneous_using_wind_data.py +0 -0
  91. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_heterogeneous/003_heterogeneous_speedup_by_wd_and_ws.py +0 -0
  92. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_heterogeneous/004_heterogeneous_2d_and_3d.py +0 -0
  93. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_layout_optimization/001_optimize_layout.py +0 -0
  94. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_layout_optimization/002_optimize_layout_with_heterogeneity.py +0 -0
  95. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_layout_optimization/003_genetic_random_search.py +0 -0
  96. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_layout_optimization/004_generate_gridded_layout.py +0 -0
  97. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_layout_optimization/005_layout_optimization_complex_boundary.py +0 -0
  98. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_load_optimization/001_lti_and_voc.py +0 -0
  99. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_load_optimization/002_row_opt_example.py +0 -0
  100. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_multidim/001_multi_dimensional_cp_ct.py +0 -0
  101. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_multidim/002_multi_dimensional_cp_ct_2Hs.py +0 -0
  102. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_multidim/003_multi_dimensional_cp_ct_TI.py +0 -0
  103. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_operation_models/001_compare_yaw_loss.py +0 -0
  104. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbine/001_reference_turbines.py +0 -0
  105. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbine/002_multiple_turbine_types.py +0 -0
  106. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbine/003_specify_turbine_power_curve.py +0 -0
  107. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbopark/001_compare_turbopark_implementations.py +0 -0
  108. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbopark/comparison_data/Rowpark_Orsted.csv +0 -0
  109. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_turbopark/comparison_data/WindDirection_Sweep_Orsted.csv +0 -0
  110. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_uncertain/001_uncertain_model_params.py +0 -0
  111. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_uncertain/002_approx_floris_model.py +0 -0
  112. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_uncertain/003_uncertain_model_with_parallelization.py +0 -0
  113. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_visualizations/001_layout_visualizations.py +0 -0
  114. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_visualizations/002_visualize_y_cut_plane.py +0 -0
  115. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_visualizations/003_visualize_cross_plane.py +0 -0
  116. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_visualizations/004_visualize_rotor_values.py +0 -0
  117. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_visualizations/005_visualize_flow_by_sweeping_turbines.py +0 -0
  118. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_data/001_wind_data_comparisons.py +0 -0
  119. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_data/002_generate_ti.py +0 -0
  120. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_data/003_generate_value.py +0 -0
  121. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_resource_grid/000_generate_example_wrg.py +0 -0
  122. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_resource_grid/001_wind_rose_wrg.py +0 -0
  123. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_resource_grid/002_set_floris_with_wrg.py +0 -0
  124. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_resource_grid/003_wrg_compar_layout_optimization.py +0 -0
  125. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/examples_wind_resource_grid/wrg_example.wrg +0 -0
  126. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/gradient_layout_optimization.py +0 -0
  127. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/cc.yaml +0 -0
  128. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/emgauss.yaml +0 -0
  129. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/emgauss_helix.yaml +0 -0
  130. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/gch.yaml +0 -0
  131. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/gch_heterogeneous_inflow.yaml +0 -0
  132. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/gch_multi_dim_cp_ct.yaml +0 -0
  133. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/gch_multi_dim_cp_ct_TI.yaml +0 -0
  134. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/gch_multiple_turbine_types.yaml +0 -0
  135. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/jensen.yaml +0 -0
  136. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turbine_files/iea_15MW_multi_dim_TI.csv +0 -0
  137. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turbine_files/iea_15MW_multi_dim_TI.yaml +0 -0
  138. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turbopark.yaml +0 -0
  139. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turbopark_cubature.yaml +0 -0
  140. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turboparkgauss.yaml +0 -0
  141. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/turboparkgauss_cubature.yaml +0 -0
  142. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs/wind_rose.csv +0 -0
  143. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/emgauss_fixed.yaml +0 -0
  144. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/emgauss_floating.yaml +0 -0
  145. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/emgauss_floating_fixedtilt15.yaml +0 -0
  146. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/emgauss_floating_fixedtilt5.yaml +0 -0
  147. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/gch_fixed.yaml +0 -0
  148. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/gch_floating.yaml +0 -0
  149. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/gch_floating_defined_floating.yaml +0 -0
  150. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/turbine_files/nrel_5MW_fixed.yaml +0 -0
  151. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/turbine_files/nrel_5MW_floating.yaml +0 -0
  152. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/turbine_files/nrel_5MW_floating_defined_floating.yaml +0 -0
  153. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/turbine_files/nrel_5MW_floating_fixedtilt15.yaml +0 -0
  154. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/examples/inputs_floating/turbine_files/nrel_5MW_floating_fixedtilt5.yaml +0 -0
  155. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/__init__.py +0 -0
  156. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/convert_floris_input_v3_to_v4.py +0 -0
  157. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/convert_turbine_v3_to_v4.py +0 -0
  158. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/__init__.py +0 -0
  159. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/base.py +0 -0
  160. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/core.py +0 -0
  161. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/farm.py +0 -0
  162. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/flow_field.py +0 -0
  163. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/grid.py +0 -0
  164. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/rotor_velocity.py +0 -0
  165. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/solver.py +0 -0
  166. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/turbine/__init__.py +0 -0
  167. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/turbine/controller_dependent_operation_model.py +0 -0
  168. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/turbine/operation_models.py +0 -0
  169. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/turbine/turbine.py +0 -0
  170. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/turbine/unified_momentum_model.py +0 -0
  171. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake.py +0 -0
  172. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_combination/__init__.py +0 -0
  173. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_combination/fls.py +0 -0
  174. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_combination/max.py +0 -0
  175. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_combination/sosfs.py +0 -0
  176. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_deflection/__init__.py +0 -0
  177. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_deflection/empirical_gauss.py +0 -0
  178. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_deflection/gauss.py +0 -0
  179. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_deflection/jimenez.py +0 -0
  180. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_deflection/none.py +0 -0
  181. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_turbulence/__init__.py +0 -0
  182. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_turbulence/crespo_hernandez.py +0 -0
  183. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_turbulence/none.py +0 -0
  184. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_turbulence/wake_induced_mixing.py +0 -0
  185. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/__init__.py +0 -0
  186. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/cumulative_gauss_curl.py +0 -0
  187. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/empirical_gauss.py +0 -0
  188. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/gauss.py +0 -0
  189. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/jensen.py +0 -0
  190. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/none.py +0 -0
  191. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/turbopark.py +0 -0
  192. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/turbopark_lookup_table.mat +0 -0
  193. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/core/wake_velocity/turboparkgauss.py +0 -0
  194. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/cut_plane.py +0 -0
  195. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/default_inputs.yaml +0 -0
  196. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/floris_model.py +0 -0
  197. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/flow_visualization.py +0 -0
  198. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/heterogeneous_map.py +0 -0
  199. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/layout_visualization.py +0 -0
  200. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/logging_manager.py +0 -0
  201. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/__init__.py +0 -0
  202. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/__init__.py +0 -0
  203. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_base.py +0 -0
  204. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_boundary_grid.py +0 -0
  205. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_gridded.py +0 -0
  206. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_pyoptsparse.py +0 -0
  207. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_pyoptsparse_spread.py +0 -0
  208. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_random_search.py +0 -0
  209. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/layout_optimization/layout_optimization_scipy.py +0 -0
  210. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/load_optimization/__init__.py +0 -0
  211. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/load_optimization/load_optimization.py +0 -0
  212. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/other/__init__.py +0 -0
  213. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/other/boundary_grid.py +0 -0
  214. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/__init__.py +0 -0
  215. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/yaw_optimization_base.py +0 -0
  216. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/yaw_optimization_tools.py +0 -0
  217. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/yaw_optimizer_geometric.py +0 -0
  218. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/yaw_optimizer_scipy.py +0 -0
  219. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/optimization/yaw_optimization/yaw_optimizer_sr.py +0 -0
  220. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/par_floris_model.py +0 -0
  221. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/parallel_floris_model.py +0 -0
  222. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/__init__.py +0 -0
  223. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/demo_cp_ct_surfaces/iea_10MW_demo_cp_ct_surface.npz +0 -0
  224. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/demo_cp_ct_surfaces/iea_15MW_demo_cp_ct_surface.npz +0 -0
  225. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/demo_cp_ct_surfaces/nrel_5MW_demo_cp_ct_surface.npz +0 -0
  226. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_10MW.yaml +0 -0
  227. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_15MW.yaml +0 -0
  228. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_15MW_floating_multi_dim_cp_ct.yaml +0 -0
  229. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_15MW_multi_dim_TI_u.csv +0 -0
  230. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_15MW_multi_dim_Tp_Hs.csv +0 -0
  231. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_15MW_multi_dim_cp_ct.yaml +0 -0
  232. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/iea_22MW.yaml +0 -0
  233. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/nrel_5MW.yaml +0 -0
  234. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/turbine_previewer.py +0 -0
  235. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/turbine_library/turbine_utilities.py +0 -0
  236. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/type_dec.py +0 -0
  237. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/uncertain_floris_model.py +0 -0
  238. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/utilities.py +0 -0
  239. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/floris/wind_data.py +0 -0
  240. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/conftest.py +0 -0
  241. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/linux_perf.py +0 -0
  242. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/profiling.py +0 -0
  243. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/quality_metrics.py +0 -0
  244. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/serial_vectorize.py +0 -0
  245. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/profiling/timing.py +0 -0
  246. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/pyproject.toml +0 -0
  247. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/rafmudaf_floris.egg-info/SOURCES.txt +0 -0
  248. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/rafmudaf_floris.egg-info/dependency_links.txt +0 -0
  249. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/rafmudaf_floris.egg-info/requires.txt +0 -0
  250. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/rafmudaf_floris.egg-info/top_level.txt +0 -0
  251. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/setup.cfg +0 -0
  252. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/__init__.py +0 -0
  253. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/base_unit_test.py +0 -0
  254. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/conftest.py +0 -0
  255. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/controller_dependent_operation_model_unit_test.py +0 -0
  256. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/convert_v3_to_v4_test.py +0 -0
  257. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/core_unit_test.py +0 -0
  258. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/__init__.py +0 -0
  259. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/iea_15MW_multi_dim_TI.csv +0 -0
  260. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/input_full.yaml +0 -0
  261. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/nrel_5MW.yaml +0 -0
  262. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/nrel_5MW_custom.yaml +0 -0
  263. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/wind_rose.csv +0 -0
  264. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/wind_ti_rose.csv +0 -0
  265. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/data/wrg_test.wrg +0 -0
  266. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/farm_unit_test.py +0 -0
  267. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/floris_model_integration_test.py +0 -0
  268. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/flow_field_unit_test.py +0 -0
  269. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/geometric_yaw_unit_test.py +0 -0
  270. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/heterogeneous_map_integration_test.py +0 -0
  271. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/layout_optimization_integration_test.py +0 -0
  272. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/layout_visualization_test.py +0 -0
  273. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/load_optimization_test.py +0 -0
  274. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/par_floris_model_unit_test.py +0 -0
  275. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/parallel_floris_model_integration_test.py +0 -0
  276. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/cumulative_curl_regression_test.py +0 -0
  277. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/empirical_gauss_regression_test.py +0 -0
  278. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/gauss_regression_test.py +0 -0
  279. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/jensen_jimenez_regression_test.py +0 -0
  280. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/none_regression_test.py +0 -0
  281. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/random_search_layout_opt_regression_test.py +0 -0
  282. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/scipy_layout_opt_regression.py +0 -0
  283. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/turbopark_regression_test.py +0 -0
  284. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/turboparkgauss_regression_test.py +0 -0
  285. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/turbulence_models_regression_test.py +0 -0
  286. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/reg_tests/yaw_optimization_regression_test.py +0 -0
  287. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/rotor_velocity_unit_test.py +0 -0
  288. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/serial_refine_unit_test.py +0 -0
  289. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turbine_grid_unit_test.py +0 -0
  290. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turbine_multi_dim_unit_test.py +0 -0
  291. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turbine_operation_models_unit_test.py +0 -0
  292. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turbine_unit_test.py +0 -0
  293. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turbine_utilities_unit_test.py +0 -0
  294. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/turboparkgauss_unit_test.py +0 -0
  295. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/type_dec_unit_test.py +0 -0
  296. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/uncertain_floris_model_integration_test.py +0 -0
  297. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/unified_momentum_operation_model_unit_test.py +0 -0
  298. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/utilities_unit_test.py +0 -0
  299. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/v3_to_v4_convert_test/gch.yaml +0 -0
  300. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/v3_to_v4_convert_test/nrel_5MW_v3.yaml +0 -0
  301. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/wake_unit_tests.py +0 -0
  302. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/wind_data_integration_test.py +0 -0
  303. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/wind_rose_wrg_test.py +0 -0
  304. {rafmudaf_floris-4.6.4.post1.dev9 → rafmudaf_floris-4.6.4.post1.dev13}/tests/yaw_optimization_integration_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rafmudaf-floris
3
- Version: 4.6.4.post1.dev9
3
+ Version: 4.6.4.post1.dev13
4
4
  Summary: A controls-oriented engineering wake model.
5
5
  Author-email: Rafael Mudafort <rafael@clementinescientific.com>
6
6
  License: BSD 3-Clause License
@@ -1,5 +1,5 @@
1
1
  """
2
- cpp_core.py — Phase 8: CppCore Python wrapper
2
+ cpp_core.py — CppCore Python wrapper
3
3
  ==============================================
4
4
 
5
5
  Drop-in replacement for ``floris.core.core.Core`` backed by the C++ libtorch
@@ -28,16 +28,16 @@ unchanged.
28
28
  Supported
29
29
  ---------
30
30
  ``run()``, ``run_no_wake()``, ``get_turbine_powers()`` and all gradient-based
31
- optimisation inputs (layout_x, yaw_angles fully differentiable through the C++
31
+ optimization inputs (layout_x, yaw_angles fully differentiable through the C++
32
32
  wavefront solver).
33
33
 
34
34
  Not supported
35
35
  -------------
36
36
  ``solve_for_viz``, ``solve_for_points``,
37
37
  ``solve_for_velocity_deficit_profiles`` — these raise ``NotImplementedError``.
38
- Use ``FlorisModel(backend='python')`` for flow-field visualisation.
38
+ Use ``FlorisModel(backend='python')`` for flow-field visualization.
39
39
 
40
- Phase 8 limitations
40
+ limitations
41
41
  -------------------
42
42
  * Heterogeneous turbine farms: the C++ solver uses the first power/thrust table
43
43
  for **all** turbines. Full per-turbine table dispatch is a Phase 11 task.
@@ -67,9 +67,16 @@ from floris.utilities import load_yaml
67
67
  # the cpp backend is actually requested).
68
68
  # ---------------------------------------------------------------------------
69
69
 
70
- def _to_f32(x, device="cpu"):
70
+ # dtype used for all tensors passed to the C++ extension. Defaults to
71
+ # float32; overridden to float64 once the extension is imported and
72
+ # floris_cpp.using_double() is known. Set in CppCore.from_dict().
73
+ _KFLOAT_DTYPE: torch.dtype = torch.float32
74
+
75
+
76
+ def _to_kfloat(x, device="cpu"):
71
77
  """
72
- Convert *x* to a float32 ``torch.Tensor`` on *device*.
78
+ Convert *x* to a ``torch.Tensor`` on *device* using the precision
79
+ required by the compiled C++ extension (_KFLOAT_DTYPE).
73
80
 
74
81
  Accepts both ``numpy.ndarray`` (v4.6.4 Python core) and
75
82
  ``torch.Tensor``. The autograd graph is preserved so that inputs
@@ -77,8 +84,8 @@ def _to_f32(x, device="cpu"):
77
84
  enabling gradient-based layout and yaw optimisation.
78
85
  """
79
86
  if isinstance(x, torch.Tensor):
80
- return x.float().to(device)
81
- return torch.tensor(np.asarray(x, dtype=np.float32)).to(device)
87
+ return x.to(dtype=_KFLOAT_DTYPE, device=device)
88
+ return torch.tensor(np.asarray(x), dtype=_KFLOAT_DTYPE).to(device)
82
89
 
83
90
 
84
91
  def _get_tilt_angles(py_farm):
@@ -141,7 +148,7 @@ def _build_turbine_tables(floris_cpp, cpp_farm, py_farm, device="cpu"):
141
148
  Populate ``cpp_farm.turbine_tables`` from the Python farm's
142
149
  ``turbine_power_thrust_tables`` dict.
143
150
 
144
- Phase 8 note: one table per *unique* turbine type is added. For
151
+ Note: one table per *unique* turbine type is added. For
145
152
  heterogeneous farms the C++ solver uses index 0 for all turbines; full
146
153
  per-turbine dispatch is deferred to Phase 11.
147
154
  """
@@ -151,9 +158,9 @@ def _build_turbine_tables(floris_cpp, cpp_farm, py_farm, device="cpu"):
151
158
  continue
152
159
  added_types.add(turb_type)
153
160
  tbl = floris_cpp.PowerThrustTable()
154
- tbl.wind_speed = _to_f32(tbl_dict["wind_speed"], device)
155
- tbl.thrust_coefficient = _to_f32(tbl_dict["thrust_coefficient"], device)
156
- tbl.power = _to_f32(tbl_dict["power"], device)
161
+ tbl.wind_speed = _to_kfloat(tbl_dict["wind_speed"], device)
162
+ tbl.thrust_coefficient = _to_kfloat(tbl_dict["thrust_coefficient"], device)
163
+ tbl.power = _to_kfloat(tbl_dict["power"], device)
157
164
  # ref_tilt: used for CosineLossTurbine CT correction CT *= cos(yaw)*cos(tilt)/cos(ref_tilt)
158
165
  tbl.ref_tilt = float(tbl_dict["ref_tilt"])
159
166
  floris_cpp.farm_add_turbine_table(cpp_farm, tbl)
@@ -280,6 +287,10 @@ class CppCore:
280
287
  wake_model = d["wake"]["model_strings"]["velocity_model"]
281
288
  floris_cpp = _get_floris_cpp(solver=cpp_solver_paradigm, wake_model=wake_model)
282
289
 
290
+ # Sync tensor precision with the compiled extension.
291
+ global _KFLOAT_DTYPE
292
+ _KFLOAT_DTYPE = torch.float64 if floris_cpp.using_double() else torch.float32
293
+
283
294
  # Validate solver key early so errors surface at init time, not run().
284
295
  available = floris_cpp.available_solvers()
285
296
  if cpp_solver_paradigm not in available:
@@ -294,7 +305,7 @@ class CppCore:
294
305
  obj._cpp_solver_paradigm = cpp_solver_paradigm
295
306
 
296
307
  # Python Core — owns all Python-specific state (power/thrust functions,
297
- # turbine type maps, AWC/setpoint arrays, as_dict() serialisation, etc.)
308
+ # turbine type maps, AWC/setpoint arrays, as_dict() serialization, etc.)
298
309
  obj._py_core = Core.from_dict(d)
299
310
 
300
311
  # C++ ModelConfig — wake hyperparameters + solver selection
@@ -321,16 +332,16 @@ class CppCore:
321
332
  @staticmethod
322
333
  def _make_cpp_farm(floris_cpp, py_farm, device="cpu") -> object:
323
334
  f = floris_cpp.Farm()
324
- f.layout_x = _to_f32(py_farm.layout_x, device)
325
- f.layout_y = _to_f32(py_farm.layout_y, device)
326
- f.hub_heights = _to_f32(py_farm.hub_heights, device)
327
- f.rotor_diameters = _to_f32(py_farm.rotor_diameters, device)
328
- f.yaw_angles = _to_f32(py_farm.yaw_angles, device)
335
+ f.layout_x = _to_kfloat(py_farm.layout_x, device)
336
+ f.layout_y = _to_kfloat(py_farm.layout_y, device)
337
+ f.hub_heights = _to_kfloat(py_farm.hub_heights, device)
338
+ f.rotor_diameters = _to_kfloat(py_farm.rotor_diameters, device)
339
+ f.yaw_angles = _to_kfloat(py_farm.yaw_angles, device)
329
340
  # tilt_angles: populated by set_tilt_to_ref_tilt() in the Python solver.
330
341
  # Fall back to ref_tilts (gives cos(tilt)/cos(ref_tilt) = 1) if unavailable.
331
342
  tilt = _get_tilt_angles(py_farm)
332
343
  if tilt is not None:
333
- f.tilt_angles = _to_f32(tilt, device)
344
+ f.tilt_angles = _to_kfloat(tilt, device)
334
345
  f.n_turbines = py_farm.n_turbines
335
346
  _build_turbine_tables(floris_cpp, f, py_farm, device)
336
347
  return f
@@ -339,9 +350,9 @@ class CppCore:
339
350
  def _make_cpp_flow_field(py_ff, device="cpu") -> object:
340
351
  floris_cpp = _get_floris_cpp()
341
352
  ff = floris_cpp.FlowField()
342
- ff.wind_speeds = _to_f32(py_ff.wind_speeds, device)
343
- ff.wind_directions = _to_f32(py_ff.wind_directions, device)
344
- ff.turbulence_intensities = _to_f32(py_ff.turbulence_intensities, device)
353
+ ff.wind_speeds = _to_kfloat(py_ff.wind_speeds, device)
354
+ ff.wind_directions = _to_kfloat(py_ff.wind_directions, device)
355
+ ff.turbulence_intensities = _to_kfloat(py_ff.turbulence_intensities, device)
345
356
  ff.wind_shear = float(py_ff.wind_shear)
346
357
  ff.wind_veer = float(py_ff.wind_veer)
347
358
  ff.air_density = float(py_ff.air_density)
@@ -353,9 +364,9 @@ class CppCore:
353
364
  def _make_cpp_grid(py_farm, py_ff, solver_dict: dict, device="cpu") -> object:
354
365
  floris_cpp = _get_floris_cpp()
355
366
  g = floris_cpp.TurbineGrid()
356
- g.turbine_coordinates = _to_f32(py_farm.coordinates, device)
357
- g.turbine_diameters = _to_f32(py_farm.rotor_diameters, device)
358
- g.wind_directions = _to_f32(py_ff.wind_directions, device)
367
+ g.turbine_coordinates = _to_kfloat(py_farm.coordinates, device)
368
+ g.turbine_diameters = _to_kfloat(py_farm.rotor_diameters, device)
369
+ g.wind_directions = _to_kfloat(py_ff.wind_directions, device)
359
370
  g.grid_resolution = int(solver_dict.get("turbine_grid_points", 3))
360
371
  g.n_turbines = py_farm.n_turbines
361
372
  g.n_findex = int(py_ff.n_findex)
@@ -402,24 +413,34 @@ class CppCore:
402
413
  return # User-injected differentiable tensor; preserve it.
403
414
  setattr(self._cpp_farm, attr, default_val)
404
415
 
416
+ # Determine the effective device: if the caller has injected a grad tensor
417
+ # on a different device (e.g. cuda:0 into a cpu-configured model), use
418
+ # that device for all tensors so everything is consistent.
419
+ _existing_lx = getattr(self._cpp_farm, 'layout_x', None)
420
+ if isinstance(_existing_lx, torch.Tensor) and _existing_lx.requires_grad:
421
+ device = _existing_lx.device
422
+ self._device = str(device) # update self._device to match the grad tensor's device
423
+ else:
424
+ device = self._device
425
+
405
426
  # ---- sync farm ----
406
427
  # layout_x / layout_y / yaw_angles are preserved if the caller has
407
428
  # already injected a requires_grad tensor (common in autograd tests).
408
- _preserve_if_grad('layout_x', _to_f32(py_farm.layout_x, self._device))
409
- _preserve_if_grad('layout_y', _to_f32(py_farm.layout_y, self._device))
410
- _preserve_if_grad('yaw_angles', _to_f32(py_farm.yaw_angles, self._device))
411
- self._cpp_farm.hub_heights = _to_f32(py_farm.hub_heights, self._device)
412
- self._cpp_farm.rotor_diameters = _to_f32(py_farm.rotor_diameters, self._device)
429
+ _preserve_if_grad('layout_x', _to_kfloat(py_farm.layout_x, device))
430
+ _preserve_if_grad('layout_y', _to_kfloat(py_farm.layout_y, device))
431
+ _preserve_if_grad('yaw_angles', _to_kfloat(py_farm.yaw_angles, device))
432
+ self._cpp_farm.hub_heights = _to_kfloat(py_farm.hub_heights, device)
433
+ self._cpp_farm.rotor_diameters = _to_kfloat(py_farm.rotor_diameters, device)
413
434
  tilt = _get_tilt_angles(py_farm)
414
435
  if tilt is not None:
415
- self._cpp_farm.tilt_angles = _to_f32(tilt, self._device)
436
+ self._cpp_farm.tilt_angles = _to_kfloat(tilt, device)
416
437
  self._cpp_farm.n_turbines = py_farm.n_turbines
417
438
 
418
439
  # ---- sync flow field ----
419
- self._cpp_flow_field.wind_speeds = _to_f32(py_ff.wind_speeds, self._device)
420
- self._cpp_flow_field.wind_directions = _to_f32(py_ff.wind_directions, self._device)
421
- self._cpp_flow_field.turbulence_intensities = _to_f32(
422
- py_ff.turbulence_intensities, self._device
440
+ self._cpp_flow_field.wind_speeds = _to_kfloat(py_ff.wind_speeds, device)
441
+ self._cpp_flow_field.wind_directions = _to_kfloat(py_ff.wind_directions, device)
442
+ self._cpp_flow_field.turbulence_intensities = _to_kfloat(
443
+ py_ff.turbulence_intensities, device
423
444
  )
424
445
  self._cpp_flow_field.wind_shear = float(py_ff.wind_shear)
425
446
  self._cpp_flow_field.wind_veer = float(py_ff.wind_veer)
@@ -438,15 +459,15 @@ class CppCore:
438
459
  isinstance(ly, torch.Tensor) and ly.requires_grad
439
460
  )
440
461
  if has_layout_grad:
441
- hub_h = _to_f32(py_farm.hub_heights, self._device) # [T], no grad
462
+ hub_h = _to_kfloat(py_farm.hub_heights, device) # [T], no grad
442
463
  # torch.stack([T], [T], [T], dim=1) → [T, 3]
443
464
  self._cpp_grid.turbine_coordinates = torch.stack(
444
465
  [lx.float(), ly.float(), hub_h], dim=1
445
466
  )
446
467
  else:
447
- self._cpp_grid.turbine_coordinates = _to_f32(py_farm.coordinates, self._device)
448
- self._cpp_grid.turbine_diameters = _to_f32(py_farm.rotor_diameters, self._device)
449
- self._cpp_grid.wind_directions = _to_f32(py_ff.wind_directions, self._device)
468
+ self._cpp_grid.turbine_coordinates = _to_kfloat(py_farm.coordinates, device)
469
+ self._cpp_grid.turbine_diameters = _to_kfloat(py_farm.rotor_diameters, device)
470
+ self._cpp_grid.wind_directions = _to_kfloat(py_ff.wind_directions, device)
450
471
  self._cpp_grid.n_turbines = py_farm.n_turbines
451
472
  self._cpp_grid.n_findex = int(py_ff.n_findex)
452
473
 
@@ -522,15 +543,17 @@ class CppCore:
522
543
 
523
544
  u = self._u_sorted_tensor # [F, T_sorted, nG, nG], may carry grad_fn
524
545
 
525
- # Average velocity over rotor grid points → [F, T_sorted].
526
- # Arithmetic mean (rather than cubic-mean) preserves grad_fn correctly.
527
- u_avg = u.mean(dim=(2, 3))
546
+ # Cubic mean over rotor grid points → [F, T_sorted].
547
+ # pow(3) mean → pow(1/3) are all differentiable ops; grad_fn is preserved.
548
+ # pow(1/3) gradient is undefined at exactly zero velocity, which cannot
549
+ # occur for physically valid wind conditions.
550
+ u_avg = u.pow(3).mean(dim=(2, 3)).pow(1 / 3)
528
551
 
529
552
  # Look up power from the first turbine type's power table using the
530
- # registered differentiable interp1d op (Phase 6).
531
- ptt = self._py_core.farm.turbine_power_thrust_tables
532
- first_type = next(iter(ptt))
533
- tbl = ptt[first_type]
553
+ # registered differentiable interp1d op.
554
+ power_thrust_table = self._py_core.farm.turbine_power_thrust_tables
555
+ first_type = next(iter(power_thrust_table))
556
+ tbl = power_thrust_table[first_type]
534
557
  dtype = u_avg.dtype
535
558
  device = u_avg.device
536
559
  ws_t = torch.tensor(
@@ -583,7 +606,7 @@ class CppCore:
583
606
  )
584
607
 
585
608
  # ── velocity field ──────────────────────────────────────────────────
586
- # The Phase-2 C++ FlowField::finalize() is a stub: u = u_sorted
609
+ # The C++ FlowField::finalize() is a stub: u = u_sorted
587
610
  # (no spatial un-sorting is applied). We apply the inverse permutation
588
611
  # here so that _get_turbine_powers() receives u in original turbine order.
589
612
  u_sorted_np = self._cpp_flow_field.u.detach().cpu().numpy() # [fi, tu, ng, ng]
@@ -611,13 +634,13 @@ class CppCore:
611
634
  self._py_core.state = State.USED
612
635
 
613
636
  # ------------------------------------------------------------------
614
- # Unsupported visualisation methods
637
+ # Unsupported visualization methods
615
638
  # ------------------------------------------------------------------
616
639
 
617
640
  def solve_for_viz(self, *args, **kwargs):
618
641
  raise NotImplementedError(
619
642
  "solve_for_viz is not supported by the C++ backend. "
620
- "Use FlorisModel(backend='python') for flow-field visualisations."
643
+ "Use FlorisModel(backend='python') for flow-field visualization."
621
644
  )
622
645
 
623
646
  def solve_for_points(self, *args, **kwargs):
@@ -633,12 +656,12 @@ class CppCore:
633
656
  )
634
657
 
635
658
  # ------------------------------------------------------------------
636
- # Serialisation
659
+ # Serialization
637
660
  # ------------------------------------------------------------------
638
661
 
639
662
  def as_dict(self) -> dict:
640
663
  """
641
- Reverse-serialise state to the YAML dict schema.
664
+ Reverse-serialize state to the YAML dict schema.
642
665
 
643
666
  Delegates to ``_py_core.as_dict()`` so that ``FlorisModel._reinitialize()``
644
667
  can call ``Core.from_dict(self.core.as_dict())`` without changes.
@@ -675,7 +698,7 @@ class CppCore:
675
698
 
676
699
  @property
677
700
  def grid(self):
678
- """Python Grid — used for visualisation helpers; C++ has its own grid."""
701
+ """Python Grid — used for visualization helpers; C++ has its own grid."""
679
702
  return self._py_core.grid
680
703
 
681
704
  @property
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rafmudaf-floris
3
- Version: 4.6.4.post1.dev9
3
+ Version: 4.6.4.post1.dev13
4
4
  Summary: A controls-oriented engineering wake model.
5
5
  Author-email: Rafael Mudafort <rafael@clementinescientific.com>
6
6
  License: BSD 3-Clause License