source: trunk/LMDZ.GENERIC/libf/phystd/radinc_h.F90 @ 374

Last change on this file since 374 was 368, checked in by rwordsworth, 13 years ago

.nc saves in physiq.F90 adapted to new diagfi.def format.
More info added to gases.def warnings.

File size: 5.2 KB
Line 
1      module radinc_h
2
3      implicit none
4
5#include "dimensions.h"
6#include "bands.h"
7
8!======================================================================C
9!
10!     RADINC.H    RADiation INCludes
11!
12!     Includes for the radiation code; RADIATION LAYERS, LEVELS,
13!     number of spectral intervals. . .
14!
15!======================================================================C
16
17!     RADIATION parameters
18
19!     In radiation code, layer 1 corresponds to the stratosphere.  Level
20!     1 is the top of the stratosphere.  The dummy layer is at the same
21!     temperature as the (vertically isothermal) stratosphere, and
22!     any time it is explicitly needed, the appropriate quantities will
23!     be dealt with (aka "top". . .)
24
25!     L_NLEVRAD corresponds to the surface - i.e., the GCM Level that
26!     is at the surface.  PLEV(L_NLEVRAD) = P(J,I)+PTROP,
27!     PLEV(2) = PTROP, PLEV(1) = ptop
28
29!     L_NLAYRAD is the number of radiation code layers
30!     L_NLEVRAD is the number of radiation code levels.  Level N is the
31!               top of layer N.
32!
33!     L_NSPECTI is the number of IR spectral intervals
34!     L_NSPECTV is the number of Visual(or Solar) spectral intervals
35!     L_NGAUSS  is the number of Gauss points for K-coefficients
36!               GAUSS POINT 17 (aka the last one) is the special case
37!
38!     L_NPREF   is the number of reference pressures that the
39!               k-coefficients are calculated on
40!     L_PINT    is the number of Lagrange interpolated reference
41!               pressures for the gas k-coefficients - now for a
42!               smaller p-grid than before
43!     L_NTREF   is the number of reference temperatures for the
44!               k-coefficients
45!     L_TAUMAX  is the largest optical depth - larger ones are set
46!               to this value
47!
48!     L_REFVAR  The number of different mixing ratio values for
49!               the k-coefficients. Variable component of the mixture
50!               can in princple be anything: currently it's H2O.
51!
52!     NAERKIND  The number of radiatively active aerosol types
53!
54!     NSIZEMAX  The maximum number of aerosol particle sizes
55!
56!----------------------------------------------------------------------C
57
58      integer, parameter :: L_NLAYRAD  = llm
59      integer, parameter :: L_LEVELS   = 2*(llm-1)+3
60      integer, parameter :: L_NLEVRAD  = llm+1
61
62!     Below are various parameter combinations that will work for the
63!     radiative datasets indicated. For the moment, you must change these
64!     values manually before compiling, each time you want to change the
65!     dataset.
66 
67      integer, parameter :: L_NGAUSS  = 17
68
69      integer, parameter :: L_NPREF   = 9
70      integer, parameter :: L_NTREF   = 7
71      integer, parameter :: L_REFVAR  = 7   ! earth / earlymars
72!      ! CO2_H2Ovar / N2OCO2rich_H2Ovar / N2OCO2poor_H2Ovar
73!       integer, parameter :: L_REFVAR = 4    ! N2_CH4
74
75!      integer, parameter :: L_NPREF   = 8
76!      integer, parameter :: L_NTREF   = 11
77!      integer, parameter :: L_REFVAR  = 8   ! N2_H2Ovar
78
79!      integer, parameter :: L_NPREF   = 8
80!      integer, parameter :: L_NTREF   = 5
81!      integer, parameter :: L_REFVAR  = 1   ! therm_test2
82
83!      integer, parameter :: L_NPREF   = 12
84!      integer, parameter :: L_NTREF   = 20
85!      integer, parameter :: L_REFVAR  = 1   ! null (for H2 etc.)
86
87!      integer, parameter :: L_NPREF   = 10
88!      integer, parameter :: L_NTREF   = 5
89!      integer, parameter :: L_REFVAR  = 7   ! N2_CO2var
90
91!      integer, parameter :: L_NPREF   = 8
92!      integer, parameter :: L_NTREF   = 6
93!      integer, parameter :: L_REFVAR  = 1   ! pureCO2
94
95!      integer, parameter :: L_NPREF   = 7
96!      integer, parameter :: L_NTREF   = 5
97!      integer, parameter :: L_REFVAR  = 1   ! degraded_pure
98
99!      integer, parameter :: L_NPREF   = 9
100!      integer, parameter :: L_NTREF   = 14
101!      integer, parameter :: L_REFVAR  = 1   ! megaCO2
102
103      integer, parameter :: L_NSPECTI = NBinfrared
104      integer, parameter :: L_NSPECTV = NBvisible
105
106      integer, parameter :: L_PINT    = (L_NPREF-1)*5+1
107      integer, parameter :: NAERKIND  = 2
108      real,    parameter :: L_TAUMAX  = 35
109      !integer, parameter :: L_TAUMAX  = 35
110      !integer, parameter :: L_TAUMAX  = 40
111
112      ! For Planck function integration:
113      ! equivalent temperatures are 1/10 of these values
114      integer, parameter :: NTstar = 500
115      integer, parameter :: NTstop = 9000 ! new default for all non hot Jupiter runs
116      !integer, parameter :: NTstop = 6000 ! for GJ581d / earlymars runs
117
118! Maximum number of grain size classes
119! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
120!   This parameter has to be set to the maximum number of particle
121!   sizes contained in the optical parameter database; For example,
122!   if only one grain size is used to describe dust, and 30 are used
123!   to describe water-ice crystals in the visible and 15 in the IR,
124!   nsizemax has to be set to 30.
125!   If only one grain size is considered for all the aerosols, set
126!   this parameter to 1 and convolution will be turned off during
127!   the radiative calculations.
128
129      integer, parameter :: nsizemax = 60
130!      integer, parameter :: nsizemax = 1
131
132      character (len=20) :: corrkdir
133      save corrkdir
134
135      character (len=30) :: banddir
136      save banddir
137
138      end module radinc_h
Note: See TracBrowser for help on using the repository browser.