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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 71 - (show annotations)
Mon Jul 8 18:12:18 2013 UTC (10 years, 9 months ago) by guez
File size: 3046 byte(s)
No reason to call inidissip in ce0l.

In inidissip, set random seed to 1 beacuse PGI compiler does not
accept all zeros.

dq was computed needlessly in caladvtrac. Arguments masse and dq of
calfis not used.

Replaced real*8 by double precision.

Pass arrays with inverted order of vertical levels to conflx instead
of creating local variables for this inside conflx.

1 SUBROUTINE LWBV(KLIM,PDP,PDT0,PEMIS,PPMB,PTL,PTAVE,PABCU,
2 S PFLUC,PBINT,PBSUI,PCTS,PCNTRB)
3 use dimens_m
4 use dimphy
5 use SUPHEC_M
6 use raddim
7 use raddimlw
8 IMPLICIT none
9 C
10 C PURPOSE.
11 C --------
12 C TO COMPUTE THE PLANCK FUNCTION AND PERFORM THE
13 C VERTICAL INTEGRATION. SPLIT OUT FROM LW FOR MEMORY
14 C SAVING
15 C
16 C METHOD.
17 C -------
18 C
19 C 1. COMPUTES THE PLANCK FUNCTIONS ON THE INTERFACES AND THE
20 C GRADIENT OF PLANCK FUNCTIONS IN THE LAYERS.
21 C 2. PERFORMS THE VERTICAL INTEGRATION DISTINGUISHING THE CON-
22 C TRIBUTIONS OF THE ADJACENT AND DISTANT LAYERS AND THOSE FROM THE
23 C BOUNDARIES.
24 C 3. COMPUTES THE CLEAR-SKY COOLING RATES.
25 C
26 C REFERENCE.
27 C ----------
28 C
29 C SEE RADIATION'S PART OF THE MODEL'S DOCUMENTATION AND
30 C ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS
31 C
32 C AUTHOR.
33 C -------
34 C JEAN-JACQUES MORCRETTE *ECMWF*
35 C
36 C MODIFICATIONS.
37 C --------------
38 C ORIGINAL : 89-07-14
39 C MODIFICATION : 93-10-15 M.HAMRUD (SPLIT OUT FROM LW TO SAVE
40 C MEMORY)
41 C-----------------------------------------------------------------------
42 C* ARGUMENTS:
43 INTEGER KLIM
44 C
45 DOUBLE PRECISION PDP(KDLON,KFLEV)
46 DOUBLE PRECISION PDT0(KDLON)
47 DOUBLE PRECISION PEMIS(KDLON)
48 DOUBLE PRECISION PPMB(KDLON,KFLEV+1)
49 DOUBLE PRECISION PTL(KDLON,KFLEV+1)
50 DOUBLE PRECISION PTAVE(KDLON,KFLEV)
51 C
52 DOUBLE PRECISION PFLUC(KDLON,2,KFLEV+1)
53 C
54 DOUBLE PRECISION PABCU(KDLON,NUA,3*KFLEV+1)
55 DOUBLE PRECISION PBINT(KDLON,KFLEV+1)
56 DOUBLE PRECISION PBSUI(KDLON)
57 DOUBLE PRECISION PCTS(KDLON,KFLEV)
58 DOUBLE PRECISION PCNTRB(KDLON,KFLEV+1,KFLEV+1)
59 C
60 C-------------------------------------------------------------------------
61 C
62 C* LOCAL VARIABLES:
63 DOUBLE PRECISION ZB(KDLON,Ninter,KFLEV+1)
64 DOUBLE PRECISION ZBSUR(KDLON,Ninter)
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)
69 DOUBLE PRECISION ZGASUR(KDLON,8,2)
70 DOUBLE PRECISION ZGBSUR(KDLON,8,2)
71 DOUBLE PRECISION ZGATOP(KDLON,8,2)
72 DOUBLE PRECISION ZGBTOP(KDLON,8,2)
73 C
74 INTEGER nuaer, ntraer
75 C ------------------------------------------------------------------
76 C* COMPUTES PLANCK FUNCTIONS:
77 CALL LWB(PDT0,PTAVE,PTL,
78 S ZB,PBINT,PBSUI,ZBSUR,ZBTOP,ZDBSL,
79 S ZGA,ZGB,ZGASUR,ZGBSUR,ZGATOP,ZGBTOP)
80 C ------------------------------------------------------------------
81 C* PERFORMS THE VERTICAL INTEGRATION:
82 NUAER = NUA
83 NTRAER = NTRA
84 CALL LWV(NUAER,NTRAER, KLIM
85 R , PABCU,ZB,PBINT,PBSUI,ZBSUR,ZBTOP,ZDBSL,PEMIS,PPMB,PTAVE
86 R , ZGA,ZGB,ZGASUR,ZGBSUR,ZGATOP,ZGBTOP
87 S , PCNTRB,PCTS,PFLUC)
88 C ------------------------------------------------------------------
89 RETURN
90 END

  ViewVC Help
Powered by ViewVC 1.1.21