OpenFAST / openfast

Main repository for the NREL-supported OpenFAST whole-turbine and FAST.Farm wind farm simulation codes.
http://openfast.readthedocs.io
Apache License 2.0
654 stars 447 forks source link

Grid4DField_GetVel:Outside the grid bounds #2057

Closed ArnoldTUB closed 4 months ago

ArnoldTUB commented 4 months ago

Hello everyone!

I am trying to run a simulation FAST.Farm but end up receiving the following error:

T1:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
side the grid bounds.
T2:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
side the grid bounds.

T3:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
side the grid bounds.

I understand that there must be something wrong with how I set up the simulation grid but I have a hard time understanding what exactly causes this error, i.e., which of my input files needs to be updated. I also took a look at the Modeling Guidance section in the documentation but have a hard time to understand where I made a mistake regarding my input files.

Could you help me figuring out which parameters to adjust? Here are my primary FAST.Farm input file and my InflowWind file

threeTurbineCaseStudy.fstf (click to expand) ``` ------- FAST.Farm for OpenFAST INPUT FILE ------------------------------------------------- Simulation with three wind turbines, controlled by MPC --- SIMULATION CONTROL --- False Echo - Echo input data to .ech? (flag) FATAL AbortLevel - Error level when simulation should abort (string) {"WARNING", "SEVERE", "FATAL"} 300.0 TMax - Total run time (s) [>=0.0] True UseSC - Use a super controller? (flag) 2 Mod_AmbWind - Ambient wind model (-) (switch) {1: high-fidelity precursor in VTK format, 2: one InflowWind module, 3: multiple instances of InflowWind module} 1 Mod_WaveField - Wave field handling (-) (switch) {1: use individual HydroDyn inputs without adjustment, 2: adjust wave phases based on turbine offsets from farm origin} 0 Mod_SharedMooring - Shared mooring system model (switch) {0: None, 3=MoorDyn} --- SUPER CONTROLLER --- [used only for UseSC=True] "libMPC_SC.so" SC_FileName - Name/location of the dynamic library {.dll [Windows] or .so [Linux]} containing the Super Controller algorithms (quoted string) --- SHARED MOORING SYSTEM --- [used only for Mod_SharedMoor>0] "" SharedMoorFile - Name of file containing shared mooring system input parameters (quoted string) [used only when Mod_SharedMooring > 0] 0.04 DT_Mooring - Time step for farm-level mooring coupling with each turbine (s) [used only when Mod_SharedMooring > 0] --- AMBIENT WIND: PRECURSOR IN VTK FORMAT --- [used only for Mod_AmbWind=1] 1.0 DT_Low-VTK - Time step for low-resolution wind data input files; will be used as the global FAST.Farm time step (s) [>0.0] 0.1 DT_High-VTK - Time step for high-resolution wind data input files (s) [>0.0] "unused" WindFilePath - Path name to VTK wind data files from precursor (string) False ChkWndFiles - Check all the ambient wind files for data consistency? (flag) --- AMBIENT WIND: INFLOWWIND MODULE --- [used only for Mod_AmbWind=2 or 3] 1.0 DT_Low - Time step for low-resolution wind data interpolation; will be used as the global FAST.Farm time step (s) [>0.0] 0.1 DT_High - Time step for high-resolution wind data interpolation (s) [>0.0] 250 NX_Low - Number of low-resolution spatial nodes in X direction for wind data interpolation (-) [>=2] 260 NY_Low - Number of low-resolution spatial nodes in Y direction for wind data interpolation (-) [>=2] 23 NZ_Low - Number of low-resolution spatial nodes in Z direction for wind data interpolation (-) [>=2] -780 X0_Low - Origin of low-resolution spatial nodes in X direction for wind data interpolation (m) -650 Y0_Low - Origin of low-resolution spatial nodes in Y direction for wind data interpolation (m) 5 Z0_Low - Origin of low-resolution spatial nodes in Z direction for wind data interpolation (m) 10.0 dX_Low - Spacing of low-resolution spatial nodes in X direction for wind data interpolation (m) [>0.0] 10.0 dY_Low - Spacing of low-resolution spatial nodes in Y direction for wind data interpolation (m) [>0.0] 10.0 dZ_Low - Spacing of low-resolution spatial nodes in Z direction for wind data interpolation (m) [>0.0] 15 NX_High - Number of high-resolution spatial nodes in X direction for wind data interpolation (-) [>=2] 30 NY_High - Number of high-resolution spatial nodes in Y direction for wind data interpolation (-) [>=2] 15 NZ_High - Number of high-resolution spatial nodes in Z direction for wind data interpolation (-) [>=2] "InflowWind.dat" InflowFile - Name of file containing InflowWind module input parameters (quoted string) --- WIND TURBINES --- 3 NumTurbines Number of wind turbines (-) [>=1] [last 6 columns used only for Mod_AmbWind=2] WT_X WT_Y WT_Z WT_FASTInFile X0_High Y0_High Z0_High dX_High dY_High dZ_High (m) (m) (m) (string) (m) (m) (m) (m) (m) (m) 0.0 97.5 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC1.fst" -75.0 -52.5 5.0 10 10 10 0.0 -97.5 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC2.fst" -75.0 -247.5 5.0 10 10 10 910.0 0.0 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC3.fst" 835.0 -150.0 5.0 10 10 10 --- WAKE DYNAMICS --- 1 Mod_Wake - Switch between wake formulations {1:Polar, 2:Curl, 3:Cartesian} (-) (switch) 5.0 dr - Radial increment of radial finite-difference grid (m) [>0.0] 40 NumRadii - Number of radii in the radial finite-difference grid (-) [>=2] 136 NumPlanes - Number of wake planes (-) [>=2] DEFAULT f_c - Cutoff (corner) frequency of the low-pass time-filter for the wake advection, deflection, and meandering model [recommended=1.28*U0/R] (Hz) [>0.0] DEFAULT C_HWkDfl_O - Calibrated parameter in the correction for wake deflection defining the horizontal offset at the rotor (m) or DEFAULT [=0.0] DEFAULT C_HWkDfl_OY - Calibrated parameter in the correction for wake deflection defining the horizontal offset at the rotor scaled with yaw error (m/deg) or DEFAULT [=0.3] DEFAULT C_HWkDfl_x - Calibrated parameter in the correction for wake deflection defining the horizontal offset scaled with downstream distance (-) or DEFAULT [=0.0] DEFAULT C_HWkDfl_xY - Calibrated parameter in the correction for wake deflection defining the horizontal offset scaled with downstream distance and yaw error (1/deg) or DEFAULT [=-0.004] DEFAULT C_NearWake - Calibrated parameter for the near-wake correction (-) [>1. and <2.5] or DEFAULT [=1.8] DEFAULT k_vAmb - Calibrated parameter for the influence of ambient turbulence in the eddy viscosity (-) [>=0.0] or DEFAULT [=0.05] DEFAULT k_vShr - Calibrated parameter for the influence of the shear layer in the eddy viscosity (-) [>=0.0] or DEFAULT [=0.016] DEFAULT C_vAmb_DMin - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the transitional diameter fraction between the minimum and exponential regions (-) [>=0.0] or DEFAULT [=0.0] DEFAULT C_vAmb_DMax - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the transitional diameter fraction between the exponential and maximum regions (-) [> C_vAmb_DMin] or DEFAULT [=1.0] DEFAULT C_vAmb_FMin - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the value in the minimum region (-) [>=0.0 and <=1.0] or DEFAULT [=1.0] DEFAULT C_vAmb_Exp - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the exponent in the exponential region (-) [> 0.0] or DEFAULT [=0.01] DEFAULT C_vShr_DMin - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the transitional diameter fraction between the minimum and exponential regions (-) [>=0.0] or DEFAULT [=3.0] DEFAULT C_vShr_DMax - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the transitional diameter fraction between the exponential and maximum regions (-) [> C_vShr_DMin] or DEFAULT [=25.0] DEFAULT C_vShr_FMin - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the value in the minimum region (-) [>=0.0 and <=1.0] or DEFAULT [=0.2] DEFAULT C_vShr_Exp - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the exponent in the exponential region (-) [> 0.0] or DEFAULT [=0.1] DEFAULT Mod_WakeDiam - Wake diameter calculation model (-) (switch) {1: rotor diameter, 2: velocity based, 3: mass-flux based, 4: momentum-flux based} or DEFAULT [=1] DEFAULT C_WakeDiam - Calibrated parameter for wake diameter calculation (-) [>0.0 and <0.99] or DEFAULT [=0.95] [unused for Mod_WakeDiam=1] DEFAULT Mod_Meander - Spatial filter model for wake meandering (-) (switch) {1: uniform, 2: truncated jinc, 3: windowed jinc} or DEFAULT [=3] DEFAULT C_Meander - Calibrated parameter for wake meandering (-) [>=1.0] or DEFAULT [=1.9] --- CURLED-WAKE PARAMETERS [only used if Mod_Wake=2 or 3] --- True Swirl - Switch to include swirl velocities in wake [only used if Mod_Wake=2 or Mod_Wake=3] (-) (switch) [DEFAULT=TRUE] 0 k_VortexDecay - Vortex decay constant for curl (-) [DEFAULT=0] DEFAULT NumVortices - The number of vortices in the curled wake model (-) [DEFAULT=100] DEFAULT sigma_D - The width of the vortices in the curled wake model non-dimesionalized by rotor diameter (-) [DEFAULT=0.2] DEFAULT FilterInit - Switch to filter the initial wake plane deficit and select the number of grid points for the filter {0: no filter, 1: filter of size 1} or DEFAULT [DEFAULT=1] [unused for Mod_Wake=1] (switch) DEFAULT k_vCurl - Calibrated parameter for scaling the eddy viscosity in the curled-wake model (-) [only used if Mod_Wake=2 or Mod_Wake=3] [>=0] or DEFAULT [DEFAULT=2.0 ] DEFAULT Mod_Projection - Switch to select how the wake plane velocity is projected in AWAE {1: keep all components, 2: project against plane normal} or DEFAULT [DEFAULT=1: if Mod_Wake is 1 or 3, or DEFAULT=2: if Mod_Wake is 2] (switch) --- VISUALIZATION --- False WrDisWind - Write low- and high-resolution disturbed wind data to .Low.Dis.t.vtk etc. (flag) 1 NOutDisWindXY - Number of XY planes for output of disturbed wind data across the low-resolution domain to .Low.DisXY.t.vtk (-) [0 to 9] 90.0 OutDisWindZ - Z coordinates of XY planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindXY] [unused for NOutDisWindXY=0] 2 NOutDisWindYZ - Number of YZ planes for output of disturbed wind data across the low-resolution domain to /Low.DisYZ.t.vtk (-) [0 to 9] 600.0,978.0 OutDisWindX X - coordinates of YZ planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindYZ] [unused for NOutDisWindYZ=0] 1 NOutDisWindXZ - Number of XZ planes for output of disturbed wind data across the low-resolution domain to /Low.DisXZ.t.vtk (-) [0 to 9] 0.0 OutDisWindY - Y coordinates of XZ planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindXZ] [unused for NOutDisWindXZ=0] 4.0 WrDisDT - Time step for disturbed wind visualization output (s) [>0.0] or DEFAULT [=DT_Low or DT_Low-VTK] [unused for WrDisWind=False and NOutDisWindXY=NOutDisWindYZ=NOutDisWindXZ=0] --- OUTPUT --- True SumPrint - Print summary data to .sum? (flag) 99999.9 ChkptTime - Amount of time between creating checkpoint files for potential restart (s) [>0.0] 0.0 TStart - Time to begin tabular output (s) [>=0.0] 1 OutFileFmt - Format for tabular (time-marching) output file (switch) {1: text file [.out], 2: binary file [.outb], 3: both} True TabDelim - Use tab delimiters in text tabular output file? (flag) {uses spaces if False} "ES10.3E2" OutFmt - Format used for text tabular output, excluding the time channel. Resulting field should be 10 characters. (quoted string) DEFAULT OutAllPlanes - Output all wake planes at all time steps. [DEFAULT=False] 20 NOutRadii - Number of radial nodes for wake output for an individual rotor (-) [0 to 20] 0, 1, 2, 3, 4, 5, 7, 9, 11, 13, 15, 16, 17, 18, 19, 21, 24, 28, 33, 39 OutRadii List of radial nodes for wake output for an individual rotor (-) [1 to NOutRadii] [unused for NOutRadii=0] 7 NOutDist - Number of downstream distances for wake output for an individual rotor (-) [0 to 9 ] 252.0, 378.0, 504.0, 630.0, 756.0, 882.0, 1008.0 OutDist List of downstream distances for wake output for an individual rotor (m) [1 to NOutDist ] [unused for NOutDist =0] 1 NWindVel - Number of points for wind output (-) [0 to 9] 1000.0 WindVelX - List of coordinates in the X direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] 0.0 WindVelY - List of coordinates in the Y direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] 90.0 WindVelZ - List of coordinates in the Z direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] OutList - The next line(s) contains a list of output parameters. (quoted string) "SCT1In2" "SCT2In2" "SCT3In2" "SCT1Ot1" "SCT2Ot1" "SCT3Ot1" "RtVAmbT1" "RtVAmbT2" "RtVAmbT3" END of input file (the word "END" must appear in the first 3 columns of this last OutList line) ```
InflowWind.dat (click to expand) ``` ------- InflowWind INPUT FILE ------------------------------------------------------------------------- 10 m/s steady wind without turbulence for case study --------------------------------------------------------------------------------------------------------------- False Echo - Echo input data to .ech (flag) 1 WindType - switch for wind file type (1=steady; 2=uniform; 3=binary TurbSim FF; 4=binary Bladed-style FF; 5=HAWC format; 6=User defined; 7=native Bladed FF) 0 PropagationDir - Direction of wind propagation (meteorological rotation from aligned with X (positive rotates towards -Y) -- degrees) (not used for native Bladed format WindType=7) 0 VFlowAng - Upflow angle (degrees) (not used for native Bladed format WindType=7) False VelInterpCubic - Use cubic interpolation for velocity in time (false=linear, true=cubic) [Used with WindType=2,3,4,5,7] 1 NWindVel - Number of points to output the wind velocity (0 to 9) 0 WindVxiList - List of coordinates in the inertial X direction (m) 0 WindVyiList - List of coordinates in the inertial Y direction (m) 110 WindVziList - List of coordinates in the inertial Z direction (m) ================== Parameters for Steady Wind Conditions [used only for WindType = 1] ========================= 10.0 HWindSpeed - Horizontal wind speed (m/s) 110.0 RefHt - Reference height for horizontal wind speed (m) 0.2 PLexp - Power law exponent (-) ================== Parameters for Uniform wind file [used only for WindType = 2] ============================ "unused" FileName_Uni - Filename of time series data for uniform wind field. (-) 90 RefHt_Uni - Reference height for horizontal wind speed (m) 125.88 RefLength - Reference length for linear horizontal and vertical sheer (-) ================== Parameters for Binary TurbSim Full-Field files [used only for WindType = 3] ============== "Wind/90m_12mps_twr.bts" FileName_BTS - Name of the Full field wind file to use (.bts) ================== Parameters for Binary Bladed-style Full-Field files [used only for WindType = 4 or WindType = 7] ========= "Wind/90m_12mps_twr" FilenameRoot - WindType=4: Rootname of the full-field wind file to use (.wnd, .sum); WindType=7: name of the intermediate file with wind scaling values False TowerFile - Have tower file (.twr) (flag) ignored when WindType = 7 ================== Parameters for HAWC-format binary files [Only used with WindType = 5] ===================== "wasp\Output\basic_5u.bin" FileName_u - name of the file containing the u-component fluctuating wind (.bin) "wasp\Output\basic_5v.bin" FileName_v - name of the file containing the v-component fluctuating wind (.bin) "wasp\Output\basic_5w.bin" FileName_w - name of the file containing the w-component fluctuating wind (.bin) 64 nx - number of grids in the x direction (in the 3 files above) (-) 32 ny - number of grids in the y direction (in the 3 files above) (-) 32 nz - number of grids in the z direction (in the 3 files above) (-) 16 dx - distance (in meters) between points in the x direction (m) 3 dy - distance (in meters) between points in the y direction (m) 3 dz - distance (in meters) between points in the z direction (m) 90 RefHt_HAWC - reference height; the height (in meters) of the vertical center of the grid (m) ------------- Scaling parameters for turbulence --------------------------------------------------------- 0 ScaleMethod - Turbulence scaling method [0 = none, 1 = direct scaling, 2 = calculate scaling factor based on a desired standard deviation] 1 SFx - Turbulence scaling factor for the x direction (-) [ScaleMethod=1] 1 SFy - Turbulence scaling factor for the y direction (-) [ScaleMethod=1] 1 SFz - Turbulence scaling factor for the z direction (-) [ScaleMethod=1] 1.2 SigmaFx - Turbulence standard deviation to calculate scaling from in x direction (m/s) [ScaleMethod=2] .8 SigmaFy - Turbulence standard deviation to calculate scaling from in y direction (m/s) [ScaleMethod=2] .2 SigmaFz - Turbulence standard deviation to calculate scaling from in z direction (m/s) [ScaleMethod=2] ------------- Mean wind profile parameters (added to HAWC-format files) --------------------------------- 10 URef - Mean u-component wind speed at the reference height (m/s) 0 WindProfile - Wind profile type (0=constant;1=logarithmic,2=power law) 0.2 PLExp_HAWC - Power law exponent (-) (used for PL wind profile type only) 0.03 Z0 - Surface roughness length (m) (used for LG wind profile type only) 0 XOffset - Initial offset in +x direction (shift of wind box) ================== LIDAR Parameters =========================================================================== 0 SensorType - Switch for lidar configuration (0 = None, 1 = Single Point Beam(s), 2 = Continuous, 3 = Pulsed) 0 NumPulseGate - Number of lidar measurement gates (used when SensorType = 3) 30 PulseSpacing - Distance between range gates (m) (used when SensorType = 3) 0 NumBeam - Number of lidar measurement beams (0-5)(used when SensorType = 1) -200 FocalDistanceX - Focal distance co-ordinates of the lidar beam in the x direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m) 0 FocalDistanceY - Focal distance co-ordinates of the lidar beam in the y direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m) 0 FocalDistanceZ - Focal distance co-ordinates of the lidar beam in the z direction (relative to hub height) (only first coordinate used for SensorType 2 and 3) (m) 0.0 0.0 0.0 RotorApexOffsetPos - Offset of the lidar from hub height (m) 17 URefLid - Reference average wind speed for the lidar[m/s] 0.25 MeasurementInterval - Time between each measurement [s] False LidRadialVel - TRUE => return radial component, FALSE => return 'x' direction estimate 1 ConsiderHubMotion - Flag whether to consider the hub motion's impact on Lidar measurements ====================== OUTPUT ================================================== False SumPrint - Print summary data to .IfW.sum (flag) OutList - The next line(s) contains a list of output parameters. See OutListParameters.xlsx for a listing of available output channels, (-) "Wind1VelX" "Wind1VelY" "Wind1VelZ" "Wind1VelMag" END of input file (the word "END" must appear in the first 3 columns of this last OutList line) --------------------------------------------------------------------------------------- ```

