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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 155 - (show annotations)
Wed Jul 8 17:03:45 2015 UTC (8 years, 10 months ago) by guez
File size: 3713 byte(s)
Do not write any longer to startphy.nc nor read from restartphy.nc the
NetCDF variable ALBLW: it was the same than ALBE. ALBE was for the
visible and ALBLW for the near infrared. In physiq, use only variables
falbe and albsol, removed falblw and albsollw. See revision 888 of
LMDZ.

Removed unused arguments pdp of SUBROUTINE lwbv, ptave of SUBROUTINE
lwv, kuaer of SUBROUTINE lwvd, nq of SUBROUTINE initphysto.

1 module lwv_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE lwv(kuaer, ktraer, klim, pabcu, pb, pbint, pbsuin, pbsur, pbtop, &
8 pdbsl, pemis, ppmb, pga, pgb, pgasur, pgbsur, pgatop, pgbtop, &
9 pcntrb, pcts, pfluc)
10 USE dimens_m
11 USE dimphy
12 use lwvd_m, only: lwvd
13 USE suphec_m
14 USE raddim
15 USE raddimlw
16
17 ! -----------------------------------------------------------------------
18 ! PURPOSE.
19 ! --------
20 ! CARRIES OUT THE VERTICAL INTEGRATION TO GIVE LONGWAVE
21 ! FLUXES OR RADIANCES
22
23 ! METHOD.
24 ! -------
25
26 ! 1. PERFORMS THE VERTICAL INTEGRATION DISTINGUISHING BETWEEN
27 ! CONTRIBUTIONS BY - THE NEARBY LAYERS
28 ! - THE DISTANT LAYERS
29 ! - THE BOUNDARY TERMS
30 ! 2. COMPUTES THE CLEAR-SKY DOWNWARD AND UPWARD EMISSIVITIES.
31
32 ! REFERENCE.
33 ! ----------
34
35 ! SEE RADIATION'S PART OF THE MODEL'S DOCUMENTATION AND
36 ! ECMWF RESEARCH DEPARTMENT DOCUMENTATION OF THE IFS
37
38 ! AUTHOR.
39 ! -------
40 ! JEAN-JACQUES MORCRETTE *ECMWF*
41
42 ! MODIFICATIONS.
43 ! --------------
44 ! ORIGINAL : 89-07-14
45 ! -----------------------------------------------------------------------
46
47 ! * ARGUMENTS:
48 INTEGER kuaer, ktraer, klim
49
50 DOUBLE PRECISION pabcu(kdlon, nua, 3*kflev+1) ! EFFECTIVE ABSORBER AMOUNTS
51 DOUBLE PRECISION pb(kdlon, ninter, kflev+1) ! SPECTRAL HALF-LEVEL PLANCK FUNCTIONS
52 DOUBLE PRECISION pbint(kdlon, kflev+1) ! HALF-LEVEL PLANCK FUNCTIONS
53 DOUBLE PRECISION pbsur(kdlon, ninter) ! SURFACE SPECTRAL PLANCK FUNCTION
54 DOUBLE PRECISION pbsuin(kdlon) ! SURFACE PLANCK FUNCTION
55 DOUBLE PRECISION pbtop(kdlon, ninter) ! T.O.A. SPECTRAL PLANCK FUNCTION
56 DOUBLE PRECISION pdbsl(kdlon, ninter, kflev*2) ! SUB-LAYER PLANCK FUNCTION GRADIENT
57 DOUBLE PRECISION pemis(kdlon) ! SURFACE EMISSIVITY
58 DOUBLE PRECISION ppmb(kdlon, kflev+1) ! HALF-LEVEL PRESSURE (MB)
59 DOUBLE PRECISION pga(kdlon, 8, 2, kflev) ! PADE APPROXIMANTS
60 DOUBLE PRECISION pgb(kdlon, 8, 2, kflev) ! PADE APPROXIMANTS
61 DOUBLE PRECISION pgasur(kdlon, 8, 2) ! PADE APPROXIMANTS
62 DOUBLE PRECISION pgbsur(kdlon, 8, 2) ! PADE APPROXIMANTS
63 DOUBLE PRECISION pgatop(kdlon, 8, 2) ! PADE APPROXIMANTS
64 DOUBLE PRECISION pgbtop(kdlon, 8, 2) ! PADE APPROXIMANTS
65
66 DOUBLE PRECISION pcntrb(kdlon, kflev+1, kflev+1) ! CLEAR-SKY ENERGY EXCHANGE MATRIX
67 DOUBLE PRECISION pcts(kdlon, kflev) ! COOLING-TO-SPACE TERM
68 DOUBLE PRECISION pfluc(kdlon, 2, kflev+1) ! CLEAR-SKY RADIATIVE FLUXES
69 ! -----------------------------------------------------------------------
70 ! LOCAL VARIABLES:
71 DOUBLE PRECISION zadjd(kdlon, kflev+1)
72 DOUBLE PRECISION zadju(kdlon, kflev+1)
73 DOUBLE PRECISION zdbdt(kdlon, ninter, kflev)
74 DOUBLE PRECISION zdisd(kdlon, kflev+1)
75 DOUBLE PRECISION zdisu(kdlon, kflev+1)
76
77 INTEGER jk, jl
78 ! -----------------------------------------------------------------------
79
80 DO jk = 1, kflev + 1
81 DO jl = 1, kdlon
82 zadjd(jl, jk) = 0.
83 zadju(jl, jk) = 0.
84 zdisd(jl, jk) = 0.
85 zdisu(jl, jk) = 0.
86 END DO
87 END DO
88
89 DO jk = 1, kflev
90 DO jl = 1, kdlon
91 pcts(jl, jk) = 0.
92 END DO
93 END DO
94
95 ! * CONTRIBUTION FROM ADJACENT LAYERS
96
97 CALL lwvn(kuaer, ktraer, pabcu, pdbsl, pga, pgb, zadjd, zadju, pcntrb, &
98 zdbdt)
99 ! * CONTRIBUTION FROM DISTANT LAYERS
100
101 CALL lwvd(ktraer, pabcu, zdbdt, pga, pgb, pcntrb, zdisd, zdisu)
102
103 ! * EXCHANGE WITH THE BOUNDARIES
104
105 CALL lwvb(kuaer, ktraer, klim, pabcu, zadjd, zadju, pb, pbint, pbsuin, &
106 pbsur, pbtop, zdisd, zdisu, pemis, ppmb, pga, pgb, pgasur, pgbsur, &
107 pgatop, pgbtop, pcts, pfluc)
108
109
110 RETURN
111 END SUBROUTINE lwv
112
113 end module lwv_m

  ViewVC Help
Powered by ViewVC 1.1.21