-
Notifications
You must be signed in to change notification settings - Fork 156
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
Add super-Gaussian velocity model for vertical-axis wind turbines #700
Open
vallbog
wants to merge
38
commits into
NREL:develop
Choose a base branch
from
vallbog:feature/VAWT-super-Gaussian
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains 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_solver
andfull_flow_vawt_solver
are 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.py
shows 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.py
can 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.py
floris/simulation/solver.py