If you need any other information please let me know!

ArnoldTUB commented 4 months ago

The diameter of each turbine is 130 meters if this info is required

jjonkman commented 4 months ago

Dear @ArnoldTUB,

Can you share the full message written to the command prompt when you execute FAST.Farm?

Which version of FAST.Farm are you running. Does switching to the newest version (currently within OpenFAST v3.5.2) resolve the issue?

Best regards,

ArnoldTUB commented 4 months ago

Dear @jjonkman,

here is the full message:

**************************************************************************************************
 FAST.Farm
 Copyright (C) 2024 National Renewable Energy Laboratory
 Copyright (C) 2024 Envision Energy USA LTD
 This program is licensed under Apache License Version 2.0 and comes with ABSOLUTELY NO WARRANTY.
 See the "LICENSE" file distributed with this software for details.
 **************************************************************************************************
 FAST.Farm-v3.5.2
 Compile Info:
  - Compiler: GCC version 11.4.0
  - Architecture: 64 bit
  - Precision: single
  - OpenMP: Yes, number of threads: 112/112
  - Date: Feb 15 2024
  - Time: 17:18:04
 Execution Info:
  - Date: 02/27/2024
  - Time: 15:01:23+0000
  Heading of the FAST.Farm input file:
    Simulation with three wind turbines, controlled by MPC
 Running AWAE.
 Running InflowWind.
 Running Super Controller.
 Running WakeDynamics.
 Running FASTWrapper.
 Running OpenFAST.
 OpenFAST input file heading:
     Generated with AeroElasticSE FAST driver
 Running ElastoDyn.
 Running AeroDyn.
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3)
 Running InflowWind.
 Running ServoDyn.
 Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux).
 Using legacy Bladed DLL interface.
 Running OpenFAST.
 OpenFAST input file heading:
     Generated with AeroElasticSE FAST driver
 Running ElastoDyn.
 Running AeroDyn.
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3)
 Running InflowWind.
 Running ServoDyn.
 Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux).
 Using legacy Bladed DLL interface.
 Running OpenFAST.
 OpenFAST input file heading:
     Generated with AeroElasticSE FAST driver
 Running ElastoDyn.
 Running AeroDyn.
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2)
 Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3)
 Running InflowWind.
 Running ServoDyn.
 Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux).
 Using legacy Bladed DLL interface.
 Farm_Initialize:Farm_ValidateInput:OutFmt produces a column width of 10 instead of 20 characters.
  Time: 0 of 300 seconds.
 T1:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
 c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
 side the grid bounds.
 T2:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
 c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
 side the grid bounds.
 T3:FARM_InitialCO:FWrap_t0:FAST_Solution0:CalcOutputs_And_SolveForInputs:SolveOption2:SolveOption2
 c_Inp2AD_SrvD:InflowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Out
 side the grid bounds.

  Aborting FAST.Farm.

