GRIDS Improvements
current suggestions
- Input Testing:
- Test all static array sizes against input dimensions.
- Convert ALL reads to iostat tested. First do a grep on read.
Make sure error messages go with failures.
- Enable GRIDS to work with TerrainBase topography.
This will require looking for North & South Pole attributes.
- Take more control in GRIDS
- Move the metric calculations from PE_initial to
GRIDS. Eliminate the unnecessary variables from the GRIDS
netCDF output file.
- Totally define vertical grid in GRIDS. Merely pass 3D
arrays of dzt's and dzv's to PE_initial. Have
PE_initial merely pass these "as are" to PE.
This would leave the details of the vertical grid to only GRIDS
and Cond_Topo.
- Nesting:
- crs2fne
- check the fine domain extent to make sure it's contained
within the large domain.
- check the Bessel interpolation footprint of the fine domain
to make sure it's contained within the large domain.
- extract_grids
- needs to record a "filter" attribute for both
topography and land mask.
- when moving topography from large grid to small currently
simply do interpolation. Revise to just ensure large scale (2D integral)
matches.
- Re-work input so it's all read at once. The goal will be to minimize
(or even eliminate) "cut-outs". Maybe even modularize the input
to allow an upgrade to a graphic user interface (if one becomes available).
- Add flag for cyclic topography.
- h(1,j) = h(imt-1,j)
- h(imt,j) = h(2,j)
- Report the size of the smallest circle, centered at (lonc,
latc), which contains the grid. This would be useful for setting
rout in OA codes. Include it as an attribute in the
netCDF file.
- Velocity grid step topography, kmu. Create this in grids,
consistent with PE expectations. Maintain under
extract_grids and masking.
- Plot titles:
- The date doesn't need to be so large
- Perhaps multiple lines: First user supplied, second automatic
description.
- More documentation is needed:
- User's guide:
- Chapter 3: add warning on VMSmakefile.com
- Create Appendix I: Horizontal Grid
- Cartesian Grid
- Rotated Spherical Grid
- Create Appendix II: Vertical Discretization
- notes on Hydrostatic Consistency Factor
- dsigma optimization
- Create Appendix III: Details of netCDF coastline &
topography data files.
- Create Appendix IV: GNUmakefile in all
its gory detail.
- Create Appendix V: NetCDF routines used --
function and I/O
- Create Appendix VI: NCAR routines used -- function
and I/O
- Put user's guide information (in different form) in bottom
of grids.in
- Try to create a local.tex file to define the
local site data.
- Include bug report in chapter 1.
- On first creation of GRIDS file, create target topography from
available filter parameters. Record filter parameters to target
topography attributes.
- Vertical levels optimized for Hydrostatic Consistency.
- Rework the vertical level optimizing routines to directly
report the dsigma's as well as the sigma's.
- The new results require C > 3/2. Check this at
input.
- Put in a flag to enable grid selection only. No topography selections.
This will make for faster initial grid definitions.
- Allow grids to read in land mask. Use to determine non-masked statistics,
and to mask contours (and T-grid?). Set optimal selection of zc1
to use minimum active depth. Make first guess for land mask when
extracting raw topography.
- Include a "no normal" topography manipulation routine.
- Look into creating a MATLAB type graphical front-end for grids.
- Write a routine to create variable grids.
- Separate the repeated local integral weighted median filter from the
massage_topo routine. That is, write a stand alone routine to do
the filtering and call this routine from massage_topo.
- Maybe work in routine to insert more levels to better represent the
bottom topography.
blasts from the past
- Put graph controls in separate data files.