| orog_mask_tools
    1.13.0
    | 
Calculates small-scale GWD orographic stats for FV3GFS grids. More...
Go to the source code of this file.
| Functions/Subroutines | |
| subroutine | gsl_oro_data_sm_scale::calc_gsl_oro_data_sm_scale (tile_num, res_indx, halo, duplicate_oro_data_file) | 
| Subroutine to compute orographic statistics needed for small-scale orograhic drag (gravity wave and form drag) schemes.  More... | |
| real(kind=real_kind) function | gsl_oro_data_sm_scale::interp_1d (x, x1, x2, y1, y2) | 
| Interpolates (or extrapolates) linear function y = y(x)  More... | |
| integer function | gsl_oro_data_sm_scale::nearest_i_east (lon_in) | 
| Finds nearest fine-grid i index to the east of a given longitude.  More... | |
| integer function | gsl_oro_data_sm_scale::nearest_i_west (lon_in) | 
| Finds nearest fine-grid i index to the west of a given longitude.  More... | |
| integer function | gsl_oro_data_sm_scale::nearest_j_north (lat_in) | 
| Calculates nearest fine-grid j index to the north of a given latitude.  More... | |
| integer function | gsl_oro_data_sm_scale::nearest_j_south (lat_in) | 
| Calculates nearest fine-grid j index to the south of a given latitude.  More... | |
| subroutine | gsl_oro_data_sm_scale::netcdf_err (err, string) | 
| Returns netCDF error given input err code.  More... | |
| Variables | |
| integer, parameter | gsl_oro_data_sm_scale::dbl_kind = selected_real_kind(13) | 
| double precision  More... | |
| integer | gsl_oro_data_sm_scale::dimx_fine | 
| x-dimension of fine grid  More... | |
| integer | gsl_oro_data_sm_scale::dimy_fine | 
| y-dimension of fine grid  More... | |
| real(kind=real_kind), dimension(:), allocatable | gsl_oro_data_sm_scale::lat1d_fine | 
| latitude of fine grid pts  More... | |
| real(kind=real_kind), dimension(:), allocatable | gsl_oro_data_sm_scale::lon1d_fine | 
| longitude of fine grid pts  More... | |
| real(kind=real_kind), parameter | gsl_oro_data_sm_scale::p5 = 0.5_real_kind | 
| one half  More... | |
| real, parameter | gsl_oro_data_sm_scale::pi = 3.1415926535897_real_kind | 
| pi  More... | |
| integer, parameter | gsl_oro_data_sm_scale::real_kind = selected_real_kind(6) | 
| single precision  More... | |
Calculates small-scale GWD orographic stats for FV3GFS grids.
This module calculates the parameters required for the subgrid- scale orographic gravity-wave drag (GWDO) scheme on the FV3 grid. These parameters are for the small-scale GWD (Tsiringakis et al., 2017) and the turbulent orographic form drag (TOFD) (Beljaars, 2004) schemes of the GSL drag suite. 30 second (~1km) global topography is used. The topographic data comes from the 'fix' file HGT.Beljaars_filtered.lat-lon.30s_res.nc. The output fields are:
Based on code by Michael Duda provided by NCAR/MMM
Definition in file module_gsl_oro_data_sm_scale.f90.
| subroutine gsl_oro_data_sm_scale::calc_gsl_oro_data_sm_scale | ( | character(len=2), intent(in) | tile_num, | 
| character(len=7), intent(in) | res_indx, | ||
| character(len=4), intent(in) | halo, | ||
| logical, intent(out) | duplicate_oro_data_file | ||
| ) | 
Subroutine to compute orographic statistics needed for small-scale orograhic drag (gravity wave and form drag) schemes.
| [in] | tile_num | (tile number) | 
| [in] | res_indx | (resolution) | 
| [in] | halo | (halo number) | 
| [out] | duplicate_oro_data_file | (equals .true. if min grid size <= 7.5km) | 
Definition at line 51 of file module_gsl_oro_data_sm_scale.f90.
References netcdf_err().
| real (kind=real_kind) function gsl_oro_data_sm_scale::interp_1d | ( | real (kind=real_kind), intent(in) | x, | 
| real (kind=real_kind), intent(in) | x1, | ||
| real (kind=real_kind), intent(in) | x2, | ||
| real (kind=real_kind), intent(in) | y1, | ||
| real (kind=real_kind), intent(in) | y2 | ||
| ) | 
Interpolates (or extrapolates) linear function y = y(x)
| [in] | x | Input "x" value | 
| [in] | x1 | Known point 1 | 
| [in] | x2 | Known point 2 | 
| [in] | y1 | Known y(x1) | 
| [in] | y2 | Known y(x2) | 
Definition at line 1247 of file module_gsl_oro_data_sm_scale.f90.
| integer function gsl_oro_data_sm_scale::nearest_i_east | ( | real (kind=real_kind), intent(in) | lon_in | ) | 
Finds nearest fine-grid i index to the east of a given longitude.
| [in] | lon_in | longitude (radians) | 
Definition at line 1117 of file module_gsl_oro_data_sm_scale.f90.
| integer function gsl_oro_data_sm_scale::nearest_i_west | ( | real (kind=real_kind), intent(in) | lon_in | ) | 
Finds nearest fine-grid i index to the west of a given longitude.
| [in] | lon_in | longitude (radians) | 
Definition at line 1150 of file module_gsl_oro_data_sm_scale.f90.
| integer function gsl_oro_data_sm_scale::nearest_j_north | ( | real (kind=real_kind), intent(in) | lat_in | ) | 
Calculates nearest fine-grid j index to the north of a given latitude.
| [in] | lat_in | Latitude (radians) | 
Definition at line 1183 of file module_gsl_oro_data_sm_scale.f90.
| integer function gsl_oro_data_sm_scale::nearest_j_south | ( | real (kind=real_kind), intent(in) | lat_in | ) | 
Calculates nearest fine-grid j index to the south of a given latitude.
| [in] | lat_in | Latitude (radians) | 
Definition at line 1212 of file module_gsl_oro_data_sm_scale.f90.
| subroutine gsl_oro_data_sm_scale::netcdf_err | ( | integer, intent(in) | err, | 
| character(len=*), intent(in) | string | ||
| ) | 
Returns netCDF error given input err code.
| [in] | err | Error code from netCDF routine | 
| [in] | string | Portion of error message | 
Definition at line 1267 of file module_gsl_oro_data_sm_scale.f90.
| integer, parameter gsl_oro_data_sm_scale::dbl_kind = selected_real_kind(13) | 
double precision
Definition at line 28 of file module_gsl_oro_data_sm_scale.f90.
| integer gsl_oro_data_sm_scale::dimx_fine | 
x-dimension of fine grid
Definition at line 31 of file module_gsl_oro_data_sm_scale.f90.
| integer gsl_oro_data_sm_scale::dimy_fine | 
y-dimension of fine grid
Definition at line 32 of file module_gsl_oro_data_sm_scale.f90.
| real (kind = real_kind), dimension(:), allocatable gsl_oro_data_sm_scale::lat1d_fine | 
latitude of fine grid pts
Definition at line 34 of file module_gsl_oro_data_sm_scale.f90.
| real (kind = real_kind), dimension(:), allocatable gsl_oro_data_sm_scale::lon1d_fine | 
longitude of fine grid pts
Definition at line 35 of file module_gsl_oro_data_sm_scale.f90.
| real (kind = real_kind), parameter gsl_oro_data_sm_scale::p5 = 0.5_real_kind | 
one half
Definition at line 37 of file module_gsl_oro_data_sm_scale.f90.
| real, parameter gsl_oro_data_sm_scale::pi = 3.1415926535897_real_kind | 
pi
Definition at line 30 of file module_gsl_oro_data_sm_scale.f90.
| integer, parameter gsl_oro_data_sm_scale::real_kind = selected_real_kind(6) | 
single precision
Definition at line 27 of file module_gsl_oro_data_sm_scale.f90.