As I understand from the first few lines, I am using OpenFAST v3.5.2

jjonkman commented 4 months ago

Dear @ArnoldTUB,

I looked more closely at your FAST.Farm input file and believe I found the issue. The high-resolution domain of each turbine must full encompass all aerodynamic analysis nodes of the turbine. But your high-resolution domain is not tall enough for your turbine. That is, your high-resolution domains extend from 5 to 145 m above the ground, which is not sufficient given that the IEA Wind 3.4.MW reference wind turbine you are simulating has a hub height of 110 m and a 130-m rotor diameter.

Best regards,

ArnoldTUB commented 4 months ago

Dear @jjonkman,

Thanks for pointing this out. The high-resolution domain in Z direction being too small makes sense to me. Once I fixed this I received the following error message:

click to expand ``` ************************************************************************************************** FAST.Farm Copyright (C) 2024 National Renewable Energy Laboratory Copyright (C) 2024 Envision Energy USA LTD This program is licensed under Apache License Version 2.0 and comes with ABSOLUTELY NO WARRANTY. See the "LICENSE" file distributed with this software for details. ************************************************************************************************** FAST.Farm-v3.5.2 Compile Info: - Compiler: GCC version 11.4.0 - Architecture: 64 bit - Precision: single - OpenMP: Yes, number of threads: 48/48 - Date: Feb 15 2024 - Time: 17:18:04 Execution Info: - Date: 02/29/2024 - Time: 15:43:38+0000 Heading of the FAST.Farm input file: Simulation with three wind turbines, controlled by MPC Running AWAE. Running InflowWind. Running Super Controller. Running WakeDynamics. Running FASTWrapper. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Farm_Initialize:Farm_ValidateInput:OutFmt produces a column width of 10 instead of 20 characters. Time: 0 of 300 seconds. T1:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. T2:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. T3:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. Time: 1 of 300 seconds. Estimated final completion at 15:56:36. Time: 2 of 300 seconds. Estimated final completion at 15:53:18. Time: 3 of 300 seconds. Estimated final completion at 15:53:39. Time: 4 of 300 seconds. Estimated final completion at 15:54:14. Time: 5 of 300 seconds. Estimated final completion at 15:53:39. Time: 6 of 300 seconds. Estimated final completion at 15:53:50. Time: 7 of 300 seconds. Estimated final completion at 15:53:46. Time: 8 of 300 seconds. Estimated final completion at 15:54:13. Time: 9 of 300 seconds. Estimated final completion at 15:53:32. Time: 10 of 300 seconds. Estimated final completion at 15:53:22. Time: 11 of 300 seconds. Estimated final completion at 15:53:45. Time: 12 of 300 seconds. Estimated final completion at 15:54:50. Time: 13 of 300 seconds. Estimated final completion at 15:55:28. Time: 14 of 300 seconds. Estimated final completion at 15:53:44. Time: 15 of 300 seconds. Estimated final completion at 15:53:59. Time: 16 of 300 seconds. Estimated final completion at 15:54:24. Time: 17 of 300 seconds. Estimated final completion at 15:54:05. Time: 18 of 300 seconds. Estimated final completion at 15:54:03. Time: 19 of 300 seconds. Estimated final completion at 15:53:56. Time: 20 of 300 seconds. Estimated final completion at 15:54:34. Time: 21 of 300 seconds. Estimated final completion at 15:53:49. Time: 22 of 300 seconds. Estimated final completion at 15:53:48. Time: 23 of 300 seconds. Estimated final completion at 15:54:05. Time: 24 of 300 seconds. Estimated final completion at 15:54:31. Time: 25 of 300 seconds. Estimated final completion at 15:53:50. Time: 26 of 300 seconds. Estimated final completion at 15:55:46. Time: 27 of 300 seconds. Estimated final completion at 15:54:05. Time: 28 of 300 seconds. Estimated final completion at 15:54:58. Time: 29 of 300 seconds. Estimated final completion at 15:54:24. Time: 30 of 300 seconds. Estimated final completion at 15:54:01. Time: 31 of 300 seconds. Estimated final completion at 15:54:12. Time: 32 of 300 seconds. Estimated final completion at 15:54:40. Time: 33 of 300 seconds. Estimated final completion at 15:54:05. Time: 34 of 300 seconds. Estimated final completion at 15:53:60. Time: 35 of 300 seconds. Estimated final completion at 15:54:06. Time: 36 of 300 seconds. Estimated final completion at 15:54:33. Time: 37 of 300 seconds. Estimated final completion at 15:54:01. Time: 38 of 300 seconds. Estimated final completion at 15:53:57. Time: 39 of 300 seconds. Estimated final completion at 15:55:37. Time: 40 of 300 seconds. Estimated final completion at 15:54:38. Time: 41 of 300 seconds. Estimated final completion at 15:54:18. Time: 42 of 300 seconds. Estimated final completion at 15:54:11. Time: 43 of 300 seconds. Estimated final completion at 15:54:13. Time: 44 of 300 seconds. Estimated final completion at 15:54:41. Time: 45 of 300 seconds. Estimated final completion at 15:54:05. Time: 46 of 300 seconds. Estimated final completion at 15:54:13. Time: 47 of 300 seconds. Estimated final completion at 15:54:20. Time: 48 of 300 seconds. Estimated final completion at 15:54:45. Time: 49 of 300 seconds. Estimated final completion at 15:54:00. Time: 50 of 300 seconds. Estimated final completion at 15:54:11. Time: 51 of 300 seconds. Estimated final completion at 15:54:08. Time: 52 of 300 seconds. Estimated final completion at 15:56:13. Time: 53 of 300 seconds. Estimated final completion at 15:54:09. Time: 54 of 300 seconds. Estimated final completion at 15:54:10. Time: 55 of 300 seconds. Estimated final completion at 15:54:09. Time: 56 of 300 seconds. Estimated final completion at 15:54:40. Time: 57 of 300 seconds. Estimated final completion at 15:54:21. Time: 58 of 300 seconds. Estimated final completion at 15:54:14. Time: 59 of 300 seconds. Estimated final completion at 15:54:16. Time: 60 of 300 seconds. Estimated final completion at 15:54:53. Time: 61 of 300 seconds. Estimated final completion at 15:54:08. Time: 62 of 300 seconds. Estimated final completion at 15:54:09. Time: 63 of 300 seconds. Estimated final completion at 15:54:16. Time: 64 of 300 seconds. Estimated final completion at 15:54:42. Time: 65 of 300 seconds. Estimated final completion at 15:55:43. Time: 66 of 300 seconds. Estimated final completion at 15:54:16. Time: 67 of 300 seconds. Estimated final completion at 15:54:21. Time: 68 of 300 seconds. Estimated final completion at 15:54:48. Time: 69 of 300 seconds. Estimated final completion at 15:54:21. Time: 70 of 300 seconds. Estimated final completion at 15:54:28. Time: 71 of 300 seconds. Estimated final completion at 15:54:25. Time: 72 of 300 seconds. Estimated final completion at 15:54:59. Time: 73 of 300 seconds. Estimated final completion at 15:54:17. Time: 74 of 300 seconds. Estimated final completion at 15:54:19. Time: 75 of 300 seconds. Estimated final completion at 15:54:24. Time: 76 of 300 seconds. Estimated final completion at 15:54:52. Time: 77 of 300 seconds. Estimated final completion at 15:54:25. Time: 78 of 300 seconds. Estimated final completion at 15:55:47. Time: 79 of 300 seconds. Estimated final completion at 15:54:21. Time: 80 of 300 seconds. Estimated final completion at 15:54:50. Time: 81 of 300 seconds. Estimated final completion at 15:54:21. Time: 82 of 300 seconds. Estimated final completion at 15:54:26. Time: 83 of 300 seconds. Estimated final completion at 15:54:28. Time: 84 of 300 seconds. Estimated final completion at 15:54:54. Time: 85 of 300 seconds. Estimated final completion at 15:54:27. Time: 86 of 300 seconds. Estimated final completion at 15:54:33. Time: 87 of 300 seconds. Estimated final completion at 15:54:24. Time: 88 of 300 seconds. Estimated final completion at 15:54:54. Time: 89 of 300 seconds. Estimated final completion at 15:54:39. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #91 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 90 of 300 seconds. Estimated final completion at 15:54:44. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #92 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 91 of 300 seconds. Estimated final completion at 15:55:43. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #93 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 92 of 300 seconds. Estimated final completion at 15:55:00. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #94 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 93 of 300 seconds. Estimated final completion at 15:54:24. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #95 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 94 of 300 seconds. Estimated final completion at 15:54:28. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #96 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 95 of 300 seconds. Estimated final completion at 15:54:28. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #97 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 96 of 300 seconds. Estimated final completion at 15:55:03. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #98 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 97 of 300 seconds. Estimated final completion at 15:54:33. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #99 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 98 of 300 seconds. Estimated final completion at 15:54:41. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #100 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 99 of 300 seconds. Estimated final completion at 15:54:29. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #100 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. LowResGridCalcOutput:The center of wake plane #101 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 100 of 300 seconds. Estimated final completion at 15:54:56. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #100 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. LowResGridCalcOutput:The center of wake plane #101 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. LowResGridCalcOutput:The center of wake plane #102 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 101 of 300 seconds. Estimated final completion at 15:54:43. FARM_CalcOutput:AWAE_CalcOutput:LowResGridCalcOutput:The center of wake plane #101 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. LowResGridCalcOutput:The center of wake plane #102 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. LowResGridCalcOutput:The center of wake plane #103 for turbine #3 has passed the upper-most X boundary of the low-resolution domain. Time: 102 of 300 seconds. Estimated final completion at 15:54:42. T1:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD_SrvD:In flowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetSpatialAverage:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DF ield_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetHubValues:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_ GetVel:Outside the grid bounds. T2:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD_SrvD:In flowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetSpatialAverage:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DF ield_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetHubValues:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_ GetVel:Outside the grid bounds. T3:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD  Aborting FAST.Farm. ```

