NCEPLIBS-ip 5.2.0
|
Expand or contract wafs grids using neighbor interpolation and accout for bitmapped data. More...
Go to the source code of this file.
Functions/Subroutines | |
subroutine | ipxwafs3 (idir, numpts_thin, numpts_full, km, num_opt, opt_pts, igdtlen, igdtmpl_thin, data_thin, ib_thin, bitmap_thin, igdtmpl_full, data_full, ib_full, bitmap_full, iret) |
Expand or contract wafs grids using neighbor interpolation and accout for bitmapped data. | |
Expand or contract wafs grids using neighbor interpolation and accout for bitmapped data.
Definition in file ipxwafs3.F90.
subroutine ipxwafs3 | ( | integer, intent(in) | idir, |
integer, intent(in) | numpts_thin, | ||
integer, intent(in) | numpts_full, | ||
integer, intent(in) | km, | ||
integer, intent(in) | num_opt, | ||
integer, dimension(num_opt), intent(inout) | opt_pts, | ||
integer, intent(in) | igdtlen, | ||
integer, dimension(igdtlen), intent(inout) | igdtmpl_thin, | ||
real, dimension(numpts_thin,km), intent(inout) | data_thin, | ||
integer, dimension(km), intent(inout) | ib_thin, | ||
logical(kind=1), dimension(numpts_thin,km), intent(inout) | bitmap_thin, | ||
integer, dimension(igdtlen), intent(inout) | igdtmpl_full, | ||
real, dimension(numpts_full,km), intent(inout) | data_full, | ||
integer, dimension(km), intent(inout) | ib_full, | ||
logical(kind=1), dimension(numpts_full,km), intent(inout) | bitmap_full, | ||
integer, intent(out) | iret | ||
) |
Expand or contract wafs grids using neighbor interpolation and accout for bitmapped data.
This subprogram transforms between the thinned wafs grids used for transmitting to the aviation community and their full expansion as used for general interpolation and graphics. The thinned wafs grids are latitude-longitude grids where the number of points in each row decrease toward the pole. This information is stored in the grib 2 grid definition template (section 3) starting at octet 73.
The full grid counterparts have an equal number of points per row.
The transform between the full and thinned wafs wafs grid is done by linear interpolation and is not reversible. This routine works with bitmapped data.
This subroutine is similar to:
Date | Programmer | Comments |
---|---|---|
07-07-13 | Trojan | initial version based on ipxwafs2 |
2015-jul | gayno | convert to grib 2 |
[in] | idir | integer transform option
|
[in] | numpts_thin | integer number of grid points - thinned grid. Must be 3447. |
[in] | numpts_full | integer number of grid points - full grid. Must be 5329. |
[in] | km | integer number of fields to transform |
[in] | num_opt | integer number of values to describe the thinned grid. must be 73. dimension of array opt_pts. |
[in,out] | opt_pts | integer (num_opt) number of grid points per row - thinned grid - if idir=+1 |
[in] | igdtlen | integer grid defintion template array length. must be 19 for lat/lon grids. corresponds to the gfldigdtlen component of the ncep g2 library gridmod data structure. same for thin and full grids which are both lat/lon. |
[in] | igdtmpl_thin | integer (igdtlen) grid definition template array - thinned grid - if idir=+1. corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure (section 3 info):
|
[in,out] | data_thin | real (numpts_thin,km) thinned grid fields if idir=+1 |
[in,out] | ib_thin | integer (km) bitmap flags thinned grid - if idir=+1 |
[in,out] | bitmap_thin | logical (numpts_thin,km) bitmap fields thin grid - if idir=+1 |
[in,out] | igdtmpl_full | integer (igdtlen) grid definition template array - full grid - if idir=-1. corresponds to the gfldigdtmpl component of the ncep g2 library gridmod data structure. same as igdtmpl_thin except: (8): number of points along a parallel, octs 31-34 (17): i-direction increment, octets 64-67 |
[in,out] | data_full | real (numpts_full,km) full grid fields if idir=-1 |
[in,out] | ib_full | integer (km) bitmap flags full grid - if idir=-1 |
[in,out] | bitmap_full | logical (numpts_full,km) bitmap fields full grid - if idir=-1 |
[out] | iret | integer return code
|
Definition at line 88 of file ipxwafs3.F90.