|
logical,
|
public |
|
:: |
use_spectral_solar_scaling |
= |
.false. |
|
|
logical,
|
public |
|
:: |
use_spectral_solar_cycle |
= |
.false. |
|
|
character(len=511),
|
public |
|
:: |
directory_name |
= |
'.' |
|
|
logical,
|
public |
|
:: |
use_general_cloud_optics |
= |
.true. |
|
|
logical,
|
public |
|
:: |
use_general_aerosol_optics |
= |
.true. |
|
|
real(kind=jprb),
|
public |
|
:: |
cloud_fraction_threshold |
= |
1.0e-6_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
cloud_mixing_ratio_threshold |
= |
1.0e-9_jprb |
|
|
integer,
|
public |
|
:: |
i_overlap_scheme |
= |
IOverlapExponentialRandom |
|
|
logical,
|
public |
|
:: |
use_beta_overlap |
= |
.false. |
|
|
logical,
|
public |
|
:: |
use_vectorizable_generator |
= |
.false. |
|
|
integer,
|
public |
|
:: |
i_cloud_pdf_shape |
= |
IPdfShapeGamma |
|
|
real(kind=jprb),
|
public |
|
:: |
cloud_inhom_decorr_scaling |
= |
0.5_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
clear_to_thick_fraction |
= |
0.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
overhead_sun_factor |
= |
0.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
min_gas_od_lw |
= |
1.0e-15_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
min_gas_od_sw |
= |
0.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
max_gas_od_3d |
= |
8.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
max_cloud_od |
= |
16.0_jprb |
|
|
logical,
|
public |
|
:: |
do_lw_cloud_scattering |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_lw_aerosol_scattering |
= |
.true. |
|
|
integer,
|
public |
|
:: |
nregions |
= |
3 |
|
|
integer,
|
public |
|
:: |
i_solver_sw |
= |
ISolverMcICA |
|
|
integer,
|
public |
|
:: |
i_solver_lw |
= |
ISolverMcICA |
|
|
logical,
|
public |
|
:: |
do_sw_delta_scaling_with_gases |
= |
.false. |
|
|
integer,
|
public |
|
:: |
i_gas_model_sw |
= |
IGasModelIFSRRTMG |
|
|
integer,
|
public |
|
:: |
i_gas_model_lw |
= |
IGasModelIFSRRTMG |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_lw_wavelength |
= |
-1.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_lw_total_od |
= |
0.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_sw_total_od |
= |
0.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_sw_single_scattering_albedo |
= |
0.999999_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_sw_asymmetry_factor |
= |
0.86_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_lw_single_scattering_albedo |
= |
0.538_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
mono_lw_asymmetry_factor |
= |
0.925_jprb |
|
|
integer,
|
public |
|
:: |
i_liq_model |
= |
ILiquidModelSOCRATES |
|
|
integer,
|
public |
|
:: |
i_ice_model |
= |
IIceModelBaran |
|
|
logical,
|
public |
|
:: |
do_nearest_spectral_sw_albedo |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_nearest_spectral_lw_emiss |
= |
.false. |
|
|
real(kind=jprb),
|
public |
|
:: |
sw_albedo_wavelength_bound(NMaxAlbedoIntervals-1) |
= |
-1.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
lw_emiss_wavelength_bound(NMaxAlbedoIntervals-1) |
= |
-1.0_jprb |
|
|
integer,
|
public |
|
:: |
i_sw_albedo_index(NMaxAlbedoIntervals) |
= |
0 |
|
|
integer,
|
public |
|
:: |
i_lw_emiss_index(NMaxAlbedoIntervals) |
= |
0 |
|
|
logical,
|
public |
|
:: |
do_lw |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_sw |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_clear |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_sw_direct |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_3d_effects |
= |
.true. |
|
|
character(len=511),
|
public |
|
:: |
cloud_type_name(NMaxCloudTypes) |
= |
["", "", "", "", "", "", "", "", "", "", "", ""] |
|
|
logical,
|
public |
|
:: |
use_thick_cloud_spectral_averaging(NMaxCloudTypes) |
= |
[.true., .true., .true., .true., .true., .true., .true., .true., .true., .true., .true., .true.] |
|
|
integer,
|
public |
|
:: |
i_3d_sw_entrapment |
= |
IEntrapmentExplicit |
|
|
logical,
|
public |
|
:: |
do_3d_lw_multilayer_effects |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_lw_side_emissivity |
= |
.true. |
|
|
real(kind=jprb),
|
public |
|
:: |
max_3d_transfer_rate |
= |
10.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
min_cloud_effective_size |
= |
100.0_jprb |
|
|
real(kind=jprb),
|
public |
|
:: |
overhang_factor |
= |
0.0_jprb |
|
|
logical,
|
public |
|
:: |
use_expm_everywhere |
= |
.false. |
|
|
logical,
|
public |
|
:: |
use_aerosols |
= |
.false. |
|
|
integer,
|
public |
|
:: |
n_aerosol_types |
= |
0 |
|
|
integer,
|
public |
|
:: |
i_aerosol_type_map(NMaxAerosolTypes) |
|
|
|
|
logical,
|
public |
|
:: |
do_save_radiative_properties |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_save_spectral_flux |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_surface_sw_spectral_flux |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_toa_spectral_flux |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_lw_derivatives |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_save_gpoint_flux |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_setup_ifsrrtm |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_fu_lw_ice_optics_bug |
= |
.false. |
|
|
integer,
|
public |
|
:: |
iverbosesetup |
= |
2 |
|
|
integer,
|
public |
|
:: |
iverbose |
= |
1 |
|
|
logical,
|
public |
|
:: |
do_canopy_fluxes_sw |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_canopy_fluxes_lw |
= |
.false. |
|
|
logical,
|
public |
|
:: |
use_canopy_full_spectrum_sw |
= |
.false. |
|
|
logical,
|
public |
|
:: |
use_canopy_full_spectrum_lw |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_canopy_gases_sw |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_canopy_gases_lw |
= |
.false. |
|
|
character(len=511),
|
public |
|
:: |
ice_optics_override_file_name |
= |
'' |
|
|
character(len=511),
|
public |
|
:: |
liq_optics_override_file_name |
= |
'' |
|
|
character(len=511),
|
public |
|
:: |
aerosol_optics_override_file_name |
= |
'' |
|
|
character(len=511),
|
public |
|
:: |
gas_optics_sw_override_file_name |
= |
'' |
|
|
character(len=511),
|
public |
|
:: |
gas_optics_lw_override_file_name |
= |
'' |
|
|
character(len=511),
|
public |
|
:: |
ssi_override_file_name |
= |
'' |
|
|
logical,
|
public |
|
:: |
use_updated_solar_spectrum |
= |
.false. |
|
|
character(len=511),
|
public |
|
:: |
cloud_pdf_override_file_name |
= |
'' |
|
|
logical,
|
public |
|
:: |
do_cloud_aerosol_per_sw_g_point |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_cloud_aerosol_per_lw_g_point |
= |
.true. |
|
|
logical,
|
public |
|
:: |
do_weighted_surface_mapping |
= |
.true. |
|
|
logical,
|
public |
|
:: |
is_consolidated |
= |
.false. |
|
|
real(kind=jprb),
|
public, |
allocatable, dimension(:,:)
|
:: |
g_frac_sw |
|
|
|
|
real(kind=jprb),
|
public, |
allocatable, dimension(:,:)
|
:: |
g_frac_lw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_albedo_from_band_sw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_emiss_from_band_lw |
|
|
|
|
real(kind=jprb),
|
public, |
allocatable, dimension(:,:)
|
:: |
sw_albedo_weights |
|
|
|
|
real(kind=jprb),
|
public, |
allocatable, dimension(:,:)
|
:: |
lw_emiss_weights |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_band_from_g_lw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_band_from_g_sw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_g_from_reordered_g_lw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_g_from_reordered_g_sw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_band_from_reordered_g_lw |
|
|
|
|
integer,
|
public, |
allocatable, dimension(:)
|
:: |
i_band_from_reordered_g_sw |
|
|
|
|
integer,
|
public, |
pointer, dimension(:)
|
:: |
i_spec_from_reordered_g_lw |
|
|
|
|
integer,
|
public, |
pointer, dimension(:)
|
:: |
i_spec_from_reordered_g_sw |
|
|
|
|
integer,
|
public |
|
:: |
n_canopy_bands_sw |
= |
1 |
|
|
integer,
|
public |
|
:: |
n_canopy_bands_lw |
= |
1 |
|
|
type(ckd_model_type),
|
public |
|
:: |
gas_optics_sw |
|
|
|
|
type(ckd_model_type),
|
public |
|
:: |
gas_optics_lw |
|
|
|
|
type(cloud_optics_type),
|
public |
|
:: |
cloud_optics |
|
|
|
|
integer,
|
public |
|
:: |
n_cloud_types |
= |
2 |
|
|
type(general_cloud_optics_type),
|
public, |
allocatable
|
:: |
cloud_optics_sw(:) |
|
|
|
|
type(general_cloud_optics_type),
|
public, |
allocatable
|
:: |
cloud_optics_lw(:) |
|
|
|
|
type(aerosol_optics_type),
|
public |
|
:: |
aerosol_optics |
|
|
|
|
type(pdf_sampler_type),
|
public |
|
:: |
pdf_sampler |
|
|
|
|
character(len=511),
|
public |
|
:: |
ice_optics_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
liq_optics_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
aerosol_optics_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
gas_optics_sw_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
gas_optics_lw_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
ssi_file_name |
|
|
|
|
character(len=511),
|
public |
|
:: |
cloud_pdf_file_name |
|
|
|
|
integer,
|
public |
|
:: |
n_g_sw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_g_lw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_bands_sw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_bands_lw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_spec_sw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_spec_lw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_wav_frac_sw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_wav_frac_lw |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_g_lw_if_scattering |
= |
0 |
|
|
integer,
|
public |
|
:: |
n_bands_lw_if_scattering |
= |
0 |
|
|
logical,
|
public |
|
:: |
is_homogeneous |
= |
.false. |
|
|
logical,
|
public |
|
:: |
do_clouds |
= |
.true. |
|