As far as I understand there are issues with the low-resolution domain now which is why I increased the number of low-resolution spatial nodes in X direction. However, I am still left with the following error message

click to expand ``` ************************************************************************************************** FAST.Farm Copyright (C) 2024 National Renewable Energy Laboratory Copyright (C) 2024 Envision Energy USA LTD This program is licensed under Apache License Version 2.0 and comes with ABSOLUTELY NO WARRANTY. See the "LICENSE" file distributed with this software for details. ************************************************************************************************** FAST.Farm-v3.5.2 Compile Info: - Compiler: GCC version 11.4.0 - Architecture: 64 bit - Precision: single - OpenMP: Yes, number of threads: 112/112 - Date: Feb 15 2024 - Time: 17:18:04 Execution Info: - Date: 02/29/2024 - Time: 15:59:49+0000 Heading of the FAST.Farm input file: Simulation with three wind turbines, controlled by MPC Running AWAE. Running InflowWind. Running Super Controller. Running WakeDynamics. Running FASTWrapper. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Running OpenFAST. OpenFAST input file heading: Generated with AeroElasticSE FAST driver Running ElastoDyn. Running AeroDyn. Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 1) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 2) Warning: Turning off Unsteady Aerodynamics because polar has constant data. (node 1, blade 3) Running InflowWind. Running ServoDyn. Running ServoDyn Interface for Bladed Controllers (using GNU Fortran for Linux). Using legacy Bladed DLL interface. Farm_Initialize:Farm_ValidateInput:OutFmt produces a column width of 10 instead of 20 characters. Time: 0 of 300 seconds. T1:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. T2:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. T3:FARM_UpdateStates:FWrap_Increment:FAST_Solution:CalcOutputs_And_SolveForInputs:SolveOption2:AD_ CalcOutput:RotCalcOutput:BEMT_CalcOutput(node 2, blade 1):UA_CalcOutput:UA_BlendSteady:Temporarily turning off UA due to high angle of attack or low relative velocity. This warning will not be repeated though the condition may persist. Time: 1 of 300 seconds. Estimated final completion at 16:23:05. Time: 2 of 300 seconds. Estimated final completion at 16:15:14. Time: 3 of 300 seconds. Estimated final completion at 16:12:16. Time: 4 of 300 seconds. Estimated final completion at 16:15:30. Time: 5 of 300 seconds. Estimated final completion at 16:11:58. Time: 6 of 300 seconds. Estimated final completion at 16:14:57. Time: 7 of 300 seconds. Estimated final completion at 16:17:50. Time: 8 of 300 seconds. Estimated final completion at 16:16:21. Time: 9 of 300 seconds. Estimated final completion at 16:14:02. Time: 10 of 300 seconds. Estimated final completion at 16:15:05. Time: 11 of 300 seconds. Estimated final completion at 16:14:47. Time: 12 of 300 seconds. Estimated final completion at 16:15:01. Time: 13 of 300 seconds. Estimated final completion at 16:16:11. Time: 14 of 300 seconds. Estimated final completion at 16:12:25. Time: 15 of 300 seconds. Estimated final completion at 16:17:07. Time: 16 of 300 seconds. Estimated final completion at 16:17:26. Time: 17 of 300 seconds. Estimated final completion at 16:13:21. Time: 18 of 300 seconds. Estimated final completion at 16:17:34. Time: 19 of 300 seconds. Estimated final completion at 16:14:31. Time: 20 of 300 seconds. Estimated final completion at 16:16:16. Time: 21 of 300 seconds. Estimated final completion at 16:15:46. Time: 22 of 300 seconds. Estimated final completion at 16:19:12. Time: 23 of 300 seconds. Estimated final completion at 16:15:46. Time: 24 of 300 seconds. Estimated final completion at 16:17:17. Time: 25 of 300 seconds. Estimated final completion at 16:15:18. Time: 26 of 300 seconds. Estimated final completion at 16:17:17. Time: 27 of 300 seconds. Estimated final completion at 16:14:18. Time: 28 of 300 seconds. Estimated final completion at 16:17:05. Time: 29 of 300 seconds. Estimated final completion at 16:18:51. Time: 30 of 300 seconds. Estimated final completion at 16:15:45. Time: 31 of 300 seconds. Estimated final completion at 16:13:29. Time: 32 of 300 seconds. Estimated final completion at 16:16:23. Time: 33 of 300 seconds. Estimated final completion at 16:15:29. Time: 34 of 300 seconds. Estimated final completion at 16:19:10. Time: 35 of 300 seconds. Estimated final completion at 16:15:26. Time: 36 of 300 seconds. Estimated final completion at 16:14:20. Time: 37 of 300 seconds. Estimated final completion at 16:14:55. Time: 38 of 300 seconds. Estimated final completion at 16:12:40. Time: 39 of 300 seconds. Estimated final completion at 16:14:07. Time: 40 of 300 seconds. Estimated final completion at 16:13:31. Time: 41 of 300 seconds. Estimated final completion at 16:12:40. Time: 42 of 300 seconds. Estimated final completion at 16:15:54. Time: 43 of 300 seconds. Estimated final completion at 16:12:46. Time: 44 of 300 seconds. Estimated final completion at 16:13:39. Time: 45 of 300 seconds. Estimated final completion at 16:12:44. Time: 46 of 300 seconds. Estimated final completion at 16:16:56. Time: 47 of 300 seconds. Estimated final completion at 16:15:35. Time: 48 of 300 seconds. Estimated final completion at 16:13:39. Time: 49 of 300 seconds. Estimated final completion at 16:15:26. Time: 50 of 300 seconds. Estimated final completion at 16:13:11. Time: 51 of 300 seconds. Estimated final completion at 16:17:00. Time: 52 of 300 seconds. Estimated final completion at 16:14:50. Time: 53 of 300 seconds. Estimated final completion at 16:15:29. Time: 54 of 300 seconds. Estimated final completion at 16:12:56. Time: 55 of 300 seconds. Estimated final completion at 16:15:17. Time: 56 of 300 seconds. Estimated final completion at 16:16:14. Time: 57 of 300 seconds. Estimated final completion at 16:12:49. Time: 58 of 300 seconds. Estimated final completion at 16:13:06. Time: 59 of 300 seconds. Estimated final completion at 16:12:56. Time: 60 of 300 seconds. Estimated final completion at 16:14:18. Time: 61 of 300 seconds. Estimated final completion at 16:17:24. Time: 62 of 300 seconds. Estimated final completion at 16:15:42. Time: 63 of 300 seconds. Estimated final completion at 16:12:54. Time: 64 of 300 seconds. Estimated final completion at 16:18:20. Time: 65 of 300 seconds. Estimated final completion at 16:16:03. Time: 66 of 300 seconds. Estimated final completion at 16:15:23. Time: 67 of 300 seconds. Estimated final completion at 16:16:47. Time: 68 of 300 seconds. Estimated final completion at 16:15:58. Time: 69 of 300 seconds. Estimated final completion at 16:13:03. Time: 70 of 300 seconds. Estimated final completion at 16:13:22. Time: 71 of 300 seconds. Estimated final completion at 16:15:26. Time: 72 of 300 seconds. Estimated final completion at 16:13:45. Time: 73 of 300 seconds. Estimated final completion at 16:13:12. Time: 74 of 300 seconds. Estimated final completion at 16:13:17. Time: 75 of 300 seconds. Estimated final completion at 16:13:15. Time: 76 of 300 seconds. Estimated final completion at 16:14:37. Time: 77 of 300 seconds. Estimated final completion at 16:14:16. Time: 78 of 300 seconds. Estimated final completion at 16:17:04. Time: 79 of 300 seconds. Estimated final completion at 16:13:12. Time: 80 of 300 seconds. Estimated final completion at 16:13:48. Time: 81 of 300 seconds. Estimated final completion at 16:13:18. Time: 82 of 300 seconds. Estimated final completion at 16:13:24. Time: 83 of 300 seconds. Estimated final completion at 16:13:25. Time: 84 of 300 seconds. Estimated final completion at 16:14:02. Time: 85 of 300 seconds. Estimated final completion at 16:14:34. Time: 86 of 300 seconds. Estimated final completion at 16:15:31. Time: 87 of 300 seconds. Estimated final completion at 16:13:22. Time: 88 of 300 seconds. Estimated final completion at 16:13:54. Time: 89 of 300 seconds. Estimated final completion at 16:13:40. Time: 90 of 300 seconds. Estimated final completion at 16:15:48. Time: 91 of 300 seconds. Estimated final completion at 16:14:34. Time: 92 of 300 seconds. Estimated final completion at 16:13:58. Time: 93 of 300 seconds. Estimated final completion at 16:13:17. Time: 94 of 300 seconds. Estimated final completion at 16:13:22. Time: 95 of 300 seconds. Estimated final completion at 16:13:28. Time: 96 of 300 seconds. Estimated final completion at 16:14:04. Time: 97 of 300 seconds. Estimated final completion at 16:13:32. Time: 98 of 300 seconds. Estimated final completion at 16:13:31. Time: 99 of 300 seconds. Estimated final completion at 16:13:19. Time: 100 of 300 seconds. Estimated final completion at 16:17:44. Time: 101 of 300 seconds. Estimated final completion at 16:14:55. Time: 102 of 300 seconds. Estimated final completion at 16:13:32. T1:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD_SrvD:In flowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetSpatialAverage:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DF ield_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetHubValues:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_ GetVel:Outside the grid bounds. T2:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD_SrvD:In flowWind_CalcOutput:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetSpatialAverage:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DF ield_GetVel:Outside the grid bounds. InflowWind_CalcOutput:InflowWind_GetHubValues:CalculateOutput:IfW_FlowField_GetVelAcc:Grid4DField_ GetVel:Outside the grid bounds. T3:FARM_UpdateStates:FWrap_Increment:FAST_Solution:FAST_AdvanceStates:SolveOption2c_Inp2AD  Aborting FAST.Farm. ```

