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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 213 - (show annotations)
Mon Feb 27 15:44:55 2017 UTC (7 years, 3 months ago) by guez
File size: 2872 byte(s)
Removed module conema3_m. Moved variables epmax and iflag_clw of
conema3_m to conf_phys_m, where they are defined. Removed unused
variable ok_adj_ema of conema3_m.

Added variables d_t_ec, dtsw0 and dtlw0 to histins.nc (following LMDZ).

Removed case not lessivage in phytrac. (Not used in LMDZ without INCA
either.)

1 module lwbv_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE lwbv(klim, pdt0, pemis, ppmb, ptl, ptave, pabcu, pfluc, &
8 pbint, pbsui, pcts, pcntrb)
9
10 USE dimens_m
11 USE dimphy
12 use lwv_m, only: lwv
13 USE suphec_m
14 USE raddim
15 USE raddimlw
16
17 ! PURPOSE.
18 ! --------
19 ! TO COMPUTE THE PLANCK FUNCTION AND PERFORM THE
20 ! VERTICAL INTEGRATION. SPLIT OUT FROM LW FOR MEMORY
21 ! SAVING
22
23 ! METHOD.
24 ! -------
25
26 ! 1. COMPUTES THE PLANCK FUNCTIONS ON THE INTERFACES AND THE
27 ! GRADIENT OF PLANCK FUNCTIONS IN THE LAYERS.
28 ! 2. PERFORMS THE VERTICAL INTEGRATION DISTINGUISHING THE CON-
29 ! TRIBUTIONS OF THE ADJACENT AND DISTANT LAYERS AND THOSE FROM THE
30 ! BOUNDARIES.
31 ! 3. COMPUTES THE CLEAR-SKY COOLING RATES.
32
33 ! REFERENCE.
34 ! ----------
35
36 ! SEE RADIATION'S PART OF THE MODEL'S DOCUMENTATION AND
37 ! ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS
38
39 ! AUTHOR.
40 ! -------
41 ! JEAN-JACQUES MORCRETTE *ECMWF*
42
43 ! MODIFICATIONS.
44 ! --------------
45 ! ORIGINAL : 89-07-14
46 ! MODIFICATION : 93-10-15 M.HAMRUD (SPLIT OUT FROM LW TO SAVE
47 ! MEMORY)
48 ! -----------------------------------------------------------------------
49 ! * ARGUMENTS:
50 INTEGER klim
51
52 DOUBLE PRECISION pdt0(kdlon)
53 DOUBLE PRECISION pemis(kdlon)
54 DOUBLE PRECISION ppmb(kdlon, kflev+1)
55 DOUBLE PRECISION ptl(kdlon, kflev+1)
56 DOUBLE PRECISION ptave(kdlon, kflev)
57
58 DOUBLE PRECISION pfluc(kdlon, 2, kflev+1)
59
60 DOUBLE PRECISION pabcu(kdlon, nua, 3*kflev+1)
61 DOUBLE PRECISION pbint(kdlon, kflev+1)
62 DOUBLE PRECISION pbsui(kdlon)
63 DOUBLE PRECISION pcts(kdlon, kflev)
64 DOUBLE PRECISION pcntrb(kdlon, kflev+1, kflev+1)
65
66 ! -------------------------------------------------------------------------
67
68 ! * LOCAL VARIABLES:
69 DOUBLE PRECISION zb(kdlon, ninter, kflev+1)
70 DOUBLE PRECISION zbsur(kdlon, ninter)
71 DOUBLE PRECISION zbtop(kdlon, ninter)
72 DOUBLE PRECISION zdbsl(kdlon, ninter, kflev*2)
73 DOUBLE PRECISION zga(kdlon, 8, 2, kflev)
74 DOUBLE PRECISION zgb(kdlon, 8, 2, kflev)
75 DOUBLE PRECISION zgasur(kdlon, 8, 2)
76 DOUBLE PRECISION zgbsur(kdlon, 8, 2)
77 DOUBLE PRECISION zgatop(kdlon, 8, 2)
78 DOUBLE PRECISION zgbtop(kdlon, 8, 2)
79
80 INTEGER nuaer, ntraer
81 ! ------------------------------------------------------------------
82 ! * COMPUTES PLANCK FUNCTIONS:
83 CALL lwb(pdt0, ptave, ptl, zb, pbint, pbsui, zbsur, zbtop, zdbsl, zga, &
84 zgb, zgasur, zgbsur, zgatop, zgbtop)
85 ! ------------------------------------------------------------------
86 ! * PERFORMS THE VERTICAL INTEGRATION:
87 nuaer = nua
88 ntraer = ntra
89 CALL lwv(nuaer, ntraer, klim, pabcu, zb, pbint, pbsui, zbsur, zbtop, &
90 zdbsl, pemis, ppmb, zga, zgb, zgasur, zgbsur, zgatop, zgbtop, pcntrb, &
91 pcts, pfluc)
92
93 END SUBROUTINE lwbv
94
95 end module lwbv_m

  ViewVC Help
Powered by ViewVC 1.1.21