UFO
|
Fortran module to provide code shared between nonlinear and tlm/adm radiance calculations. More...
Data Types | |
type | ufo_rttov_io |
type | rttov_conf |
Functions/Subroutines | |
subroutine, public | rttov_conf_setup (conf, f_confOpts, f_confOper) |
subroutine, public | rttov_conf_delete (conf) |
subroutine | set_options_rttov (self, f_confOpts) |
subroutine | setup_rttov (self, f_confOpts) |
subroutine | get_var_name (n, varname) |
subroutine | ufo_rttov_setup_rtprof (self, geovals, obss, conf, ob_info) |
subroutine | ufo_rttov_check_rtprof (self, conf, iprof, i_inst, errorstatus) |
subroutine | ufo_rttov_print_rtprof (self, conf, iprof, i_inst) |
subroutine | ufo_rttov_alloc_direct (self, errorstatus, conf, nprofiles, nchannels, nlevels, init, asw) |
subroutine | ufo_rttov_alloc_k (self, errorstatus, conf, nprofiles, nchannels, nlevels, init, asw) |
subroutine | ufo_rttov_alloc_profiles (self, errorstatus, conf, nprofiles, nlevels, init, asw) |
subroutine | ufo_rttov_alloc_profiles_k (self, errorstatus, conf, nprofiles, nlevels, init, asw) |
subroutine | ufo_rttov_zero_k (self) |
subroutine | ufo_rttov_init_emissivity (self, conf, prof_start) |
subroutine | set_defaults_rttov (self, default_opts_set) |
subroutine, public | populate_hofxdiags (RTProf, chanprof, conf, prof_start, hofxdiags) |
subroutine, public | parse_hofxdiags (hofxdiags, jacobian_needed) |
Variables | |
integer, parameter, public | max_string =800 |
integer, parameter, public | maxvarin = 50 |
character(len=maxvarlen), dimension(maxvarin), public | varin_temp |
character(len=max_string), public | message |
integer, public | nvars_in |
integer, public | rttov_errorstatus |
character(len=maxvarlen), dimension(:), allocatable | ystr_diags |
character(len=maxvarlen), dimension(:), allocatable | xstr_diags |
integer, dimension(:), allocatable | ch_diags |
real(c_double) | missing |
character(len=maxvarlen), dimension(21), target | varin_default_crtm = (/var_ts, var_prs, var_prsi, var_sfc_wfrac, var_sfc_lfrac, var_sfc_ifrac, var_sfc_sfrac, var_sfc_wtmp, var_sfc_ltmp, var_sfc_itmp, var_sfc_stmp, var_sfc_vegfrac, var_sfc_wspeed, var_sfc_wdir, var_sfc_lai, var_sfc_soilm, var_sfc_soilt, var_sfc_landtyp, var_sfc_vegtyp, var_sfc_soiltyp, var_sfc_sdepth/) |
character(len=maxvarlen), dimension(9), target | varin_default_satrad = (/var_prs, var_ts, var_q, var_sfc_t2m, var_sfc_u10, var_sfc_v10, var_sfc_p2m, var_sfc_q2m, var_sfc_tskin /) |
character(len=maxvarlen), dimension(:), pointer, public | varin_default |
character(len= *), dimension(ngases_max+2), parameter | rttov_absorbers = [gas_name(1:ngases_max),'CLW', 'CIW'] |
integer, dimension(ngases_max+2), parameter | rttov_absorber_id = [gas_id_mixed, gas_id_watervapour, gas_id_ozone, gas_id_wvcont, gas_id_co2, gas_id_n2o, gas_id_co, gas_id_ch4, gas_id_so2, 0, 0] |
real(kind_real), dimension(0:ngases_max), parameter | gas_unit_conv = [1.0_kind_real, 1.0_kind_real, q_mixratio_to_ppmv, o3_mixratio_to_ppmv, 1.0_kind_real, co2_mixratio_to_ppmv, n2o_mixratio_to_ppmv, co_mixratio_to_ppmv, ch4_mixratio_to_ppmv, so2_mixratio_to_ppmv] |
character(len=maxvarlen), parameter | null_str = '' |
character(len=maxvarlen), dimension(ngases_max+2), parameter | ufo_absorbers = [ null_str, var_mixr, var_oz, null_str, var_co2, 'mole_fraction_of_nitrous_oxide_in_air', 'mole_fraction_of_carbon_monoxide_in_air', 'mole_fraction_of_methane_in_air', 'mole_fraction_of_sulfur_dioxide_in_air', var_clw, var_cli] |
integer, public | nchan_inst |
integer, public | nchan_sim |
integer, public | nlocs_total |
logical, public | debug |
integer | iprof |
Fortran module to provide code shared between nonlinear and tlm/adm radiance calculations.
|
private |
Definition at line 722 of file ufo_radiancerttov_utils_mod.F90.
subroutine, public ufo_radiancerttov_utils_mod::parse_hofxdiags | ( | type(ufo_geovals), intent(inout) | hofxdiags, |
logical, intent(out) | jacobian_needed | ||
) |
Definition at line 1934 of file ufo_radiancerttov_utils_mod.F90.
subroutine, public ufo_radiancerttov_utils_mod::populate_hofxdiags | ( | type(ufo_rttov_io), intent(in) | RTProf, |
type(rttov_chanprof), dimension(:), intent(in) | chanprof, | ||
type(rttov_conf), intent(in) | conf, | ||
integer, intent(in) | prof_start, | ||
type(ufo_geovals), intent(inout) | hofxdiags | ||
) |
Definition at line 1713 of file ufo_radiancerttov_utils_mod.F90.
subroutine, public ufo_radiancerttov_utils_mod::rttov_conf_delete | ( | type(rttov_conf), intent(inout) | conf | ) |
Definition at line 392 of file ufo_radiancerttov_utils_mod.F90.
subroutine, public ufo_radiancerttov_utils_mod::rttov_conf_setup | ( | type(rttov_conf), intent(inout) | conf, |
type(fckit_configuration), intent(in) | f_confOpts, | ||
type(fckit_configuration), intent(in) | f_confOper | ||
) |
Definition at line 195 of file ufo_radiancerttov_utils_mod.F90.
|
private |
MW-only radiative transfer options
HTFRTC options structure
Definition at line 1569 of file ufo_radiancerttov_utils_mod.F90.
|
private |
[in] | f_confopts | Switch to enable atmospheric refraction |
[in] | f_confopts | Switch for input units in AD/K models |
[in] | f_confopts | Switch to enable use of 2m q variable |
[in] | f_confopts | Switch for setting Lambertian reflection (IR and MW) |
[in] | f_confopts | Switch for fixed/parameterised effective angle for Lambertian option |
[in] | f_confopts | Switch to ignore atmospheric curvature |
[in] | f_confopts | Linear-in-tau or layer-mean for downwelling radiances |
[in] | f_confopts | Switch to apply dtau test in transmit/integrate calculations |
[in] | f_confopts | FASTEM version (0-6); 0 => TESSEM2 |
[in] | f_confopts | Supply a foam fraction to FASTEM |
[in] | f_confopts | Switch to enable input of cloud liquid water profile |
[in] | f_confopts | MW CLW scheme: 1 => Liebe, 2 => Rosenkranz, 3 => TKC |
[in] | f_confopts | Apply MW CLW calculations on coef/user levels (true/false resp.) |
[in] | f_confopts | Lower pressure limit for MW CLW calculations (hPa) |
[in] | f_confopts | Apply band-correction for Planck radiance and BT calculations |
[in] | f_confopts | Switch to enable RTTOV interpolator |
[in] | f_confopts | Interpolation mode (1-5, see user guide) |
[in] | f_confopts | Switch to make pressure an active variable in TL/AD/K models |
[in] | f_confopts | Switch to assume space boundary at top-most input pressure l |
[in] | f_confopts | Switch to extrapolate input profiles using regression limits |
[in] | f_confopts | Solar sea BRDF model (1-2) |
[in] | f_confopts | IR sea emissivity model (1-2) |
[in] | f_confopts | Switch to enable solar simulations |
[in] | f_confopts | Switch to enable Rayleigh single-scattering for VIS/NIR channel |
[in] | f_confopts | Switch to enable NLTE bias correction |
[in] | f_confopts | Switch to enable IR aerosol calculations |
[in] | f_confopts | Switch to supply aerosol optical properties explicitly per channel |
[in] | f_confopts | Switch to enable IR cloudy calculations |
[in] | f_confopts | Switch to supply cloud optical properties explicitly per channel |
[in] | f_confopts | Switch to supply grid-box average cloud concentration or cloud |
[in] | f_confopts | Ignore cloud streams with weights lower than this |
[in] | f_confopts | Switch for simplified cloud stream option - USE WITH CAUTION |
[in] | f_confopts | Upper pressure limit for cldstr_simple option (hPa) |
[in] | f_confopts | IR scattering model to use |
[in] | f_confopts | VIS/NIR scattering model to use |
[in] | f_confopts | Number of DOM streams, must be even and not less than 2 |
[in] | f_confopts | Convergence criterion for termination of DOM azimuthal loop |
[in] | f_confopts | DOM ignores levels below this optical depth: |
[in] | f_confopts | Switch to enable input of O3 profile |
[in] | f_confopts | Switch to enable input of CO2 profile |
[in] | f_confopts | Switch to enable input of N2O profile |
[in] | f_confopts | Switch to enable input of CO profile |
[in] | f_confopts | Switch to enable input of CH4 profile |
[in] | f_confopts | Switch to enable input of SO2 profile |
Definition at line 423 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 674 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1283 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1337 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1399 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1448 of file ufo_radiancerttov_utils_mod.F90.
subroutine ufo_radiancerttov_utils_mod::ufo_rttov_check_rtprof | ( | class(ufo_rttov_io), intent(inout), target | self, |
type(rttov_conf), intent(in) | conf, | ||
integer, intent(in) | iprof, | ||
integer, intent(in) | i_inst, | ||
integer, intent(out) | errorstatus | ||
) |
Definition at line 1236 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1509 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1264 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 736 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 1493 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 57 of file ufo_radiancerttov_utils_mod.F90.
logical, public ufo_radiancerttov_utils_mod::debug |
Definition at line 121 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 96 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 123 of file ufo_radiancerttov_utils_mod.F90.
integer, parameter, public ufo_radiancerttov_utils_mod::max_string =800 |
Definition at line 40 of file ufo_radiancerttov_utils_mod.F90.
integer, parameter, public ufo_radiancerttov_utils_mod::maxvarin = 50 |
Definition at line 41 of file ufo_radiancerttov_utils_mod.F90.
character(len=max_string), public ufo_radiancerttov_utils_mod::message |
Definition at line 46 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 59 of file ufo_radiancerttov_utils_mod.F90.
integer, public ufo_radiancerttov_utils_mod::nchan_inst |
Definition at line 118 of file ufo_radiancerttov_utils_mod.F90.
integer, public ufo_radiancerttov_utils_mod::nchan_sim |
Definition at line 119 of file ufo_radiancerttov_utils_mod.F90.
integer, public ufo_radiancerttov_utils_mod::nlocs_total |
Definition at line 120 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 109 of file ufo_radiancerttov_utils_mod.F90.
integer, public ufo_radiancerttov_utils_mod::nvars_in |
Definition at line 48 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 84 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 79 of file ufo_radiancerttov_utils_mod.F90.
integer, public ufo_radiancerttov_utils_mod::rttov_errorstatus |
Definition at line 49 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 112 of file ufo_radiancerttov_utils_mod.F90.
character(len=maxvarlen), dimension(:), pointer, public ufo_radiancerttov_utils_mod::varin_default |
Definition at line 76 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 61 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 71 of file ufo_radiancerttov_utils_mod.F90.
character(len=maxvarlen), dimension(maxvarin), public ufo_radiancerttov_utils_mod::varin_temp |
Definition at line 45 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 56 of file ufo_radiancerttov_utils_mod.F90.
|
private |
Definition at line 53 of file ufo_radiancerttov_utils_mod.F90.