-
Notifications
You must be signed in to change notification settings - Fork 40
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7361098
commit 16b528f
Showing
12 changed files
with
4,270 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,168 @@ | ||
general: | ||
folder_output: outputs | ||
fname_output: refturb_output | ||
optimization_variables: | ||
blade: | ||
aero_shape: | ||
twist: | ||
flag: False # Flag to optimize the twist | ||
inverse: False # Flag to determine twist from the user-defined desired margin to stall (defined in constraints) | ||
n_opt: 8 # Number of control points along blade span | ||
lower_bound: [0.3490658503988659, 0.08726646259971647, 0.08726646259971647, 0., -0.08726646259971647, -0.08726646259971647, -0.08726646259971647, -0.08726646259971647] # Lower bounds for the twist in [rad] at the n_opt locations | ||
upper_bound: [0.4363323129985824, 0.3490658503988659, 0.3490658503988659, 0.2617993877991494, 0.2617993877991494, 0.17453292519943295, 0.17453292519943295, 0.08726646259971647] # Upper bounds for the twist in [rad] at the n_opt locations | ||
chord: | ||
flag: False # Flag to optimize the chord | ||
n_opt: 8 # Number of control points along blade span | ||
min_gain: 0.2 # Nondimensional lower bound at the n_opt locations | ||
max_gain: 2.0 # Nondimensional upper bound at the n_opt locations | ||
af_positions: | ||
flag: False # Flag to optimize the airfoil positions | ||
af_start: 4 # Index of the first airfoil from blade root that can have the location optimized. First airfoil is number 0. Last airfoil is always locked at blade tip. | ||
structure: | ||
spar_cap_ss: | ||
flag: False # Flag to optimize the spar cap thickness on the suction side | ||
name: Spar_Cap_SS # Name in the yaml of the spar cap laminate on the suction side | ||
n_opt: 8 # Number of control points along blade span | ||
min_gain: 0.2 # Nondimensional lower bound at the n_opt locations | ||
max_gain: 2.0 # Nondimensional upper bound at the n_opt locations | ||
spar_cap_ps: | ||
flag: False # Flag to optimize the spar cap thickness on the pressure side | ||
name: Spar_Cap_PS # Name in the yaml of the spar cap laminate on the pressure side | ||
equal_to_suction: True # Flag to impose the spar cap thickness on pressure and suction sides equal | ||
n_opt: 8 # Number of control points along blade span | ||
min_gain: 0.2 # Nondimensional lower bound at the n_opt locations | ||
max_gain: 2.0 # Nondimensional upper bound at the n_opt locations | ||
te_ss: | ||
flag: False # Flag to optimize the trailing edge reinforcement thickness on the suction side | ||
name: TE_reinforcement # Name in the yaml of the trailing edge reinforcement laminate on the suction side | ||
n_opt: 8 # Number of control points along blade span | ||
min_gain: 0.2 # Nondimensional lower bound at the n_opt locations | ||
max_gain: 2.0 # Nondimensional upper bound at the n_opt locations | ||
te_ps: | ||
flag: False # Flag to optimize the trailing edge reinforcement thickness on the pressure side | ||
name: TE_reinforcement # Name in the yaml of the trailing edge reinforcement laminate on the pressure side | ||
n_opt: 8 # Number of control points along blade span | ||
min_gain: 0.2 # Nondimensional lower bound at the n_opt locations | ||
max_gain: 2.0 # Nondimensional upper bound at the n_opt locations | ||
dac: | ||
te_flap_ext: | ||
flag: False | ||
min_ext: 0.0 | ||
max_ext: 0.3 | ||
te_flap_end: | ||
flag: False | ||
min_end: 0.3 | ||
max_end: 1.0 | ||
control: | ||
tsr: | ||
flag: False # Flag to optimize the rotor tip speed ratio | ||
min_gain: 0.9 # Nondimensional lower bound | ||
max_gain: 1.1 # Nondimensional upper bound | ||
servo: | ||
pitch_control: | ||
flag: False | ||
omega_min: 0.1 | ||
omega_max: 0.7 | ||
zeta_min: 0.4 | ||
zeta_max: 1.5 | ||
torque_control: | ||
flag: False | ||
omega_min: 0.1 | ||
omega_max: 0.7 | ||
zeta_min: 0.4 | ||
zeta_max: 1.5 | ||
flap_control: | ||
flag: False | ||
omega_min: 2.7 | ||
omega_max: 3.5 | ||
zeta_min: 0.7 | ||
zeta_max: 1.3 | ||
|
||
tower: | ||
outer_diameter: | ||
flag: False | ||
lower_bound: 3.87 | ||
upper_bound: 10.0 | ||
layer_thickness: | ||
flag: False | ||
lower_bound: 4e-3 | ||
upper_bound: 2e-1 | ||
|
||
merit_figure: LCOE # Merit figure of the optimization problem. The options are 'AEP' - 'LCOE' - 'Cp' - 'blade_mass' - 'blade_tip_deflection' | ||
|
||
constraints: | ||
blade: | ||
strains_spar_cap_ss: | ||
flag: False # Flag to impose constraints on maximum strains (absolute value) in the spar cap on the blade suction side | ||
max: 3500.e-6 # Value of maximum strains [-] | ||
strains_spar_cap_ps: | ||
flag: False # Flag to impose constraints on maximum strains (absolute value) in the spar cap on the blade pressure side | ||
max: 3500.e-6 # Value of maximum strains [-] | ||
tip_deflection: | ||
flag: False # Constraint that maximum tip deflection cannot exceed 70% of tower clearance. Only for upwind rotors | ||
rail_transport: | ||
flag: True | ||
8_axle: False | ||
4_axle: True | ||
stall: | ||
flag: False # Constraint on minimum stall margin | ||
margin: 0.05233 # Value of minimum stall margin in [rad] | ||
chord: | ||
flag: False # Constraint on maximum chord | ||
max: 4.75 # Value of maximum chord in [m] | ||
frequency: | ||
flap_above_3P: False | ||
edge_above_3P: False | ||
flap_below_3P: False | ||
edge_below_3P: False | ||
moment_coefficient: | ||
flag: False | ||
max: 0.15 #0.16333 | ||
min: 0.13 | ||
match_cl_cd: | ||
flag_cl: False | ||
flag_cd: False | ||
filename: /path2file.txt | ||
match_L_D: | ||
flag_L: False | ||
flag_D: False | ||
filename: /path2file.txt | ||
tower: | ||
height_constraint: | ||
flag: False | ||
lower_bound: 1.e-2 | ||
upper_bound: 1.e-2 | ||
stress: | ||
flag: False | ||
global_buckling: | ||
flag: False | ||
shell_buckling: | ||
flag: False | ||
constr_d_to_t: | ||
flag: False | ||
constr_taper: | ||
flag: False | ||
slope: | ||
flag: False | ||
frequency_1: | ||
flag: False | ||
lower_bound: 0.13 | ||
upper_bound: 0.40 | ||
control: | ||
flap_control: | ||
flag: False | ||
min: 0.0 | ||
max: 0.1 | ||
|
||
driver: | ||
tol: 1.e-2 # Optimality tolerance | ||
max_major_iter: 10 # Maximum number of major design iterations (SNOPT) | ||
max_minor_iter: 100 # Maximum number of minor design iterations (SNOPT) | ||
max_iter: 100 # Maximum number of iterations (SLSQP) | ||
solver: SLSQP # Optimization solver. Other options are 'SLSQP' - 'CONMIN' | ||
step_size: 1.e-3 # Step size for finite differencing | ||
form: central # Finite differencing mode, either forward or central | ||
|
||
recorder: | ||
flag: True # Flag to activate OpenMDAO recorder | ||
file_name: log_opt.sql # Name of OpenMDAO recorder |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
general: | ||
verbosity: False # When set to True, the code prints to screen many infos | ||
|
||
Analysis_Flags: | ||
# Control which WISDEM modules are executed. | ||
# (GOAL) If inputs are missing for a module, a warning will be written to the screen and the module disabled. | ||
RotorSE: True | ||
DriveSE: True | ||
TowerSE: True | ||
ServoSE: True | ||
BOS: True | ||
OpenFAST: False # Flag to run aeroelasticse, the wrapper of OpenFAST | ||
|
||
yaml: | ||
validate: False # When set to True, the code runs a yam validation package. This checks whether the yams has the right formatting. | ||
path2schema: windIO/windIO/turbine/IEAontology_schema.yaml # Path to the yams schema to run the validation | ||
|
||
xfoil: | ||
path : Xfoil/bin/xfoil # Path to xfoil executable. Only used for blades with distributed aerodynamic control devices | ||
run_parallel: True | ||
|
||
rotorse: | ||
n_aoa: 200 # Number of angles of attack used to define polars | ||
n_xy: 200 # Number of angles of coordinate points used to discretize each airfoil | ||
n_span: 30 # Number of spanwise stations used to define the blade properties | ||
|
||
openfast: | ||
analysis_settings: | ||
Analysis_Level: 1 # Flag to set the call to OpenFAST. 1 - generate OpenFAST model, 2 - generate and run OpenFAST model | ||
update_hub_nacelle: False | ||
update_tower: False | ||
generate_af_coords: False | ||
debug_level: 2 # Flag to set the debug level, do not change | ||
file_management: | ||
FAST_ver: OpenFAST # Version of OpenFAST, do not change | ||
FAST_exe: ../../local/bin/openfast # Path to OpenFAST executable | ||
FAST_directory: ../IEA-15-240-RWT/IEA-15-240-RWT-Monopile/" # Path to folder with the OpenFAST input files | ||
FAST_InputFile: IEA-15-240-RWT-Monopile.fst # Name of the main OpenFAST input file (.fst) | ||
path2dll: ../../local/lib/libdiscon.dylib # Path to the the compiled ROSCO controller | ||
Turbsim_exe: ../../local/bin/openfast # Path to TurbSim executable | ||
FAST_namingOut: Testing_v2 # Name of the OpenFAST output files | ||
FAST_runDirectory: temp/Testing_v2 # Path to folder with the OpenFAST output files | ||
Simulation_Settings_File: openfast_settings.yaml | ||
dlc_settings: | ||
run_power_curve: False | ||
run_IEC: False | ||
run_blade_fatigue: False | ||
IEC: # Currently supported: 1.1, 1.3, 1.4, 1.5, 5.1, 6.1, 6.3 | ||
- DLC: 1.1 | ||
U: [3., 5., 7., 9., 11., 13., 15., 17., 19., 21., 23., 25.] | ||
Seeds: [11, 12, 13] | ||
# - DLC: 1.3 | ||
# U: [3., 5., 7., 9., 11., 13., 15., 17., 19., 21., 23., 25.] | ||
# Seeds: [11, 12, 13, 14, 15, 16] | ||
# - DLC: 1.4 | ||
# - DLC: 1.5 | ||
# U: [3., 5., 7., 9., 11., 13., 15., 17., 19., 21., 23., 25.] | ||
# Seeds: [11, 12, 13, 14, 15, 16] | ||
# - DLC: 5.1 | ||
# Seeds: [11, 12, 13, 14, 15, 16] | ||
# - DLC: 6.1 | ||
# Seeds: [11, 12, 13, 14, 15, 16] | ||
# - DLC: 6.3 | ||
# Seeds: [11, 12, 13, 14, 15, 16] | ||
Power_Curve: | ||
# Note: if running turbulent power curve, can set U:[], and analysis will default to using the IEC - DLC 1.1 results. This can be used to prevent running redundant turbulent operational cases | ||
turbulent_power_curve: True # False: Steady Wind, True: Turbulent Inflow | ||
# U: [3., 5., 7., 9., 11., 13., 15., 17., 19., 21., 23., 25.] | ||
# Seeds: [11, 12, 13, 14, 15, 16] # Used only when turbulent_power_curve=True | ||
# U: [3., 9., 11., 15.] | ||
# Seeds: [11, 12] # Used only when turbulent_power_curve=True | ||
U: [] | ||
Seeds: [] | ||
|
||
|
||
tower: # Options of TowerSE module | ||
nLC: 1 # Number of design load cases in TowerSE | ||
wind: PowerWind # Wind used in TowerSE | ||
gamma_f: 1.35 # Safety factor for fatigue loads in TowerSE | ||
gamma_m: 1.3 # Safety factor for material properties in TowerSE | ||
gamma_n: 1.0 # Safety factor for ... | ||
gamma_b: 1.1 # Safety factor for ... | ||
gamma_fatigue: 1.9305 # Safety factor for fatigue loads in TowerSE | ||
buckling_length: 30 # Buckling parameter in TowerSE | ||
frame3dd: | ||
DC: 80.0 # Options of beam solver frame3dd | ||
shear: True | ||
geom: True | ||
dx: 5.0 | ||
nM: 2 | ||
Mmethod: 1 | ||
lump: 0 | ||
tol: 1e-9 | ||
shift: 0.0 | ||
add_gravity: True | ||
|
||
servose: | ||
n_pc: 20 # Number of wind speeds to compute the power curve | ||
n_pc_spline: 200 # Number of wind speeds to spline the power curve | ||
n_pitch_perf_surfaces: 20 # Number of pitch angles to determine the Cp-Ct-Cq-surfaces | ||
min_pitch_perf_surfaces: -5. # Min pitch angle of the Cp-Ct-Cq-surfaces | ||
max_pitch_perf_surfaces: 30. # Max pitch angle of the Cp-Ct-Cq-surfaces | ||
n_tsr_perf_surfaces: 20 # Number of tsr values to determine the Cp-Ct-Cq-surfaces | ||
min_tsr_perf_surfaces: 2. # Min TSR of the Cp-Ct-Cq-surfaces | ||
max_tsr_perf_surfaces: 12. # Max TSR of the Cp-Ct-Cq-surfaces | ||
n_U_perf_surfaces: 1 # Number of wind speeds to determine the Cp-Ct-Cq-surfaces | ||
regulation_reg_III: False # Flag to derive the regulation trajectory in region III in terms of pitch and TSR | ||
LoggingLevel: 1 # {0: write no debug files, 1: write standard output .dbg-file, 2: write standard output .dbg-file and complete avrSWAP-array .dbg2-file | ||
F_LPFType: 2 # {1: first-order low-pass filter, 2: second-order low-pass filter}, [rad/s] (currently filters generator speed and pitch control signals) | ||
F_NotchType: 0 # Notch filter on generator speed and/or tower fore-aft motion (for floating) {0: disable, 1: generator speed, 2: tower-top fore-aft motion, 3: generator speed and tower-top fore-aft motion} | ||
IPC_ControlMode: 0 # Turn Individual Pitch Control (IPC) for fatigue load reductions (pitch contribution) {0: off, 1: 1P reductions, 2: 1P+2P reductions} | ||
VS_ControlMode: 2 # Generator torque control mode in above rated conditions {0: constant torque, 1: constant power, 2: TSR tracking PI control} | ||
PC_ControlMode: 1 # Blade pitch control mode {0: No pitch, fix to fine pitch, 1: active PI blade pitch control} | ||
Y_ControlMode: 0 # Yaw control mode {0: no yaw control, 1: yaw rate control, 2: yaw-by-IPC} | ||
SS_Mode: 1 # Setpoint Smoother mode {0: no setpoint smoothing, 1: introduce setpoint smoothing} | ||
WE_Mode: 0 # Wind speed estimator mode {0: One-second low pass filtered hub height wind speed, 1: Immersion and Invariance Estimator (Ortega et al.)} | ||
PS_Mode: 0 # Pitch saturation mode {0: no pitch saturation, 1: peak shaving, 2: Cp-maximizing pitch saturation, 3: peak shaving and Cp-maximizing pitch saturation} | ||
SD_Mode: 0 # Shutdown mode {0: no shutdown procedure, 1: pitch to max pitch at shutdown} | ||
Fl_Mode: 0 # Floating specific feedback mode {0: no nacelle velocity feedback, 1: nacelle velocity feedback} | ||
Flp_Mode: 0 # Flap control mode {0: no flap control, 1: steady state flap angle, 2: Proportional flap control} |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# Variables are case sensitive. | ||
[Fst, TStart] : 120. | ||
[Fst, TMax] : 720. | ||
# [Fst, TStart] : 0. | ||
# [Fst, TMax] : 40. | ||
[Fst, OutFileFmt] : 2 | ||
[Fst, DT] : 0.025 | ||
|
||
[ServoDyn, DLL_DT] : 0.025 | ||
|
||
[AeroDyn15, TwrPotent] : 0 | ||
[AeroDyn15, TwrShadow] : False | ||
[AeroDyn15, TwrAero] : False | ||
|
||
[Fst, CompElast] : 1 | ||
[Fst, CompSub] : 0 | ||
[ElastoDyn, PtfmSgDOF] : False | ||
[ElastoDyn, PtfmSwDOF] : False | ||
[ElastoDyn, PtfmHvDOF] : False | ||
[ElastoDyn, PtfmRDOF] : False | ||
[ElastoDyn, PtfmPDOF] : False | ||
[ElastoDyn, PtfmYDOF] : False | ||
|
||
[ElastoDyn, FlapDOF1] : True | ||
[ElastoDyn, FlapDOF2] : True | ||
[ElastoDyn, EdgeDOF] : True |
Oops, something went wrong.