MONC
lw_control_default_mod.F90
Go to the documentation of this file.
1 ! *****************************COPYRIGHT*******************************
2 ! (C) Crown copyright Met Office. All rights reserved.
3 ! For further details please refer to the file COPYRIGHT.txt
4 ! which you should have received as part of this distribution.
5 ! *****************************COPYRIGHT*******************************
6 
7 ! Subroutine to set the default values of the control structure.
8 
9 ! Description:
10 ! Performs suitable default initializations of the controlling
11 ! structure for LW radiation.
12 
13 ! Code Owner: Please refer to the UM file CodeOwners.txt
14 ! This file belongs in section: Radiation Control
15 
17 
18 CONTAINS
19 
20 SUBROUTINE lw_control_default(lw_control)
21 
22 USE def_control, ONLY: strctrl
23 USE yomhook, ONLY: lhook, dr_hook
24 USE parkind1, ONLY: jprb, jpim
25 USE rad_pcf, ONLY: ip_infra_red, ip_two_stream, ip_elsasser, &
26  ip_solver_homogen_direct, ip_trunc_azim_sym, &
27  ip_sph_direct, ip_sph_mode_rad,ip_max_rand, &
28  ip_homogeneous, ip_overlap_k_eqv_scl, &
29  ip_cloud_ice_water, ip_scatter_full
30 
31 IMPLICIT NONE
32 
33 TYPE (StrCtrl), INTENT(INOUT) :: lw_control
34 ! The block of controlling options for the code
35 
36 INTEGER(KIND=jpim), PARAMETER :: zhook_in = 0
37 INTEGER(KIND=jpim), PARAMETER :: zhook_out = 1
38 REAL(KIND=jprb) :: zhook_handle
39 
40 
41 IF (lhook) CALL dr_hook('LW_CONTROL_DEFAULT',zhook_in,zhook_handle)
42 
43 ! Spectral region and bands
44 lw_control%isolir = ip_infra_red
45 lw_control%first_band = 1
46 
47 ! Physical processes
48 lw_control%l_gas = .true.
49 lw_control%l_continuum = .true.
50 lw_control%l_cloud = .true.
51 lw_control%l_drop = .true.
52 lw_control%l_ice = .true.
53 lw_control%l_aerosol = .false.
54 lw_control%l_aerosol_ccn = .false.
55 
56 ! Properties of clouds
57 lw_control%l_local_cnv_partition = .false.
58 lw_control%l_global_cloud_top = .true.
59 
60 ! Angular integration (including algorithmic options)
61 lw_control%n_channel = 1
62 lw_control%i_angular_integration = ip_two_stream
63 lw_control%i_2stream = ip_elsasser
64 lw_control%i_solver_clear = ip_solver_homogen_direct
65 lw_control%n_order_gauss = 0
66 lw_control%i_truncation = ip_trunc_azim_sym
67 lw_control%i_sph_algorithm = ip_sph_direct
68 lw_control%n_order_phase_solar = 1
69 lw_control%ls_global_trunc = 9
70 lw_control%ms_min = 0
71 lw_control%ms_max = 0
72 lw_control%ls_brdf_trunc = 0
73 lw_control%accuracy_adaptive = 1.0e-04
74 lw_control%l_rescale = .true.
75 lw_control%l_henyey_greenstein_pf = .true.
76 lw_control%i_sph_mode = ip_sph_mode_rad
77 lw_control%i_solar_src = 3
78 lw_control%l_ir_source_quad = .false.
79 
80 ! Satellite data
81 lw_control%sat_hgt = 0.0
82 lw_control%sat_lon = 0.0
83 lw_control%sat_lat = 0.0
84 lw_control%max_view_lon = 0.0
85 lw_control%min_view_lon = 0.0
86 lw_control%max_view_lat = 0.0
87 lw_control%min_view_lat = 0.0
88 
89 ! Originally in lw_rad_iput, defaults do not need to change for MONC
90 lw_control%l_solar_tail_flux = .false.
91 lw_control%i_gas_overlap = 2 ! set to 2 (random overlap, slow) 1 = water vapour only
92 ! ! 5 = fast gas overlap
93 lw_control%i_gas = 2 ! forces gas to be vapour only when i_gas_overlap = 1
94 lw_control%i_cloud_representation = ip_cloud_ice_water
95 lw_control%i_overlap = ip_max_rand
96 lw_control%i_inhom = ip_homogeneous
97 lw_control%l_n2o = .true.
98 lw_control%l_ch4 = .true.
99 lw_control%l_o3 = .true.
100 lw_control%l_h2o = .true.
101 lw_control%l_co2 = .true.
102 lw_control%l_cfc11 = .true.
103 lw_control%l_cfc12 = .true.
104 lw_control%l_cfc113 = .true.
105 lw_control%l_cfc114 = .true.
106 lw_control%l_hcfc22 = .true.
107 lw_control%l_hfc125 = .true.
108 lw_control%l_hfc134a = .true.
109 lw_control%l_co = .false.
110 lw_control%l_nh3 = .false.
111 lw_control%l_tio = .false.
112 lw_control%l_vo = .false.
113 lw_control%l_h2 = .false.
114 lw_control%l_he = .false.
115 lw_control%l_na = .false.
116 lw_control%l_k = .false.
117 lw_control%i_st_water = 5
118 lw_control%i_cnv_water = 5
119 lw_control%i_st_ice = 8
120 lw_control%i_cnv_ice = 8
121 lw_control%i_scatter_method = ip_scatter_full
122 lw_control%l_microphysics = .true.
123 
124 IF (lhook) CALL dr_hook('LW_CONTROL_DEFAULT',zhook_out,zhook_handle)
125 
126 END SUBROUTINE lw_control_default
127 
128 END MODULE lw_control_default_mod
parkind1
Definition: parkind1.F90:7
lw_control_default_mod
Definition: lw_control_default_mod.F90:16
yomhook
Definition: yomhook.F90:7
lw_control_default_mod::lw_control_default
subroutine lw_control_default(lw_control)
Definition: lw_control_default_mod.F90:21
parkind1::jprb
integer, parameter jprb
Definition: parkind1.F90:24
yomhook::lhook
logical, parameter lhook
Definition: yomhook.F90:22
yomhook::dr_hook
subroutine dr_hook(name, code, handle)
Definition: yomhook.F90:27
parkind1::jpim
integer, parameter jpim
Definition: parkind1.F90:23