Do you have any idea what's causing this?

ArnoldTUB commented 4 months ago
My current .fstf file ``` ------- FAST.Farm for OpenFAST INPUT FILE ------------------------------------------------- Simulation with three wind turbines, controlled by MPC --- SIMULATION CONTROL --- False Echo - Echo input data to .ech? (flag) FATAL AbortLevel - Error level when simulation should abort (string) {"WARNING", "SEVERE", "FATAL"} 300.0 TMax - Total run time (s) [>=0.0] True UseSC - Use a super controller? (flag) 2 Mod_AmbWind - Ambient wind model (-) (switch) {1: high-fidelity precursor in VTK format, 2: one InflowWind module, 3: multiple instances of InflowWind module} 1 Mod_WaveField - Wave field handling (-) (switch) {1: use individual HydroDyn inputs without adjustment, 2: adjust wave phases based on turbine offsets from farm origin} 0 Mod_SharedMooring - Shared mooring system model (switch) {0: None, 3=MoorDyn} --- SUPER CONTROLLER --- [used only for UseSC=True] "libMPC_SC.so" SC_FileName - Name/location of the dynamic library {.dll [Windows] or .so [Linux]} containing the Super Controller algorithms (quoted string) --- SHARED MOORING SYSTEM --- [used only for Mod_SharedMoor>0] "" SharedMoorFile - Name of file containing shared mooring system input parameters (quoted string) [used only when Mod_SharedMooring > 0] 0.04 DT_Mooring - Time step for farm-level mooring coupling with each turbine (s) [used only when Mod_SharedMooring > 0] --- AMBIENT WIND: PRECURSOR IN VTK FORMAT --- [used only for Mod_AmbWind=1] 1.0 DT_Low-VTK - Time step for low-resolution wind data input files; will be used as the global FAST.Farm time step (s) [>0.0] 0.1 DT_High-VTK - Time step for high-resolution wind data input files (s) [>0.0] "unused" WindFilePath - Path name to VTK wind data files from precursor (string) False ChkWndFiles - Check all the ambient wind files for data consistency? (flag) --- AMBIENT WIND: INFLOWWIND MODULE --- [used only for Mod_AmbWind=2 or 3] 1.0 DT_Low - Time step for low-resolution wind data interpolation; will be used as the global FAST.Farm time step (s) [>0.0] 0.1 DT_High - Time step for high-resolution wind data interpolation (s) [>0.0] 500 NX_Low - Number of low-resolution spatial nodes in X direction for wind data interpolation (-) [>=2] 260 NY_Low - Number of low-resolution spatial nodes in Y direction for wind data interpolation (-) [>=2] 30 NZ_Low - Number of low-resolution spatial nodes in Z direction for wind data interpolation (-) [>=2] -780 X0_Low - Origin of low-resolution spatial nodes in X direction for wind data interpolation (m) -650 Y0_Low - Origin of low-resolution spatial nodes in Y direction for wind data interpolation (m) 5 Z0_Low - Origin of low-resolution spatial nodes in Z direction for wind data interpolation (m) 10.0 dX_Low - Spacing of low-resolution spatial nodes in X direction for wind data interpolation (m) [>0.0] 10.0 dY_Low - Spacing of low-resolution spatial nodes in Y direction for wind data interpolation (m) [>0.0] 10.0 dZ_Low - Spacing of low-resolution spatial nodes in Z direction for wind data interpolation (m) [>0.0] 15 NX_High - Number of high-resolution spatial nodes in X direction for wind data interpolation (-) [>=2] 30 NY_High - Number of high-resolution spatial nodes in Y direction for wind data interpolation (-) [>=2] 20 NZ_High - Number of high-resolution spatial nodes in Z direction for wind data interpolation (-) [>=2] "InflowWind.dat" InflowFile - Name of file containing InflowWind module input parameters (quoted string) --- WIND TURBINES --- 3 NumTurbines Number of wind turbines (-) [>=1] [last 6 columns used only for Mod_AmbWind=2] WT_X WT_Y WT_Z WT_FASTInFile X0_High Y0_High Z0_High dX_High dY_High dZ_High (m) (m) (m) (string) (m) (m) (m) (m) (m) (m) 0.0 97.5 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC1.fst" -75.0 -52.5 5.0 10 10 10 0.0 -97.5 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC2.fst" -75.0 -247.5 5.0 10 10 10 910.0 0.0 0.0 "IEA-3.4-130-RWT-TunedModel/IEA-3.4-130_WithSC3.fst" 835.0 -150.0 5.0 10 10 10 --- WAKE DYNAMICS --- 1 Mod_Wake - Switch between wake formulations {1:Polar, 2:Curl, 3:Cartesian} (-) (switch) 5.0 dr - Radial increment of radial finite-difference grid (m) [>0.0] 40 NumRadii - Number of radii in the radial finite-difference grid (-) [>=2] 136 NumPlanes - Number of wake planes (-) [>=2] DEFAULT f_c - Cutoff (corner) frequency of the low-pass time-filter for the wake advection, deflection, and meandering model [recommended=1.28*U0/R] (Hz) [>0.0] DEFAULT C_HWkDfl_O - Calibrated parameter in the correction for wake deflection defining the horizontal offset at the rotor (m) or DEFAULT [=0.0] DEFAULT C_HWkDfl_OY - Calibrated parameter in the correction for wake deflection defining the horizontal offset at the rotor scaled with yaw error (m/deg) or DEFAULT [=0.3] DEFAULT C_HWkDfl_x - Calibrated parameter in the correction for wake deflection defining the horizontal offset scaled with downstream distance (-) or DEFAULT [=0.0] DEFAULT C_HWkDfl_xY - Calibrated parameter in the correction for wake deflection defining the horizontal offset scaled with downstream distance and yaw error (1/deg) or DEFAULT [=-0.004] DEFAULT C_NearWake - Calibrated parameter for the near-wake correction (-) [>1. and <2.5] or DEFAULT [=1.8] DEFAULT k_vAmb - Calibrated parameter for the influence of ambient turbulence in the eddy viscosity (-) [>=0.0] or DEFAULT [=0.05] DEFAULT k_vShr - Calibrated parameter for the influence of the shear layer in the eddy viscosity (-) [>=0.0] or DEFAULT [=0.016] DEFAULT C_vAmb_DMin - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the transitional diameter fraction between the minimum and exponential regions (-) [>=0.0] or DEFAULT [=0.0] DEFAULT C_vAmb_DMax - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the transitional diameter fraction between the exponential and maximum regions (-) [> C_vAmb_DMin] or DEFAULT [=1.0] DEFAULT C_vAmb_FMin - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the value in the minimum region (-) [>=0.0 and <=1.0] or DEFAULT [=1.0] DEFAULT C_vAmb_Exp - Calibrated parameter in the eddy viscosity filter function for ambient turbulence defining the exponent in the exponential region (-) [> 0.0] or DEFAULT [=0.01] DEFAULT C_vShr_DMin - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the transitional diameter fraction between the minimum and exponential regions (-) [>=0.0] or DEFAULT [=3.0] DEFAULT C_vShr_DMax - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the transitional diameter fraction between the exponential and maximum regions (-) [> C_vShr_DMin] or DEFAULT [=25.0] DEFAULT C_vShr_FMin - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the value in the minimum region (-) [>=0.0 and <=1.0] or DEFAULT [=0.2] DEFAULT C_vShr_Exp - Calibrated parameter in the eddy viscosity filter function for the shear layer defining the exponent in the exponential region (-) [> 0.0] or DEFAULT [=0.1] DEFAULT Mod_WakeDiam - Wake diameter calculation model (-) (switch) {1: rotor diameter, 2: velocity based, 3: mass-flux based, 4: momentum-flux based} or DEFAULT [=1] DEFAULT C_WakeDiam - Calibrated parameter for wake diameter calculation (-) [>0.0 and <0.99] or DEFAULT [=0.95] [unused for Mod_WakeDiam=1] DEFAULT Mod_Meander - Spatial filter model for wake meandering (-) (switch) {1: uniform, 2: truncated jinc, 3: windowed jinc} or DEFAULT [=3] DEFAULT C_Meander - Calibrated parameter for wake meandering (-) [>=1.0] or DEFAULT [=1.9] --- CURLED-WAKE PARAMETERS [only used if Mod_Wake=2 or 3] --- True Swirl - Switch to include swirl velocities in wake [only used if Mod_Wake=2 or Mod_Wake=3] (-) (switch) [DEFAULT=TRUE] 0 k_VortexDecay - Vortex decay constant for curl (-) [DEFAULT=0] DEFAULT NumVortices - The number of vortices in the curled wake model (-) [DEFAULT=100] DEFAULT sigma_D - The width of the vortices in the curled wake model non-dimesionalized by rotor diameter (-) [DEFAULT=0.2] DEFAULT FilterInit - Switch to filter the initial wake plane deficit and select the number of grid points for the filter {0: no filter, 1: filter of size 1} or DEFAULT [DEFAULT=1] [unused for Mod_Wake=1] (switch) DEFAULT k_vCurl - Calibrated parameter for scaling the eddy viscosity in the curled-wake model (-) [only used if Mod_Wake=2 or Mod_Wake=3] [>=0] or DEFAULT [DEFAULT=2.0 ] DEFAULT Mod_Projection - Switch to select how the wake plane velocity is projected in AWAE {1: keep all components, 2: project against plane normal} or DEFAULT [DEFAULT=1: if Mod_Wake is 1 or 3, or DEFAULT=2: if Mod_Wake is 2] (switch) --- VISUALIZATION --- False WrDisWind - Write low- and high-resolution disturbed wind data to .Low.Dis.t.vtk etc. (flag) 1 NOutDisWindXY - Number of XY planes for output of disturbed wind data across the low-resolution domain to .Low.DisXY.t.vtk (-) [0 to 9] 90.0 OutDisWindZ - Z coordinates of XY planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindXY] [unused for NOutDisWindXY=0] 2 NOutDisWindYZ - Number of YZ planes for output of disturbed wind data across the low-resolution domain to /Low.DisYZ.t.vtk (-) [0 to 9] 600.0,978.0 OutDisWindX X - coordinates of YZ planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindYZ] [unused for NOutDisWindYZ=0] 1 NOutDisWindXZ - Number of XZ planes for output of disturbed wind data across the low-resolution domain to /Low.DisXZ.t.vtk (-) [0 to 9] 0.0 OutDisWindY - Y coordinates of XZ planes for output of disturbed wind data across the low-resolution domain (m) [1 to NOutDisWindXZ] [unused for NOutDisWindXZ=0] 4.0 WrDisDT - Time step for disturbed wind visualization output (s) [>0.0] or DEFAULT [=DT_Low or DT_Low-VTK] [unused for WrDisWind=False and NOutDisWindXY=NOutDisWindYZ=NOutDisWindXZ=0] --- OUTPUT --- True SumPrint - Print summary data to .sum? (flag) 99999.9 ChkptTime - Amount of time between creating checkpoint files for potential restart (s) [>0.0] 0.0 TStart - Time to begin tabular output (s) [>=0.0] 1 OutFileFmt - Format for tabular (time-marching) output file (switch) {1: text file [.out], 2: binary file [.outb], 3: both} True TabDelim - Use tab delimiters in text tabular output file? (flag) {uses spaces if False} "ES10.3E2" OutFmt - Format used for text tabular output, excluding the time channel. Resulting field should be 10 characters. (quoted string) DEFAULT OutAllPlanes - Output all wake planes at all time steps. [DEFAULT=False] 20 NOutRadii - Number of radial nodes for wake output for an individual rotor (-) [0 to 20] 0, 1, 2, 3, 4, 5, 7, 9, 11, 13, 15, 16, 17, 18, 19, 21, 24, 28, 33, 39 OutRadii List of radial nodes for wake output for an individual rotor (-) [1 to NOutRadii] [unused for NOutRadii=0] 7 NOutDist - Number of downstream distances for wake output for an individual rotor (-) [0 to 9 ] 252.0, 378.0, 504.0, 630.0, 756.0, 882.0, 1008.0 OutDist List of downstream distances for wake output for an individual rotor (m) [1 to NOutDist ] [unused for NOutDist =0] 1 NWindVel - Number of points for wind output (-) [0 to 9] 1000.0 WindVelX - List of coordinates in the X direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] 0.0 WindVelY - List of coordinates in the Y direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] 90.0 WindVelZ - List of coordinates in the Z direction for wind output (m) [1 to NWindVel] [unused for NWindVel=0] OutList - The next line(s) contains a list of output parameters. (quoted string) "SCT1In2" "SCT2In2" "SCT3In2" "SCT1Ot1" "SCT2Ot1" "SCT3Ot1" "RtVAmbT1" "RtVAmbT2" "RtVAmbT3" END of input file (the word "END" must appear in the first 3 columns of this last OutList line) ```
jjonkman commented 4 months ago

