-
Notifications
You must be signed in to change notification settings - Fork 15
Description
The read_be_gsi uses dsig to normalize the vertical length scale[1,2], but I believe it should be updated for sigma coordinate and may need to be redone for hybrid coordinates.
Right now, dsig is calculated from sigma (aka eta) coordinates using the centers and approximating the edge values. Essentially, half the distance in log space between each center-point and the center-points above/below is assigned to each level. For the bottom level and the top level, the distance in each direction is approximated using the distance in one direction (up for the bottom level; down for the top level). This approximation is unnecessary for the bottom since the edge value is defined as 1. The top edge is also defined as zero, but cannot be used because its value is undefined in log-space.
Attached is a fortran code with several alternative calculations.
- Adjusts edges of dsig using known properties of ZNU (bottom=1, top=0),
- Calculates dsig from a reconstructed ZNW,
- Uses assumed surface pressure and model pressure top to calculate in pressure space.
The last alternative is based on two things. (2) My interpretation of the code is that dsig approximates a value proportional to
The Fortran code produces the attached CSV output and I made the following figure to show the changes. For the vertical coordinate used at the EPA, the first approach changes the bottom value by ~7% and the top value by a similar amount. The other approaches make larger changes.
[1] https://github.com/wrf-model/GENBE_2.0/blob/master/src/gen_be_nc2gsi.F#L627-L631
[2] https://github.com/wrf-model/GENBE_2.0/blob/master/src/gen_be_nc2gsi.F#L637