Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/dev' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
RyanDavies19 committed Sep 27, 2024
2 parents f4ba9ee + 14958ec commit 76dad55
Show file tree
Hide file tree
Showing 183 changed files with 23,027 additions and 4,872 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "reg_tests/r-test"]
path = reg_tests/r-test
url = https://github.com/OpenFAST/r-test.git
url = https://github.com/OpenFAST/r-test.git
2 changes: 2 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,7 @@ set(OPENFAST_MODULES
inflowwind
extloads
aerodyn
aerodisk
servodyn
elastodyn
beamdyn
Expand All @@ -209,6 +210,7 @@ set(OPENFAST_MODULES
supercontroller
externalinflow
openfast-library
simple-elastodyn
)

set(OPENFAST_REGISTRY_INCLUDES "" CACHE INTERNAL "Registry includes paths")
Expand Down
Binary file not shown.
Binary file modified docs/OtherSupporting/OutListParameters.xlsx
Binary file not shown.
19 changes: 19 additions & 0 deletions docs/source/user/aerodisk/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
.. _ADsk:

AeroDisk
========


This document describes the AeroDisk (ADsk) module.


.. only:: html


.. toctree::
:maxdepth: 2

input_files.rst

..
zrefs.rst
165 changes: 165 additions & 0 deletions docs/source/user/aerodisk/input_files.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
.. _adsk_input-files:

Input and Output Files
======================


Units
-----

AeroDisk uses the SI system (kg, m, s, N).

.. _adsk_input-file:

Input file
----------

The AeroDisk input file defines the general inputs required for the actuator
disk calculations. The following inputs may be changed by the user to achieve
the desired behaviour.

Simulation Control
~~~~~~~~~~~~~~~~~~

**echo** [switch]

Write the input file contents to a file <RootName>.ADsk.ech. This is useful
for diagnosing errors reported about the input file.

**DT** [seconds]

Integration time step for AeroDisk to use, or _"default"_ to use the glue code
time step.

Environmental Conditions
~~~~~~~~~~~~~~~~~~~~~~~~

**AirDens** [kg/m^3]

Air density, or _"default"_ to use the air density from the glue code

Actuator Disk Properties
~~~~~~~~~~~~~~~~~~~~~~~~

**RotorRad** [m]

Radius of the rotor, or _"default"_ to use the value passed from the glue
code

The lookup table for the disk actuator forces and moments follows. The data in
this table is flexible as it allows for a very simple lookup based on a single
variable (**TSR** for example), or up to four variables. The last six columns
of the table must include the six force and moment coefficients that correspond
to a set of conditions given in the first set of columns.

**InColNames** [-]

Comma separated List of column names corresponding to the variable columns in
the input file. See below for options.

**InColDims** [-]

Comma separted list of the number unique entries for each of the named
variable column names. The number of rows in the table must be equal to the
product of all numbers given. Must be the same number of entries as given in
**InColNames**


For the input variable columns in the table, at least one column must be given,
with a maximum of four of the five listed below (**TSR** and **RtSpd** are
mutually exclusive).

**TSR** [-]

Tip Speed Ratio, cannot be used with _RtSpd_

**RtSpd** [rpm]

Rotor speed, cannot be used with _TSR_

**VRel** [m/s]

Relative velocity of wind normal to rotor

**Pitch** [deg]

Collective blade pitch

**Skew** [deg]

Skew angle of inflow. If this is not provided, the affect of skew is modeled
as :math:`(cos(\chi))^2`


The remaining six columns of the table must contain the force and moment
coefficents. See the example table below.



Sample input file
~~~~~~~~~~~~~~~~~

Note that the table given below is for illustration of the format and does not
represent any particular turbine.

.. code::
--- AERO DISK INPUT FILE -------
Sample actuator disk input file
--- SIMULATION CONTROL ---------
FALSE echo - Echo input data to "<RootName>.ADsk.ech" (flag)
"default" DT - Integration time step (s)
--- ENVIRONMENTAL CONDITIONS ---
1.225 AirDens - Air density (kg/m^3) (or "default")
--- ACTUATOR DISK PROPERTIES ---
63.0 RotorRad - Rotor radius (m) (or "default")
"RtSpd,VRel" InColNames - Input column headers (string) {may include a combination of "TSR, RtSpd, VRel, Pitch, Skew"} (up to 4 columns) [choose TSR or RtSpd,VRel; if Skew is absent, Skew is modeled as (COS(Skew))^2]
9,2 InColDims - Number of unique values in each column (-) (must have same number of columns as InColName) [each >=2]
RtSpd VRel C_Fx C_Fy C_Fz C_Mx C_My C_Mz
(rpm) (m/s) (-) (-) (-) (-) (-) (-)
3.0 9.0 0.2347 0.0 0.0 0.0306 0.0 0.0
4.0 9.0 0.2349 0.0 0.0 0.0314 0.0 0.0
5.0 9.0 0.2350 0.0 0.0 0.0322 0.0 0.0
6.0 9.0 0.2351 0.0 0.0 0.0330 0.0 0.0
7.0 9.0 0.2352 0.0 0.0 0.0338 0.0 0.0
8.0 9.0 0.2352 0.0 0.0 0.0346 0.0 0.0
9.0 9.0 0.2351 0.0 0.0 0.0353 0.0 0.0
10.0 9.0 0.2350 0.0 0.0 0.0361 0.0 0.0
11.0 9.0 0.2349 0.0 0.0 0.0368 0.0 0.0
3.0 12.0 0.7837 0.0 0.0 0.0663 0.0 0.0
4.0 12.0 0.7733 0.0 0.0 0.0663 0.0 0.0
5.0 12.0 0.7628 0.0 0.0 0.0663 0.0 0.0
6.0 12.0 0.7520 0.0 0.0 0.0662 0.0 0.0
7.0 12.0 0.7409 0.0 0.0 0.0660 0.0 0.0
8.0 12.0 0.7297 0.0 0.0 0.0658 0.0 0.0
9.0 12.0 0.7182 0.0 0.0 0.0656 0.0 0.0
10.0 12.0 0.7066 0.0 0.0 0.0653 0.0 0.0
11.0 12.0 0.6947 0.0 0.0 0.0649 0.0 0.0
--- OUTPUTS --------------------
OutList - The next line(s) contains a list of output parameters. See OutListParameters.xlsx for a listing of available output channels, (-)
END of input file (the word "END" must appear in the first 3 columns of this last OutList line)
--------------------------------
.. _adsk_outputs:

Outputs
-------

The write outputs are:
- "ADSpeed": Actuator disk rotational speed (rpm)
- "ADTSR": Actuator disk tip-speed ratio (-)
- "ADPitch": Actuator-disk collective blade-pitch angle (deg)
- "ADVWindx, ADVWindy, ADVWindz": Actuator-disk-averaged wind velocity in the local coordinate system (m/s)
- "ADSTVx, ADSTVy, ADSTVz": Actuator-disk structural translational velocity in the local coordinate system (m/s)
- "ADVRel": Actuator-disk-averaged relative wind speed (m/s)
- "ADSkew": Actuator-disk inflow-skew angle (deg)
- "ADCp, ADCt, ADCq": Actuator-disk power, thrust, and torque coefficients (-)
- "ADFx, ADFy, ADFz": Actuator disk aerodynamic force loads in the local coordinate system (N)
- "ADMx, ADMy, ADMz": Actuator disk aerodynamic moment loads in the local coordinate system (N-m)
- "ADPower": Actuator disk power (W)

4 changes: 2 additions & 2 deletions docs/source/user/aerodyn-aeroacoustics/02-noise-models.rst
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,8 @@ The formulations of :math:`{\overline{D}}_{h}\ `\ and
:math:`{\overline{D}}_{l}` are presented in :numref:`aa-directivity`.

The current implementation offers two approaches to estimate
:math:`I_{1}`. The first one is through a user-defined grid of
:math:`I_{1}`; see :numref:`aa-sec-TIgrid`. The second option is to have the code
:math:`I_{1}`. The first one is through a user-defined :math:`I_{1}`.
The second option is to have the code
reconstructing :math:`I_{1}` from the turbulent wind grid, where the
code computes the airfoil relative position of each blade section,
:math:`i`, at every time instant and, given the rotor speed,
Expand Down
39 changes: 7 additions & 32 deletions docs/source/user/aerodyn-aeroacoustics/App-usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,14 @@ models:

- **TICalcMeth** – Integer 1/2: flag to set the calculation method for the
incident turbulence intensity. When set to 1, incident turbulence intensity is
defined in a user-defined grid; see :numref:`aa-sec-TIgrid`. When set to
2, incident turbulence intensity is estimated from the time history of the
incident flow.
user-defined. When set to 2, incident turbulence intensity is
estimated from the time history of the incident flow.

- **TICalcTabFile** – String: name of the text file with the user-defined
turbulence intensity grid; see :numref:`aa-sec-TIgrid`.
- **TI** – Float: user-defined value of :math:`TI`, which is the rotor-incident
turbulence intensity used in the Amiet model.

- **avgV** – Float: value of the average wind speed used to scale :math:`TI`
and convert it to a blade section incident turbulence intensity.

- **Lturb** – Float: value of :math:`L_{turb}` used to estimate the turbulent
lengthscale used in the Amiet model.
Expand Down Expand Up @@ -255,32 +257,5 @@ is shown here:
:language: none


.. _aa-sec-TIgrid:

Turbulence Grid
---------------

When the flag **TICalcMeth** is set equal to 1, the grid of turbulence
intensity of the wind :math:`TI` must be defined by the user. This is
done by creating a file called **TIGrid_In.txt**, which mimics a TurbSim
output file and contains a grid of turbulence intensity, which is
defined as a fraction value. The file defines a grid centered at hub
height and oriented with the OpenFAST global inertial frame coordinate
system; see :numref:`aa-fig:ObsRefSys`. A user-defined number of lateral and vertical
points equally spaced by a user-defined number of meters must be
specified. Note that an average wind speed must be defined to convert
the turbulence intensity of the wind to the incident turbulent intensity :math:`I_{1}`.
An example file for a 160 (lateral) by 180 (vertical) meters
grid looks like the following:


.. container::
:name: aa-tab:TIgrid

.. literalinclude:: example/TIGrid.txt
:linenos:
:language: none


.. [4]
https://github.com/OpenFAST/python-toolbox
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@ False Echo - Echo the input to "<rootname>.AD.NN.ech"? (flag)
====== Aeroacoustic Models ============================================================================
2 TIMod - Turbulent Inflow noise model {0: none, 1: Amiet 2: Amiet + Simplified Guidati} (switch)
1 TICalcMeth - Method to estimate turbulence intensity incident to the profile {1: given table, 2: computed on the fly} (switch) [Only used if TIMod!=0]
"TIGrid_InVerify.txt" TICalcTabFile - Name of the file containing the table for incident turbulence intensity (-) [Only used if TiCalcMeth == 1]
0.5 SurfRoughness- Surface roughness value used to estimate the turbulent length scale in Amiet model (m)
0.1 TI - Rotor-incident wind turbulence intensity (-) [Only used if TiCalcMeth == 1]
8 avgV - Average wind speed used to compute the section-incident turbulence intensity (m/s) [Only used if TiCalcMeth == 1]
40 Lturb - Turbulent length scale in Amiet model (m) [Only used if TIMod!=0]
1 TBLTEMod - Turbulent Boundary Layer-Trailing Edge noise calculation {0: none, 1:BPM, 2: TNO} (switch)
1 BLMod - Calculation method for boundary layer properties, {1: BPM, 2: Pretabulated} (switch)
1 TripMod - Boundary layer trip model {0:no trip, 1: heavy trip, 2: light trip} (switch) [Only used if BLMod=1]
Expand All @@ -18,9 +19,6 @@ False Echo - Echo the input to "<rootname>.AD.NN.ech"? (flag)
True RoundedTip - Logical indicating rounded tip (flag) [Only used if TipMod=1]
1.0 Alprat - Tip lift curve slope (Default = 1.0) [Only used if TipMod=1]
0 BluntMod - Trailing-edge-bluntness – Vortex-shedding model {0:none, 1: BPM} (switch)
"AABlade1.dat" AABlFile(1) - Name of file containing distributed aerodynamic properties for Blade #1 (-)
"AABlade1.dat" AABlFile(2) - Name of file containing distributed aerodynamic properties for Blade #2 (-)
"AABlade1.dat" AABlFile(3) - Name of file containing distributed aerodynamic properties for Blade #3 (-)
====== Observer Input ===================================================================
"AA_ObserverLocations.dat" ObserverLocations - Name of file containing all observer locations X Y Z (-)
====== Outputs ====================================================================================
Expand Down
1 change: 1 addition & 0 deletions docs/source/user/aerodyn-aeroacoustics/example/AeroDyn.ipt
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ False TwrAero - Calculate tower aerodynamic loads? (flag)
False FrozenWake - Assume frozen wake during linearization? (flag
False CavitCheck - Perform cavitation check? (flag)
False Buoyancy - Include buoyancy effects? (flag)
False NacelleDrag - Include Nacelle Drag effects? (flag)
True CompAA - Flag to compute AeroAcoustics calculation
"AeroAcousticsInput.dat" AA_InputFile
====== Environmental Conditions ==========================================
Expand Down
13 changes: 0 additions & 13 deletions docs/source/user/aerodyn-aeroacoustics/example/TIGrid.txt

This file was deleted.

6 changes: 5 additions & 1 deletion docs/source/user/aerodyn/ADNodalOutputs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,11 @@ are 0 through the number of blades AeroDyn is modeling. If the value is set to
1, only blade 1 will be output, and if the value is 2, blades 1 and 2 will be
output.

**BldNd_BlOutNd** specifies which nodes to output. This is currently unused.
**BldNd_BlOutNd** specifies which nodes to output (on all blades selected for
output). Valid entries are "ALL" (all blade nodes), "TIP" (only the last blade
node), "ROOT", (only the first blade node), or a list of numbers corresponding
to the node to output; valid numbers are 1 through the number of blade nodes
AeroDyn is modeling on each blade.

The **OutList** section controls the nodal output quantities generated by
AeroDyn. In this section, the user specifies the name of the channel family to
Expand Down
2 changes: 1 addition & 1 deletion docs/source/user/aerodyn/appendix.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ outside of OpenFAST.
3) AeroDyn Primary Input File
:download:`(primary input file example) <examples/ad_primary_example.dat>`:

The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal discretization and properties, tower, hub, and nacelle buoyancy properties, as well as output file specifications.
The primary AeroDyn input file defines modeling options, environmental conditions (except freestream flow), airfoils, tower nodal discretization and properties, tower, hub, and nacelle properties, as well as output file specifications.

The file is organized into several functional sections. Each section corresponds to an aspect of the aerodynamics model.

Expand Down
28 changes: 17 additions & 11 deletions docs/source/user/aerodyn/driver.rst
Original file line number Diff line number Diff line change
Expand Up @@ -375,24 +375,30 @@ An example is given below for two turbines, the first one having 3 blades, the s
**Hub and nacelle inputs**

The sections defining the hub and nacelle buoyancy parameters must also be reproduced for each turbine.
The sections defining the hub and nacelle parameters must also be reproduced for each turbine.

An example is given below for two turbines:

.. code::
====== Hub Properties ============================================================================== [used only when Buoyancy=True]
7.0 VolHub - Hub volume (m^3)
0.0 HubCenBx - Hub center of buoyancy x direction offset (m)
7.0 VolHub - Hub volume (m^3)
0.0 HubCenBx - Hub center of buoyancy x direction offset (m)
====== Hub Properties ============================================================================== [used only when Buoyancy=True]
5.0 VolHub - Hub volume (m^3)
0.2 HubCenBx - Hub center of buoyancy x direction offset (m)
====== Nacelle Properties ========================================================================== [used only when Buoyancy=True]
32.0 VolNac - Nacelle volume (m^3)
0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m)
====== Nacelle Properties ========================================================================== [used only when Buoyancy=True]
30.0 VolNac - Nacelle volume (m^3)
0.5, 0.1, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m)
5.0 VolHub - Hub volume (m^3)
0.2 HubCenBx - Hub center of buoyancy x direction offset (m)
====== Nacelle Properties ========================================================================== [used only when Buoyancy=True or NacelleDrag=True]
32.0 VolNac - Nacelle volume (m^3)
0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m)
4.67, 20.15, 20.15 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2)
0.5, 0.5, 0.5 NacCd - Drag coefficient for the nacelle areas defined above (-)
0.43, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m)
====== Nacelle Properties ========================================================================== [used only when Buoyancy=True or NacelleDrag=True]
32.0 VolNac - Nacelle volume (m^3)
0.3, 0.0, 0.05 NacCenB - Position of nacelle center of buoyancy from yaw bearing in nacelle coordinates (m)
4.67, 20.15, 20.15 NacArea - Projected area of the nacelle in X, Y, Z in the nacelle coordinate system (m^2)
0.5, 0.5, 0.5 NacCd - Drag coefficient for the nacelle areas defined above (-)
0.43, 0, 0 NacDragAC - Position of aerodynamic center of nacelle drag in nacelle coordinates (m)
**Aerodynamic tower inputs**
Expand Down
4 changes: 2 additions & 2 deletions docs/source/user/aerodyn/examples/NodalOutputs.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
END of input file (the word "END" must appear in the first 3 columns of this last OutList line)
---------------------- NODE OUTPUTS --------------------------------------------
3 BldNd_BladesOut - Blades to output
99 BldNd_BlOutNd - Blade nodes on each blade (currently unused)
3 BldNd_BladesOut - Number of blades to output all node information at. Up to number of blades on turbine. (-)
"ALL" BldNd_BlOutNd - Specify a portion of the nodes to output. {"ALL", "Tip", "Root", or a list of node numbers} (-)
OutList - The next line(s) contains a list of output parameters. See OutListParameters.xlsx, AeroDyn_Nodes tab for a listing of available output channels, (-)
"VUndx" - x-component of undisturbed wind velocity at each node
"VUndy" - y-component of undisturbed wind velocity at each node
Expand Down
Loading

0 comments on commit 76dad55

Please sign in to comment.