source: trunk/LMDZ.TITAN/libf/phytitan/radinc_h.F90 @ 1862

Last change on this file since 1862 was 1822, checked in by jvatant, 7 years ago

Preliminary modifs for the optical coupling of haze
+ Moved inits of setspi/v before init of mufi
+ Added access to tarcers in optci/v
+ Some coherence in call to directories
JVO

File size: 3.4 KB
Line 
1module radinc_h
2
3  implicit none
4
5  include "bands.h"
6  include "scatterers.h"
7
8!======================================================================
9!
10!     RADINC.H
11!
12!     Includes for the radiation code; RADIATION LAYERS, LEVELS,
13!     number of spectral intervals. . .
14!
15!======================================================================
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
53      integer,save :: L_NLAYRAD  ! = nbp_lev ! set by ini_radinc_h
54      integer,save :: L_LEVELS   ! = 2*(nbp_lev-1)+3 ! set by ini_radinc_h
55      integer,save :: L_NLEVRAD  ! = nbp_lev+1 ! set by ini_radinc_h
56!$OMP THREADPRIVATE(L_NLAYRAD,L_LEVELS,L_NLEVRAD)
57
58      ! These are set in sugas_corrk
59      ! [uses allocatable arrays] -- AS 12/2011
60      integer :: L_NPREF, L_NTREF, L_REFVAR, L_PINT   !L_NPREF, L_NTREF, L_REFVAR, L_PINT read by master in sugas_corrk
61
62      integer, parameter :: L_NGAUSS  = 17
63
64      integer, parameter :: L_NSPECTI = NBinfrared
65      integer, parameter :: L_NSPECTV = NBvisible
66
67      real,    parameter :: L_TAUMAX  = 35
68
69      ! For Planck function integration:
70      ! equivalent temperatures are 1/NTfac of these values
71      integer, parameter :: NTstar = 500
72      integer, parameter :: NTstop = 15000 ! new default for all non hot Jupiter runs
73      real*8, parameter :: NTfac = 1.0D+1 
74      !integer, parameter :: NTstar = 1000
75      !integer, parameter :: NTstop = 25000
76      !real*8,parameter :: NTfac = 5.0D+1   
77      !integer, parameter :: NTstar = 2000
78      !integer, parameter :: NTstop = 50000
79      !real*8,parameter :: NTfac = 1.0D+2   
80
81contains
82
83  subroutine ini_radinc_h(nbp_lev)
84  ! Initialize module variables
85  implicit none
86  integer,intent(in) :: nbp_lev
87 
88  L_NLAYRAD = nbp_lev
89  L_LEVELS = 2*(nbp_lev-1)+3
90  L_NLEVRAD = nbp_lev+1
91 
92  end subroutine
93
94end module radinc_h
Note: See TracBrowser for help on using the repository browser.