Dear @ArnoldTUB,

The warnings about the wake planes leaving the upper-most X boundary of the low-resolution domain are not a big concern because the wakes will simply leave and not affect the response of the wakes and turbines that remain in the domain. You can extend the domain to eliminate these warnings, but that would add computational expense for little benefit.

I'm not sure why you are receiving the same error about the high-resolution domain that you did before, but now 102 seconds into the simulation. There seems to now be a large enough spatial buffer of each high-resolution domain around each turbine so that the turbine deflections/displacements would not cause the turbines to leave the high-resolution domains. And I don't see any warnings about exceeding small angle approximation limits, which often implies unrealistic deflections. Can you confirm that the turbine deflections/displacements are not excessive? Do the errors go away if disable all structural degrees of freedom of the OpenFAST models?

Best regards,

ArnoldTUB commented 4 months ago

Dear @jjonkman,

Thanks for the clarification regarding the warning messages. I adjusted the low-resolution domain to only encapsulate the volume of interest.

I am not sure how to disable all structural degrees of freedom. I found a DEGREES OF FREEDOM section in the ElastoDyn file, where I set all flags to false (FlapDOF1 and 2, EdgeDOF, DrTrDOF, GenDOF, TwFADOF1 and 2 and TwSSDOF1 and 2 were set to true before). However, the error prevailed. I switched turbine controllers and the error vanished. So apparently, something about how the turbines were controlled caused these issues. I would like to use the initial controllers, though. Do you have an idea how to debug this situation? I know I can switch an Echo flag in some files to true to get some insight but I am not sure what to look for. Perhaps something like hub or blade tip positions?

