Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUGFIX] Add enable_active_wake_mixing field to v3 to v4 documentation and conversion #878

Merged
merged 8 commits into from
Apr 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,15 +115,15 @@ fmodel.run()
Finally, results can be analyzed via post-processing functions available within
[FlorisModel](https://nrel.github.io/floris/_autosummary/floris.floris_model.FlorisModel.html#floris.floris_model.FlorisModel)
such as
- [FlorisModel.get_turbine_layout](https://nrel.github.io/floris/_autosummary/floris.floris_model.FlorisModel.html#floris.floris_model.FlorisModel.get_turbine_layout)
- [FlorisModel.get_turbine_powers](https://nrel.github.io/floris/_autosummary/floris.floris_model.FlorisModel.html#floris.floris_model.FlorisModel.get_turbine_powers)
- [FlorisModel.get_farm_AEP](https://nrel.github.io/floris/_autosummary/floris.floris_model.FlorisModel.html#floris.floris_model.FlorisModel.get_farm_AEP)
- [FlorisModel.get_turbine_layout](https://nrel.github.io/floris/_autosummary/floris.floris_model.html#floris.floris_model.FlorisModel.get_turbine_layout)
- [FlorisModel.get_turbine_powers](https://nrel.github.io/floris/_autosummary/floris.floris_model.html#floris.floris_model.FlorisModel.get_turbine_powers)
- [FlorisModel.get_farm_AEP](https://nrel.github.io/floris/_autosummary/floris.floris_model.html#floris.floris_model.FlorisModel.get_farm_AEP)

and in two visualization packages: [layoutviz](https://nrel.github.io/floris/_autosummary/floris.layout_visualization.html) and [flowviz](https://nrel.github.io/floris/_autosummary/floris.flow_visualization.html).
A collection of examples describing the creation of simulations as well as
analysis and post processing are included in the
[repository](https://github.com/NREL/floris/tree/main/examples)
and described in [Examples Index](https://github.nrel.io/floris/examples).
[repository](https://github.com/NREL/floris/tree/main/examples). Examples are also listed
in the [online documentation](https://nrel.github.io/floris/examples/001_opening_floris_computing_power.html).

## Engaging on GitHub

Expand Down
6 changes: 3 additions & 3 deletions docs/empirical_gauss_model.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,10 +172,10 @@ The effect of AWC is represented by updating the
wake-induced mixing term as follows:

$$ \text{WIM}_j = \sum_{i \in T^{\text{up}}(j)} \frac{A_{ij} a_i} {(x_j - x_i)/D_i} +
\frac{A_{\text{AWC},j}^{p_\text{AWC}}}{d_\text{AWC}}$$
\frac{\beta_{j}^{p}{d}$$

where $A_{\text{AWC},j}$ is the AWC amplitude of turbine $j$, and the exponent $p_\text{AWC}$ and
denominator $d_\text{AWC}$ are tuning parameters that can be set in the `emgauss.yaml` file with
where $\beta_{j}$ is the AWC amplitude of turbine $j$, and the exponent $p$ and
denominator $d$ are tuning parameters that can be set in the `emgauss.yaml` file with
the fields `awc_wake_exp` and `awc_wake_denominator`, respectively.
Note that, in contrast to the yaw added mixing case, a turbine currently affects _only_ its own
wake by applying AWC.
154 changes: 19 additions & 135 deletions docs/operation_models_user.ipynb

Large diffs are not rendered by default.

6 changes: 5 additions & 1 deletion docs/v3_to_v4.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,12 +108,16 @@ in v3. However, there are a few changes to the fields on each that mean that exi
will not run in v4 as is.

#### Main FLORIS input yaml
The only change in fields on the main FLORIS input file is that the `turbulence_intensity` field,
On the main FLORIS input file, the `turbulence_intensity` field (on`flow_field`),
which was specified as a scalar in FLORIS v3, has been changed to `turbulence_intensities`, and
should now contain a list of turbulence intensities that is of the same length as `wind_directions`
and `wind_speeds`. Additionally, the length of the lists for `wind_directions` and `wind_speeds`
_must_ now be of equal length.

In addition, a new field `enable_active_wake_mixing` has been added to the `wake` field,
which users may set to `false` unless they would like to use active wake mixing strategies such
as [Helix](empirical_gauss_model.md#Added-mixing-by-active-wake-control).

#### Turbine input yaml
To reflect the transition to more flexible [operation models](#operation-model), there are a
number of changes to the fields on the turbine yaml. The changes are mostly regrouping and
Expand Down
2 changes: 1 addition & 1 deletion examples/examples_control_types/002_disable_turbines.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""Example 001: Disable turbines
"""Example: Disabling turbines

This example is adapted from https://github.com/NREL/floris/pull/693
contributed by Elie Kadoche.
Expand Down
3 changes: 3 additions & 0 deletions floris/convert_floris_input_v3_to_v4.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,9 @@
)
v4_floris_input_dict["wake"]["model_strings"]["velocity_model"] = "gauss"

# Add enable_active_wake_mixing field
v4_floris_input_dict["wake"]["enable_active_wake_mixing"] = False

yaml.dump(
v4_floris_input_dict,
open(output_path, "w"),
Expand Down
Loading