/[lmdze]/trunk/Sources/phylmd/Radlwsw/lwbv.f
ViewVC logotype

Diff of /trunk/Sources/phylmd/Radlwsw/lwbv.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/libf/phylmd/Radlwsw/lwbv.f revision 71 by guez, Mon Jul 8 18:12:18 2013 UTC trunk/Sources/phylmd/Radlwsw/lwbv.f revision 168 by guez, Wed Sep 9 10:41:47 2015 UTC
# Line 1  Line 1 
1        SUBROUTINE LWBV(KLIM,PDP,PDT0,PEMIS,PPMB,PTL,PTAVE,PABCU,  module lwbv_m
2       S                PFLUC,PBINT,PBSUI,PCTS,PCNTRB)  
3        use dimens_m    IMPLICIT NONE
4        use dimphy  
5        use SUPHEC_M  contains
6        use raddim  
7              use raddimlw    SUBROUTINE lwbv(klim, pdt0, pemis, ppmb, ptl, ptave, pabcu, pfluc, &
8        IMPLICIT none         pbint, pbsui, pcts, pcntrb)
9  C  
10  C     PURPOSE.      USE dimens_m
11  C     --------      USE dimphy
12  C           TO COMPUTE THE PLANCK FUNCTION AND PERFORM THE      use lwv_m, only: lwv
13  C           VERTICAL INTEGRATION. SPLIT OUT FROM LW FOR MEMORY      USE suphec_m
14  C           SAVING      USE raddim
15  C      USE raddimlw
16  C     METHOD.  
17  C     -------      ! PURPOSE.
18  C      ! --------
19  C          1. COMPUTES THE PLANCK FUNCTIONS ON THE INTERFACES AND THE      ! TO COMPUTE THE PLANCK FUNCTION AND PERFORM THE
20  C     GRADIENT OF PLANCK FUNCTIONS IN THE LAYERS.      ! VERTICAL INTEGRATION. SPLIT OUT FROM LW FOR MEMORY
21  C          2. PERFORMS THE VERTICAL INTEGRATION DISTINGUISHING THE CON-      ! SAVING
22  C     TRIBUTIONS OF THE ADJACENT AND DISTANT LAYERS AND THOSE FROM THE  
23  C     BOUNDARIES.      ! METHOD.
24  C          3. COMPUTES THE CLEAR-SKY COOLING RATES.      ! -------
25  C  
26  C     REFERENCE.      ! 1. COMPUTES THE PLANCK FUNCTIONS ON THE INTERFACES AND THE
27  C     ----------      ! GRADIENT OF PLANCK FUNCTIONS IN THE LAYERS.
28  C      ! 2. PERFORMS THE VERTICAL INTEGRATION DISTINGUISHING THE CON-
29  C        SEE RADIATION'S PART OF THE MODEL'S DOCUMENTATION AND      ! TRIBUTIONS OF THE ADJACENT AND DISTANT LAYERS AND THOSE FROM THE
30  C        ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS      ! BOUNDARIES.
31  C      ! 3. COMPUTES THE CLEAR-SKY COOLING RATES.
32  C     AUTHOR.  
33  C     -------      ! REFERENCE.
34  C        JEAN-JACQUES MORCRETTE  *ECMWF*      ! ----------
35  C  
36  C     MODIFICATIONS.      ! SEE RADIATION'S PART OF THE MODEL'S DOCUMENTATION AND
37  C     --------------      ! ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS
38  C        ORIGINAL : 89-07-14  
39  C        MODIFICATION : 93-10-15 M.HAMRUD (SPLIT OUT FROM LW TO SAVE      ! AUTHOR.
40  C                                          MEMORY)      ! -------
41  C-----------------------------------------------------------------------      ! JEAN-JACQUES MORCRETTE  *ECMWF*
42  C* ARGUMENTS:  
43        INTEGER KLIM      ! MODIFICATIONS.
44  C      ! --------------
45        DOUBLE PRECISION PDP(KDLON,KFLEV)      ! ORIGINAL : 89-07-14
46        DOUBLE PRECISION PDT0(KDLON)      ! MODIFICATION : 93-10-15 M.HAMRUD (SPLIT OUT FROM LW TO SAVE
47        DOUBLE PRECISION PEMIS(KDLON)      ! MEMORY)
48        DOUBLE PRECISION PPMB(KDLON,KFLEV+1)      ! -----------------------------------------------------------------------
49        DOUBLE PRECISION PTL(KDLON,KFLEV+1)      ! * ARGUMENTS:
50        DOUBLE PRECISION PTAVE(KDLON,KFLEV)      INTEGER klim
51  C  
52        DOUBLE PRECISION PFLUC(KDLON,2,KFLEV+1)      DOUBLE PRECISION pdt0(kdlon)
53  C          DOUBLE PRECISION pemis(kdlon)
54        DOUBLE PRECISION PABCU(KDLON,NUA,3*KFLEV+1)      DOUBLE PRECISION ppmb(kdlon, kflev+1)
55        DOUBLE PRECISION PBINT(KDLON,KFLEV+1)      DOUBLE PRECISION ptl(kdlon, kflev+1)
56        DOUBLE PRECISION PBSUI(KDLON)      DOUBLE PRECISION ptave(kdlon, kflev)
57        DOUBLE PRECISION PCTS(KDLON,KFLEV)  
58        DOUBLE PRECISION PCNTRB(KDLON,KFLEV+1,KFLEV+1)      DOUBLE PRECISION pfluc(kdlon, 2, kflev+1)
59  C  
60  C-------------------------------------------------------------------------      DOUBLE PRECISION pabcu(kdlon, nua, 3*kflev+1)
61  C      DOUBLE PRECISION pbint(kdlon, kflev+1)
62  C* LOCAL VARIABLES:      DOUBLE PRECISION pbsui(kdlon)
63        DOUBLE PRECISION ZB(KDLON,Ninter,KFLEV+1)      DOUBLE PRECISION pcts(kdlon, kflev)
64        DOUBLE PRECISION ZBSUR(KDLON,Ninter)      DOUBLE PRECISION pcntrb(kdlon, kflev+1, kflev+1)
65        DOUBLE PRECISION ZBTOP(KDLON,Ninter)  
66        DOUBLE PRECISION ZDBSL(KDLON,Ninter,KFLEV*2)      ! -------------------------------------------------------------------------
67        DOUBLE PRECISION ZGA(KDLON,8,2,KFLEV)  
68        DOUBLE PRECISION ZGB(KDLON,8,2,KFLEV)      ! * LOCAL VARIABLES:
69        DOUBLE PRECISION ZGASUR(KDLON,8,2)      DOUBLE PRECISION zb(kdlon, ninter, kflev+1)
70        DOUBLE PRECISION ZGBSUR(KDLON,8,2)      DOUBLE PRECISION zbsur(kdlon, ninter)
71        DOUBLE PRECISION ZGATOP(KDLON,8,2)      DOUBLE PRECISION zbtop(kdlon, ninter)
72        DOUBLE PRECISION ZGBTOP(KDLON,8,2)      DOUBLE PRECISION zdbsl(kdlon, ninter, kflev*2)
73  C      DOUBLE PRECISION zga(kdlon, 8, 2, kflev)
74        INTEGER nuaer, ntraer      DOUBLE PRECISION zgb(kdlon, 8, 2, kflev)
75  C     ------------------------------------------------------------------      DOUBLE PRECISION zgasur(kdlon, 8, 2)
76  C* COMPUTES PLANCK FUNCTIONS:      DOUBLE PRECISION zgbsur(kdlon, 8, 2)
77         CALL LWB(PDT0,PTAVE,PTL,      DOUBLE PRECISION zgatop(kdlon, 8, 2)
78       S          ZB,PBINT,PBSUI,ZBSUR,ZBTOP,ZDBSL,      DOUBLE PRECISION zgbtop(kdlon, 8, 2)
79       S          ZGA,ZGB,ZGASUR,ZGBSUR,ZGATOP,ZGBTOP)  
80  C     ------------------------------------------------------------------      INTEGER nuaer, ntraer
81  C* PERFORMS THE VERTICAL INTEGRATION:      ! ------------------------------------------------------------------
82        NUAER = NUA      ! * COMPUTES PLANCK FUNCTIONS:
83        NTRAER = NTRA      CALL lwb(pdt0, ptave, ptl, zb, pbint, pbsui, zbsur, zbtop, zdbsl, zga, zgb, &
84        CALL LWV(NUAER,NTRAER, KLIM           zgasur, zgbsur, zgatop, zgbtop)
85       R  , PABCU,ZB,PBINT,PBSUI,ZBSUR,ZBTOP,ZDBSL,PEMIS,PPMB,PTAVE      ! ------------------------------------------------------------------
86       R  , ZGA,ZGB,ZGASUR,ZGBSUR,ZGATOP,ZGBTOP      ! * PERFORMS THE VERTICAL INTEGRATION:
87       S  , PCNTRB,PCTS,PFLUC)      nuaer = nua
88  C     ------------------------------------------------------------------      ntraer = ntra
89        RETURN      CALL lwv(nuaer, ntraer, klim, pabcu, zb, pbint, pbsui, zbsur, zbtop, &
90        END           zdbsl, pemis, ppmb, zga, zgb, zgasur, zgbsur, zgatop, zgbtop, pcntrb, &
91             pcts, pfluc)
92    
93      END SUBROUTINE lwbv
94    
95    end module lwbv_m

Legend:
Removed from v.71  
changed lines
  Added in v.168

  ViewVC Help
Powered by ViewVC 1.1.21