jjonkman commented 4 months ago

Dear @ArnoldTUB,

If disabling the structural DOFs did not resolve the issue, it is not large displacements that are causing the issue.

Can you clarify what you are changing in the controller? Are the two controllers you are using provided by NREL or something you developed yourself? Are the controllers trying to access wind at points that may reside outside the high-resolution domains?

Best regards,

ArnoldTUB commented 4 months ago

Dear @jjonkman

The controller with which I receive no errors is based the variable-speed generator torque and collective pitch PI controller developed by NREL. The controller with which I do receive errors is an LQR that takes

as inputs. So to my knowledge none of them try to access wind at specific points but only wind provided by avrSWAP.

jjonkman commented 4 months ago

Dear @ArnoldTUBm

I'm not sure, but it sounds like the issue only occurs when using your own super controller and DISCON controller. Can you reproduce the error if you disable the super controller and use an NREL-provided controller such as the one for the NREL 5-MW baseline turbine or ROSCO?

Best regards,

ArnoldTUB commented 4 months ago

Dear @jjonkman

I have access to the following controllers:

I've run some tests and it seems like both super controllers, SC1 and SC2, work fine with WT2. I receive no errors. However, both super controllers yield similar error messages when run with WT1. Interestingly, both super controllers yield errors at 104 seconds run time. So it seems like WT1 is causing issues so I will try to analyze how this controller affects the turbines using the .ech files. Since my .fstf and inflow files seem fine, I am going to close this issue.

