/[lmdze]/trunk/Sources/phylmd/CV30_routines/cv30_uncompress.f
ViewVC logotype

Contents of /trunk/Sources/phylmd/CV30_routines/cv30_uncompress.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 97 - (show annotations)
Fri Apr 25 14:58:31 2014 UTC (10 years ago) by guez
Original Path: trunk/phylmd/CV3_routines/cv3_uncompress.f
File size: 2641 byte(s)
Module pressure_var is now only used in gcm. Created local variables
pls and p3d in etat0, added argument p3d to regr_pr_o3.

In leapfrog, moved computation of p3d and exner function immediately
after integrd, for clarity (does not change the execution).

Removed unused arguments: ntra, tra1 and tra of cv3_compress; ntra,
tra and traent of cv3_mixing; ntra, ftra, ftra1 of cv3_uncompress;
ntra, tra, trap of cv3_unsat; ntra, tra, trap, traent, ftra of
cv3_yield; tra, tvp, pbase, bbase, dtvpdt1, dtvpdq1, dplcldt,
dplcldr, ntra of concvl; ndp1, ntra, tra1 of cv_driver

Removed argument d_tra and computation of d_tra in concvl. Removed
argument ftra1 and computation of ftra1 in cv_driver. ftra1 was just
set to 0 in cv_driver, associated to d_tra in concvl, and set again to
zero in concvl.

1 module cv3_uncompress_m
2
3 implicit none
4
5 contains
6
7 SUBROUTINE cv3_uncompress(nloc, len, ncum, nd, idcum, iflag, precip, &
8 VPrecip, sig, w0, ft, fq, fu, fv, inb, Ma, upwd, dnwd, dnwd0, qcondc, &
9 wd, cape, da, phi, mp, iflag1, precip1, VPrecip1, sig1, w01, ft1, fq1, &
10 fu1, fv1, inb1, Ma1, upwd1, dnwd1, dnwd01, qcondc1, wd1, cape1, da1, &
11 phi1, mp1)
12
13 USE cv3_param_m, ONLY: nl
14
15 ! inputs:
16 integer, intent(in):: nloc, len, ncum, nd
17 integer, intent(in):: idcum(nloc)
18 integer, intent(in):: iflag(nloc)
19 real, intent(in):: precip(nloc)
20 real, intent(in):: VPrecip(nloc, nd+1)
21 real, intent(in):: sig(nloc, nd), w0(nloc, nd)
22 real, intent(in):: ft(nloc, nd), fq(nloc, nd), fu(nloc, nd), fv(nloc, nd)
23 integer, intent(in):: inb(nloc)
24 real, intent(in):: Ma(nloc, nd)
25 real, intent(in):: upwd(nloc, nd), dnwd(nloc, nd), dnwd0(nloc, nd)
26 real, intent(in):: qcondc(nloc, nd)
27 real, intent(in):: wd(nloc), cape(nloc)
28 real, intent(in):: da(nloc, nd), phi(nloc, nd, nd), mp(nloc, nd)
29
30 ! outputs:
31 integer iflag1(len)
32 real precip1(len)
33 real VPrecip1(len, nd+1)
34 real sig1(len, nd), w01(len, nd)
35 real ft1(len, nd), fq1(len, nd), fu1(len, nd), fv1(len, nd)
36 integer inb1(len)
37 real Ma1(len, nd)
38 real upwd1(len, nd), dnwd1(len, nd), dnwd01(len, nd)
39 real qcondc1(nloc, nd)
40 real wd1(nloc), cape1(nloc)
41 real da1(nloc, nd), phi1(nloc, nd, nd), mp1(nloc, nd)
42
43 ! local variables:
44 integer i, k, j
45
46 !-------------------------------------------------------------------
47
48 do i=1, ncum
49 precip1(idcum(i))=precip(i)
50 iflag1(idcum(i))=iflag(i)
51 wd1(idcum(i))=wd(i)
52 inb1(idcum(i))=inb(i)
53 cape1(idcum(i))=cape(i)
54 end do
55
56 do k=1, nl
57 do i=1, ncum
58 VPrecip1(idcum(i), k)=VPrecip(i, k)
59 sig1(idcum(i), k)=sig(i, k)
60 w01(idcum(i), k)=w0(i, k)
61 ft1(idcum(i), k)=ft(i, k)
62 fq1(idcum(i), k)=fq(i, k)
63 fu1(idcum(i), k)=fu(i, k)
64 fv1(idcum(i), k)=fv(i, k)
65 Ma1(idcum(i), k)=Ma(i, k)
66 upwd1(idcum(i), k)=upwd(i, k)
67 dnwd1(idcum(i), k)=dnwd(i, k)
68 dnwd01(idcum(i), k)=dnwd0(i, k)
69 qcondc1(idcum(i), k)=qcondc(i, k)
70 da1(idcum(i), k)=da(i, k)
71 mp1(idcum(i), k)=mp(i, k)
72 end do
73 end do
74
75 do i=1, ncum
76 sig1(idcum(i), nd)=sig(i, nd)
77 end do
78
79 do j=1, nd
80 do k=1, nd
81 do i=1, ncum
82 phi1(idcum(i), k, j)=phi(i, k, j)
83 end do
84 end do
85 end do
86
87 end SUBROUTINE cv3_uncompress
88
89 end module cv3_uncompress_m

  ViewVC Help
Powered by ViewVC 1.1.21