source: palm/trunk/LIB/rrtmg/parrrsw.f90 @ 4150

Last change on this file since 4150 was 1585, checked in by maronga, 10 years ago

Added support for RRTMG radiation code

File size: 4.8 KB
Line 
1
2      module parrrsw
3
4      use parkind ,only : im => kind_im, rb => kind_rb
5
6      implicit none
7      save
8
9!------------------------------------------------------------------
10! rrtmg_sw main parameters
11!
12! Initial version:  JJMorcrette, ECMWF, jul1998
13! Revised: MJIacono, AER, jun2006
14! Revised: MJIacono, AER, aug2008
15!------------------------------------------------------------------
16
17!  name     type     purpose
18! -----  :  ----   : ----------------------------------------------
19! mxlay  :  integer: maximum number of layers
20! mg     :  integer: number of original g-intervals per spectral band
21! nbndsw :  integer: number of spectral bands
22! naerec :  integer: number of aerosols (iaer=6, ecmwf aerosol option)
23! ngptsw :  integer: total number of reduced g-intervals for rrtmg_lw
24! ngNN   :  integer: number of reduced g-intervals per spectral band
25! ngsNN  :  integer: cumulative number of g-intervals per band
26!------------------------------------------------------------------
27
28      integer(kind=im), parameter :: mxlay  = 203    !jplay, klev
29      integer(kind=im), parameter :: mg     = 16     !jpg
30      integer(kind=im), parameter :: nbndsw = 14     !jpsw, ksw
31      integer(kind=im), parameter :: naerec  = 6     !jpaer
32      integer(kind=im), parameter :: mxmol  = 38
33      integer(kind=im), parameter :: nstr   = 2
34      integer(kind=im), parameter :: nmol   = 7
35! Use for 112 g-point model   
36      integer(kind=im), parameter :: ngptsw = 112    !jpgpt
37! Use for 224 g-point model   
38!      integer(kind=im), parameter :: ngptsw = 224   !jpgpt
39
40! may need to rename these - from v2.6
41      integer(kind=im), parameter :: jpband   = 29
42      integer(kind=im), parameter :: jpb1     = 16   !istart
43      integer(kind=im), parameter :: jpb2     = 29   !iend
44
45      integer(kind=im), parameter :: jmcmu    = 32
46      integer(kind=im), parameter :: jmumu    = 32
47      integer(kind=im), parameter :: jmphi    = 3
48      integer(kind=im), parameter :: jmxang   = 4
49      integer(kind=im), parameter :: jmxstr   = 16
50! ^
51
52! Use for 112 g-point model   
53      integer(kind=im), parameter :: ng16 = 6
54      integer(kind=im), parameter :: ng17 = 12
55      integer(kind=im), parameter :: ng18 = 8
56      integer(kind=im), parameter :: ng19 = 8
57      integer(kind=im), parameter :: ng20 = 10
58      integer(kind=im), parameter :: ng21 = 10
59      integer(kind=im), parameter :: ng22 = 2
60      integer(kind=im), parameter :: ng23 = 10
61      integer(kind=im), parameter :: ng24 = 8
62      integer(kind=im), parameter :: ng25 = 6
63      integer(kind=im), parameter :: ng26 = 6
64      integer(kind=im), parameter :: ng27 = 8
65      integer(kind=im), parameter :: ng28 = 6
66      integer(kind=im), parameter :: ng29 = 12
67
68      integer(kind=im), parameter :: ngs16 = 6
69      integer(kind=im), parameter :: ngs17 = 18
70      integer(kind=im), parameter :: ngs18 = 26
71      integer(kind=im), parameter :: ngs19 = 34
72      integer(kind=im), parameter :: ngs20 = 44
73      integer(kind=im), parameter :: ngs21 = 54
74      integer(kind=im), parameter :: ngs22 = 56
75      integer(kind=im), parameter :: ngs23 = 66
76      integer(kind=im), parameter :: ngs24 = 74
77      integer(kind=im), parameter :: ngs25 = 80
78      integer(kind=im), parameter :: ngs26 = 86
79      integer(kind=im), parameter :: ngs27 = 94
80      integer(kind=im), parameter :: ngs28 = 100
81      integer(kind=im), parameter :: ngs29 = 112
82
83! Use for 224 g-point model   
84!      integer(kind=im), parameter :: ng16 = 16
85!      integer(kind=im), parameter :: ng17 = 16
86!      integer(kind=im), parameter :: ng18 = 16
87!      integer(kind=im), parameter :: ng19 = 16
88!      integer(kind=im), parameter :: ng20 = 16
89!      integer(kind=im), parameter :: ng21 = 16
90!      integer(kind=im), parameter :: ng22 = 16
91!      integer(kind=im), parameter :: ng23 = 16
92!      integer(kind=im), parameter :: ng24 = 16
93!      integer(kind=im), parameter :: ng25 = 16
94!      integer(kind=im), parameter :: ng26 = 16
95!      integer(kind=im), parameter :: ng27 = 16
96!      integer(kind=im), parameter :: ng28 = 16
97!      integer(kind=im), parameter :: ng29 = 16
98
99!      integer(kind=im), parameter :: ngs16 = 16
100!      integer(kind=im), parameter :: ngs17 = 32
101!      integer(kind=im), parameter :: ngs18 = 48
102!      integer(kind=im), parameter :: ngs19 = 64
103!      integer(kind=im), parameter :: ngs20 = 80
104!      integer(kind=im), parameter :: ngs21 = 96
105!      integer(kind=im), parameter :: ngs22 = 112
106!      integer(kind=im), parameter :: ngs23 = 128
107!      integer(kind=im), parameter :: ngs24 = 144
108!      integer(kind=im), parameter :: ngs25 = 160
109!      integer(kind=im), parameter :: ngs26 = 176
110!      integer(kind=im), parameter :: ngs27 = 192
111!      integer(kind=im), parameter :: ngs28 = 208
112!      integer(kind=im), parameter :: ngs29 = 224
113
114! Source function solar constant
115      real(kind=rb), parameter :: rrsw_scon = 1.36822e+03     ! W/m2
116 
117      end module parrrsw
118
119
Note: See TracBrowser for help on using the repository browser.