Thanks for your help!

ArnoldTUB commented 4 months ago

Dear @jjonkman

just letting you know that I was able to solve this issue. The super controller miscalculated the demanded power such that the turbines were asked to generate more than what would be possible. I am not sure how exactly this caused the errors I received but after fixing the calculations I no longer receive these errors.

P.S.: The erros occured around 100 seconds simulation time because that's roughly the time frame where the downstream turbine is 'being hit' by the wakes caused by upstream turbines

3sdb commented 2 months ago

I have a question: does the low-resolution pre-resolution need to be smaller than the wind field as the high-resolution?

jjonkman commented 2 months ago

Dear @3sdb,

I'm not sure I fully understand your question. We generally recommend for the low- and high-resolution domains in FAST.Farm to be aligned with the inflow data used as input to FAST.Farm. But certainly, the boundaries of the low- and high-resolution domains cannot reside outside the bounds of the inflow data used as input to FAST.Farm.

Best regards,

3sdb commented 2 months ago

I'm sorry I didn't quite get it right. I'm having the same question, I've tried for a long time and still haven't solved it, please take a look at some of my errors and files. f3a1bff5bb1c8fdbeef72dc9a2c0d2d IEA-15-240-RWT_InflowFile.txt 13C.txt f3a1bff5bb1c8fdbeef72dc9a2c0d2d

jjonkman commented 2 months ago

Dear @3sdb,

I haven't fully reviewed your model set up, but as with your related question (https://github.com/OpenFAST/openfast/issues/2221), we generally recommend using the OpenFAST toolbox (https://github.com/OpenFAST/openfast_toolbox/tree/main/openfast_toolbox/fastfarm) when generating inflow and setting up FAST.Farm input files to ensure that you are following the FAST.Farm modeling guidance: https://openfast.readthedocs.io/en/main/source/user/fast.farm/ModelGuidance.html. From my quick glance at your files, it doesn't appear that are using the Python scripts to follow the modeling guidance.

Best regards,