actuator
actuator
subsection defines the inputs for actuator line simulations. A sample section is shown below for running actuator line simulations coupled to OpenFAST with two turbines.
actuator:
type: ActLineFAST
search_method: stk_kdtree
search_target_part: Unspecified-2-HEX
n_turbines_glob: 2
dry_run: False
debug: False
t_start: 0.0
simStart: init # init/trueRestart/restartDriverInitFAST
t_max: 5.0
n_every_checkpoint: 100
Turbine0:
procNo: 0
num_force_pts_blade: 50
num_force_pts_tower: 20
nacelle_cd: 1.0
nacelle_area: 1.0
air_density: 1.225
epsilon: [ 5.0, 5.0, 5.0 ]
turbine_base_pos: [ 0.0, 0.0, -90.0 ]
turbine_hub_pos: [ 0.0, 0.0, 0.0 ]
restart_filename: ""
FAST_input_filename: "Test01.fst"
turb_id: 1
turbine_name: machine_zero
Turbine1:
procNo: 0
num_force_pts_blade: 50
num_force_pts_tower: 20
nacelle_cd: 1.0
nacelle_area: 1.0
air_density: 1.225
epsilon: [ 5.0, 5.0, 5.0 ]
turbine_base_pos: [ 250.0, 0.0, -90.0 ]
turbine_hub_pos: [ 250.0, 0.0, 0.0 ]
restart_filename: ""
FAST_input_filename: "Test02.fst"
turb_id: 2
turbine_name: machine_one
actuator.type
Type of actuator source. Options are ActLineFAST
and ActDiskFAST
. ActLineFAST
is for actuator lines, and ActDiskFAST
is for actuator disks. The actuator disk uses a stationary actuator line model to compute forces at the blade locations and then the average force of the blades is spread azimuthally between the blades sampling points.
actuator.search_method
String specifying the type of search method used to identify the nodes within the search radius of the actuator points. The only valid option is stk_kdtree
. The boost_rtree
option has been deprecated by the STK search library.
search_target_part
String or an array of strings specifying the parts of the mesh to be searched to identify the nodes near the actuator points.
actuator.n_turbines_glob
Total number of turbines in the simulation. The input file must contain a number of turbine specific sections (Turbine0, Turbine1, ..., Turbine(n-1)) that is consistent with nTurbinesGlob.
actuator.debug
Enable debug outputs if set to true
actuator.dry_run
The simulation will not run if dryRun is set to true. However, the simulation will read the input files, allocate turbines to processors and prepare to run the individual turbine instances. This flag is useful to test the setup of the simulation before running it.
actuator.simStart
Flag indicating whether the simulation starts from scratch or restart. simStart
takes on one of three values:
init
- Use this option when starting a simulation from t=0s.trueRestart
- While OpenFAST allows for restart of a turbine simulation, external components like the Bladed style controller may not. Use this option when all components of the simulation are known to restart.restartDriverInitFAST
- When therestartDriverInitFAST
option is selected, the individual turbine models start from t=0s and run up to the specified restart time using the inflow data stored at the actuator nodes from a hdf5 file. The C++ API stores the inflow data at the actuator nodes in a hdf5 file at every OpenFAST time step and then reads it back when using this restart option. This restart option is especially useful when the glue code is a CFD solver.
actuator.t_start
Start time of the simulation
actuator.t_end
End time of the simulation. t_end
<= t_max
actuator.t_max
Max time of the simulation
Note
t_max
can only be set when OpenFAST is running from t=0s and simStart
is init
. t_max
can not be changed on a restart. OpenFAST will not be able to run beyond t_max
. Choose t_max
to be large enough to accomodate any possible future extensions of runs. One can change t_start
and t_end
to start and stop the simulation any number of times as long as t_end
<= t_max
.
actuator.dt_fast
Time step for OpenFAST. All turbines should have the same time step.
actuator.n_every_checkpoint
Restart files will be written every so many time steps
Turbine specific input options
actuator.turbine_base_pos
The position of the turbine base for actuator-line/disk simulations
actuator.num_force_pts_blade
The number of actuator points along each blade for actuator-line/disk simulations
actuator.num_force_pts_tower
The number of actuator points along the tower for actuator-line/disk simulations.
actuator.nacelle_cd
The drag coefficient for the nacelle. If this is set to zero, or not defined, the code will not implement the nacelle model.
actuator.nacelle_area
The reference area for the nacelle. This is only used if the nacelle model is used.
actuator.air_density
The air density. This is only used to compute the nacelle force. It should match the density being used in both Nalu and OpenFAST.
actuator.epsilon
The spreading width ϵ in the Gaussian spreading function in the [chordwise, thickness, spanwise] coordinate system to spread the forces from the actuator point to the nodes. In the case of the actuator disk, only the first value in the chordwise direction is used for the uniform isotropic Gaussian.
actuator.epsilon_chord
This is the ratio ϵ/c in every direction [chordwise, thickness, spanwise]. If this option is specified, the code will choose a value of ϵ at every location that is c * ϵ/c. To avoid numerical instabilities, the code will choose the maximum value between c * ϵ/c and the value of actuator.epsilon_min
specified.
actuator.epsilon_min
This is the minimum value of ϵ in the Gaussian spreading function in the [chordwise, thickness, spanwise] coordinate system to spread the forces from the actuator point to the nodes. This option is required if the option actuator.epsilon_chord
is specified.
actuator.epsilon_tower
The spreading width ϵ in the Gaussian spreading function in the inertial [x, y, z] reference frame. If this value is not speficied, then actuator.epsilon
or actuator.epsilon_min
will be used.
actuator.restart_filename
The checkpoint file for this turbine when restarting a simulation
actuator.FAST_input_filename
The FAST input file for this turbine
actuator.turb_id
A unique turbine id for each turbine
actuator.num_swept_pts
This is an optional parameter specifically for actuator disks. This parameter determines the number of points that are placed azimuthally between the actuator lines and spread the forcing over the disk's area. When num_swept_pts
is included the number of azimuthal points between the lines is forced to this value at all radial locations. If num_swept_pts
is omitted then the azimuthal sampling is computed automatically with different sampling at each radial location such that the average distance between points matches the radial spacing.