Add super-Gaussian velocity model for vertical-axis wind turbines#700
Closed
vallbog wants to merge 38 commits intoNatLabRockies:developfrom
Closed
Add super-Gaussian velocity model for vertical-axis wind turbines#700vallbog wants to merge 38 commits intoNatLabRockies:developfrom
vallbog wants to merge 38 commits intoNatLabRockies:developfrom
Conversation
Collaborator
|
Closing, see discussion in #701 regarding supporting VAWT modeling |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Super-Gaussian velocity model
This PR adds a super-Gaussian velocity model for vertical-axis wind turbines (VAWTs). The model is based on (Ouro & Lazennec, 2021) and allows the wake to have different characteristics in the cross-stream$y$ and vertical direction $z$ . This would be the first velocity model for VAWTs in FLORIS since all existing models are for traditional horizontal-axis wind turbines (HAWTs).
This is a part of a series of PRs (please see #701 for an overview). The focus of this PR is to correctly generate the velocity field behind a single VAWT using the new velocity model. Further infrastructure for VAWTs, e.g. for calculating turbine powers, are added in #701.
In addition to the super-Gaussian model, new solvers
vawt_solverandfull_flow_vawt_solverare added. No turbulence model is included in these since I don't know if existing turbulence models can be applied to VAWTs. A new example30_vertical_axis_turbine.pyshows a characteristic wake of a VAWT.Validation of the velocity model
Here we check if this FLORIS-implementation of the super-Gaussian model is correct. A validation script (link in the next section) recreates figures from (Ouro & Lazennec, 2021) showing velocity deficit profiles for 6 different cases (detailed in table 2 of the article mentioned). External Large Eddy Simulation (LES) data from (Shamsoddin & Porté-Agel, 2020) and (Abkar, 2019) is used as a reference.
One of the figures created by the validation script is shown below as an example. It shows velocity deficit profiles at five locations downstream of a single VAWT. For simplicity, one may think of the inflow as homogeneous. Coordinates$x/D$ , $y/D$ , and $z/D$ are in the streamwise, cross-stream, and vertical direction respectively, and normalized by the turbine diameter $D$ . The dashed lines show the extent of the turbine which has a height-to-diameter ratio of about 2 in this case. The red lines are generated by FLORIS and the black circles are external LES data. See #699 for details about how the velocity profiles figure is created in general.
The super-Gaussian model is in good agreeement with the LES data in the case shown above. However, compared to figure 9 in (Ouro & Lazennec, 2021), the FLORIS-implementation gives a slighly lower value of the maximum velocity deficits at$x/D$ = 3.0 and 6.0. This difference (in maximum normalized velocity deficit) is about 0.05 and it's among the largest differences observed between the FLORIS super-Gaussian implementation and the article super-Gaussian results in all 6 cases.
The reason for the difference above is unknown at the moment. I've double-checked the derivation of the model in the article, the implementation in FLORIS, and the model input parameters. Nevertheless, I believe that the results from the FLORIS-implementation are close enough.
Validation script
The validation script
validation/validate_super_gaussian_vawt.pycan be found in the branchvalidation/VAWT-super-Gaussian. It is only available to the FLORIS maintainers because I cannot share the LES data. However, all 6 figures created by the script can be found below:velocity_deficit_profiles.zip
Impacted areas of the software
Compared to #699, the main changes are in:
floris/simulation/wake_velocity/super_gaussian_vawt.pyfloris/simulation/solver.py