Compute minor and major species optical depth using pre-computed interpolation coefficients (jeta,jtemp,jpress) and weights (fmajor, fminor)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ncol | array sizes |
||
integer, | intent(in) | :: | nlay | array sizes |
||
integer, | intent(in) | :: | nbnd | array sizes |
||
integer, | intent(in) | :: | ngpt | array sizes |
||
integer, | intent(in) | :: | ngas | tables sizes |
||
integer, | intent(in) | :: | nflav | tables sizes |
||
integer, | intent(in) | :: | neta | tables sizes |
||
integer, | intent(in) | :: | npres | tables sizes |
||
integer, | intent(in) | :: | ntemp | tables sizes |
||
integer, | intent(in) | :: | nminorlower | table sizes |
||
integer, | intent(in) | :: | nminorklower | table sizes |
||
integer, | intent(in) | :: | nminorupper | table sizes |
||
integer, | intent(in) | :: | nminorkupper | table sizes |
||
integer, | intent(in) | :: | idx_h2o | index of water vapor in col_gas |
||
integer, | intent(in), | dimension(2,ngpt) | :: | gpoint_flavor | major gas flavor (pair) by upper/lower, g-point |
|
integer, | intent(in), | dimension(2,nbnd) | :: | band_lims_gpt | beginning and ending g-point for each band |
|
real(kind=wp), | intent(in), | dimension(ntemp,neta,npres+1,ngpt) | :: | kmajor | absorption coefficient table - major gases |
|
real(kind=wp), | intent(in), | dimension(ntemp,neta,nminorklower) | :: | kminor_lower | absorption coefficient table - minor gases, lower atmosphere |
|
real(kind=wp), | intent(in), | dimension(ntemp,neta,nminorkupper) | :: | kminor_upper | absorption coefficient table - minor gases, upper atmosphere |
|
integer, | intent(in), | dimension(2,nminorlower) | :: | minor_limits_gpt_lower | beginning and ending g-point for each minor gas |
|
integer, | intent(in), | dimension(2,nminorupper) | :: | minor_limits_gpt_upper | ||
logical(kind=wl), | intent(in), | dimension( nminorlower) | :: | minor_scales_with_density_lower | generic treatment of minor gases - scales with density (e.g. continuum, collision-induced absorption)? |
|
logical(kind=wl), | intent(in), | dimension( nminorupper) | :: | minor_scales_with_density_upper | ||
logical(kind=wl), | intent(in), | dimension( nminorlower) | :: | scale_by_complement_lower | generic treatment of minor gases - scale by density (e.g. self-continuum) or complement? |
|
logical(kind=wl), | intent(in), | dimension( nminorupper) | :: | scale_by_complement_upper | ||
integer, | intent(in), | dimension( nminorlower) | :: | idx_minor_lower | index of each minor gas in col_gas |
|
integer, | intent(in), | dimension( nminorupper) | :: | idx_minor_upper | ||
integer, | intent(in), | dimension( nminorlower) | :: | idx_minor_scaling_lower | for this minor gas, index of the "scaling gas" in col_gas |
|
integer, | intent(in), | dimension( nminorupper) | :: | idx_minor_scaling_upper | ||
integer, | intent(in), | dimension( nminorlower) | :: | kminor_start_lower | starting g-point index in minor gas absorption table |
|
integer, | intent(in), | dimension( nminorupper) | :: | kminor_start_upper | ||
logical(kind=wl), | intent(in), | dimension(ncol,nlay) | :: | tropo | use upper- or lower-atmospheric tables? |
|
real(kind=wp), | intent(in), | dimension(2, ncol,nlay,nflav ) | :: | col_mix | combination of major species's column amounts - computed in interpolation() |
|
real(kind=wp), | intent(in), | dimension(2,2,2,ncol,nlay,nflav ) | :: | fmajor | interpolation weights for major gases - computed in interpolation() |
|
real(kind=wp), | intent(in), | dimension(2,2, ncol,nlay,nflav ) | :: | fminor | interpolation weights for minor gases - computed in interpolation() |
|
real(kind=wp), | intent(in), | dimension( ncol,nlay ) | :: | play | input temperature and pressure |
|
real(kind=wp), | intent(in), | dimension( ncol,nlay ) | :: | tlay | input temperature and pressure |
|
real(kind=wp), | intent(in), | dimension( ncol,nlay,0:ngas) | :: | col_gas | input column gas amount (molecules/cm^2) |
|
integer, | intent(in), | dimension(2, ncol,nlay,nflav ) | :: | jeta | interpolation indexes in eta - computed in interpolation() |
|
integer, | intent(in), | dimension( ncol,nlay ) | :: | jtemp | interpolation indexes in temperature - computed in interpolation() |
|
integer, | intent(in), | dimension( ncol,nlay ) | :: | jpress | interpolation indexes in pressure - computed in interpolation() |
|
real(kind=wp), | intent(inout), | dimension(ncol,nlay,ngpt) | :: | tau | aborption optional depth |