LMDZ
susurf.h
Go to the documentation of this file.
1 SUBROUTINE SUSURF(KSW,KCSS,KSIL,KTILES,KTSW,&
2  & LD_LLCCNL,LD_LLCCNO,LD_LEOCWA,LD_LEOCCO,LD_LEOCSA,LD_LLE4ALB,&
3  & LD_LSCMEC,LD_LROUGH,PEXTZ0M,PEXTZ0H,&
4  & PTHRFRTI,PTSTAND,PXP,PRCCNSEA,PRCCNLND,&
5  & PRSUN)
6 
7 !** *SUSURF* IS THE SET-UP ROUTINE FOR surface modules containing constants
8 
9 ! PURPOSE
10 ! -------
11 ! THIS ROUTINE INITIALIZES THE CONSTANTS IN COMMON BLOCK
12 ! *YOESOIL*
13 
14 ! INTERFACE.
15 ! ----------
16 ! CALL *SUSURF* FROM *SUPHEC*
17 
18 ! METHOD.
19 ! -------
20 
21 ! EXTERNALS.
22 ! ----------
23 
24 ! REFERENCE.
25 ! ----------
26 
27 ! Original A.C.M. BELJAARS E.C.M.W.F. 89/11/02
28 ! MODIFICATIONS
29 ! -------------
30 ! J.-J. MORCRETTE E.C.M.W.F. 91/07/14
31 ! P. VITERBO E.C.M.W.F. 8/10/93
32 ! P. Viterbo 99-03-26 Tiling of the land surface
33 ! C. Fischer 00-12-20 Meteo-France recode initialization of rdat to avoid
34 ! memory overflow on SUN workstation
35 ! J.F. Estrade *ECMWF* 03-10-01 move in surf vob
36 ! M.Hamrud 01-Oct-2003 CY28 Cleaning
37 ! P. Viterbo ECMWF 03-12-2004 Include user-defined RTHRFRTI
38 ! P. Viterbo ECMWF May 2005 Externalise surf
39 ! JJMorcrette 20060511 MODIS albedo
40 
41 ! INTERFACE:
42 
43 ! Integers (In):
44 
45 ! KSW : NUMBER OF SHORTWAVE SPECTRAL INTERVALS
46 ! KCSS : Number of soil levels
47 ! KSIL : NUMBER OF (infrared) SPECTRAL INTERVALS
48 ! KTILES : Number of surface tiles
49 ! KTSW : Maximum possible number of sw spectral intervals
50 
51 ! Logicals (In):
52 
53 ! LD_LLCCNL : .T. IF CCN CONCENTRATION OVER LAND IS DIAGNOSED
54 ! LD_LLCCNO : .T. IF CCN CONCENTRATION OVER OCEAN IS DIAGNOSED
55 ! LD_LLE4ALB: .T. IF MODIS ALBEDO IS USED
56 
57 ! Reals (In):
58 
59 ! PTHRFRTI : ! MINIMUM THRESHOLD FOR TILE FRACTION
60 ! PTSTAND : ! REFERENCE TEMPERATURE FOR TEMPERATURE DEPENDENCE
61 ! PXP : ! POLYNOMIAL COEFFICIENTS OF PLANCK FUNCTION
62 ! PRCCNSEA : ! NUMBER CONCENTRATION (CM-3) OF CCNs OVER SEA
63 ! PRCCNLND : ! NUMBER CONCENTRATION (CM-3) OF CCNs OVER LAND
64 ! PRSUN : ! SOLAR FRACTION IN SPECTRAL INTERVALS
65 
66 ! ------------------------------------------------------------------
67 
68 USE PARKIND1 ,ONLY : JPIM ,JPRB
69 
70 IMPLICIT NONE
71 
72 ! Declaration of arguments
73 
74 INTEGER(KIND=JPIM),INTENT(IN) :: KSW
75 REAL(KIND=JPRB) ,INTENT(IN) :: PTHRFRTI
76 INTEGER(KIND=JPIM),INTENT(IN) :: KCSS
77 INTEGER(KIND=JPIM),INTENT(IN) :: KSIL
78 INTEGER(KIND=JPIM),INTENT(IN) :: KTILES
79 INTEGER(KIND=JPIM),INTENT(IN) :: KTSW
80 LOGICAL ,INTENT(IN) :: LD_LLCCNL
81 LOGICAL ,INTENT(IN) :: LD_LLCCNO
82 LOGICAL ,INTENT(IN) :: LD_LEOCWA
83 LOGICAL ,INTENT(IN) :: LD_LEOCCO
84 LOGICAL ,INTENT(IN) :: LD_LEOCSA
85 LOGICAL ,INTENT(IN) :: LD_LLE4ALB
86 LOGICAL ,INTENT(IN) :: LD_LSCMEC
87 LOGICAL ,INTENT(IN) :: LD_LROUGH
88 REAL(KIND=JPRB) ,INTENT(IN) :: PEXTZ0M
89 REAL(KIND=JPRB) ,INTENT(IN) :: PEXTZ0H
90 REAL(KIND=JPRB) ,INTENT(IN) :: PTSTAND
91 REAL(KIND=JPRB) ,INTENT(IN) :: PXP(6,6)
92 REAL(KIND=JPRB) ,INTENT(IN) :: PRCCNSEA
93 REAL(KIND=JPRB) ,INTENT(IN) :: PRCCNLND
94 REAL(KIND=JPRB) ,INTENT(IN) :: PRSUN(:)
95 
96 ! ------------------------------------------------------------------
97 
98 END SUBROUTINE SUSURF
subroutine sw(KIDIA, KFDIA, KLON, KLEV, KAER, PSCT, PCARDI, PPSOL, PALBD, PALBP, PWV, PQS, PRMU0, PCG, PCLDSW, PDP, POMEGA, POZ, PPMB, PTAU, PTAVE, PAER, PFDOWN, PFUP, PCDOWN, PCUP, PFDNN, PFDNV, PFUPN, PFUPV, PCDNN, PCDNV, PCUPN, PCUPV, PSUDU, PUVDF, PPARF, PPARCF, PDIFFS, PDIRFS, LRDUST, PPIZA_DST, PCGA_DST, PTAUREL_DST)
Definition: sw.F90:13
INTERFACE SUBROUTINE SRTM_SPCVRT KSW
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_ener_conserv REAL solaire REAL(kind=8) RCO2
ONLY JPIM
Definition: tsmbkind.h:5
INTERFACE SUBROUTINE JPRB INTEGER(KIND=JPIM)
!$Id klon IF(pctsrf(i, is_ter).GT.0.) THEN paire_ter(i)
ONLY JPRB
Definition: tsmbkind.h:5
Definition: albedo.F90:2
!$Id we still need to ONLY
Definition: 1DUTILS.h:34
INTERFACE SUBROUTINE SUPHEC(KULOUT) USE PARKIND1
subroutine soil(ptimestep, indice, knon, snow, ptsrf, ptsoil, pcapcal, pfluxgrd)
Definition: soil.F90:6