1
2! KGEN-generated Fortran source file
3!
4! Filename    : mo_radiation_parameters.f90
5! Generated at: 2015-02-19 15:30:29
6! KGEN version: 0.4.4
7
8
9
10    MODULE mo_radiation_parameters
11        USE mo_kind, ONLY: wp
12        IMPLICIT NONE
13        PRIVATE
14        PUBLIC i_overlap, l_do_sep_clear_sky
15        PUBLIC rad_undef
16        ! Standalone radiative transfer parameters
17        PUBLIC do_gpoint ! Standalone use only
18        ! 1.0 NAMELIST global variables and parameters
19        ! --------------------------------
20        !< diurnal cycle
21        !< &! switch on/off diagnostic
22        !of instantaneous aerosol solar (lradforcing(1)) and
23        !thermal (lradforcing(2)) radiation forcing
24        !< switch to specify perpetual vsop87 year
25        !< year if (lyr_perp == .TRUE.)
26        !< 0=annual cycle; 1-12 for perpetual month
27        ! nmonth currently works for zonal mean ozone and the orbit (year 1987) only
28        !< mode of solar constant calculation
29        !< default is rrtm solar constant
30        !< number of shortwave bands, set in setup
31        ! Spectral sampling
32        ! 1 is broadband, 2 is MCSI, 3 and up are teams
33        ! Number of g-points per time step using MCSI
34        ! Integer for perturbing random number seeds
35        ! Use unique spectral samples under MCSI? Not yet implemented
36        INTEGER :: do_gpoint = 0 ! Standalone use only - specify gpoint to use
37        ! Radiation driver
38        LOGICAL :: l_do_sep_clear_sky = .true. ! Compute clear-sky fluxes by removing clouds
39        INTEGER :: i_overlap = 1 ! 1 = max-ran, 2 = max, 3 = ran
40        ! Use separate water vapor amounts in clear, cloudy skies
41        !
42        ! --- Switches for radiative agents
43        !
44        !< water vapor, clouds and ice for radiation
45        !< carbon dioxide
46        !< methane
47        !< ozone
48        !< molecular oxygen
49        !< nitrous oxide
50        !< cfc11 and cfc12
51        !< greenhouse gase scenario
52        !< aerosol model
53        !< factor for external co2 scenario (ico2=4)
54        !
55        ! --- Default gas volume mixing ratios - 1990 values (CMIP5)
56        !
57        !< CO2
58        !< CH4
59        !< O2
60        !< N20
61        !< CFC 11 and CFC 12
62        !
63        ! 2.0 Non NAMELIST global variables and parameters
64        ! --------------------------------
65        !
66        ! --- radiative transfer parameters
67        !
68        !< LW Emissivity Factor
69        !< LW Diffusivity Factor
70        REAL(KIND=wp), parameter :: rad_undef = -999._wp
71        !
72        !
73        !< default solar constant [W/m2] for
74        !  AMIP-type CMIP5 simulation
75        !++hs
76        !< local (orbit relative and possibly
77        !                                            time dependent) solar constant
78        !< orbit and time dependent solar constant for radiation time step
79        !< fraction of TSI in the 14 RRTM SW bands
80        !--hs
81        !< solar declination at current time step
82        !
83        ! 3.0 Variables computed by routines in mo_radiation (export to submodels)
84        ! --------------------------------
85        !
86        ! setup_radiation
87            PUBLIC read_externs_mo_radiation_parameters
88        CONTAINS
89
90        ! module extern variables
91
92        SUBROUTINE read_externs_mo_radiation_parameters(kgen_unit)
93        integer, intent(in) :: kgen_unit
94        READ(UNIT=kgen_unit) do_gpoint
95        READ(UNIT=kgen_unit) l_do_sep_clear_sky
96        READ(UNIT=kgen_unit) i_overlap
97        END SUBROUTINE read_externs_mo_radiation_parameters
98
99
100        ! read subroutines
101        !---------------------------------------------------------------------------
102        !>
103        !! @brief Scans a block and fills with solar parameters
104        !!
105        !! @remarks: This routine calculates the solar zenith angle for each
106        !! point in a block of data.  For simulations with no dirunal cycle
107        !! the cosine of the zenith angle is set to its average value (assuming
108        !! negatives to be zero and for a day divided into nds intervals).
109        !! Additionally a field is set indicating the fraction of the day over
110        !! which the solar zenith angle is greater than zero.  Otherwise the field
111        !! is set to 1 or 0 depending on whether the zenith angle is greater or
112        !! less than 1.
113        !
114
115    END MODULE mo_radiation_parameters
116