openfast
openfast copied to clipboard
Feature request: specify smaller VTK slice in FAST.Farm output
FAST.Farm can output slices of the low resolution grid. When a very large farm is modeled, a single slice may be very large compared to the region of actual interest.
Describe the solution you'd like
In addition to the current slice outputs, add the ability to read a custom slice file with different reduced grids. For example, if we have a low res grid with XY extents of [-1500:3000, -2000:2000]
and wanted to look at VTK slices only around a specific turbine (number 137 and 139 in this example) located at [2000,1400]
and [1850,1225]
, a smaller sampling volume around those turbine could be specified of only 1000 m x 600 m for the VTK slicing. Perhaps this could be specified
!------- VTK Box volumes --------
1 NumVTKvolBoxes - number of VTK volume boxes for extracting slices (-)
BoxName X0 X1 Y0 Y1 Z0 Z1
(-) (m) (m) (m) (m) (m) (m)
T137 1800 2800 1100 1700 "default" "default" ! Default on Z for full extent of height
T139 1650 2650 925 1525 "default" "default" ! Default on Z for full extent of height
!------- Slices ---------------
5 NumSlices - total number of slices across all custom boxes (-)
BoxName SliceDir Loc
(-) (-) (m)
T137 YZ *200 ! "*" for relative to X0
T137 YZ 2000 ! absolute plane position
T137 XY 80 ! at 80m height
T137 XZ *200 ! at 200 m relative to Y0
T137 XZ 1400 ! absolute location of Y slice
T139 YZ *200 ! same offset as first slice from Box T137
T139 XZ *200 ! same offset as slice 4 from Box T137
The above might live in a separate file specified in the Visualization
section.
Describe alternatives you've considered An alternative approach could be to include the extents into the plane location itself. Example:
87.6 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 <RootName>/Low.DisYZ<n_out>.t<n>.vtk (-) [0 to 99]
10.0[-300:300], 640.0[-200:400] 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] {Append [<Y0lim>:<Y1lim>] to distance to truncate in Y direction bounds at user specified bounds of <Y0lim> and <Y1lim>}
where the [-300:300]
indicates to truncate the box Y dimensions (don't allow in Z). This would be rather clumsy to specify and tricky to implement into a reasonable parser. It could also be really clumsy for an XY
plane to specify [<X0lim>:<X1lim>; <Y0lim>:<Y1lim>]
Additional context This was never really an issue until we started modeling large farms with 150 or more turbines spread out over very large areas. So this may not be an issue that most casual users face, but I expect more industry users will find this modification useful.
@rthedin, any thoughts on this method? Or suggestions based on AMR-Wind?