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

Annotation of /trunk/Sources/phylmd/CV30_routines/cv3_uncompress.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 184 - (hide annotations)
Wed Mar 16 14:50:46 2016 UTC (8 years, 2 months ago) by guez
File size: 2730 byte(s)
CV3 to CV30 (following LMDZ).
1 guez 97 module cv3_uncompress_m
2 guez 47
3     implicit none
4    
5 guez 97 contains
6 guez 47
7 guez 103 SUBROUTINE cv3_uncompress(idcum, iflag, precip, VPrecip, sig, w0, ft, fq, &
8     fu, fv, inb, Ma, upwd, dnwd, dnwd0, qcondc, wd, cape, da, phi, mp, &
9     iflag1, precip1, VPrecip1, sig1, w01, ft1, fq1, fu1, fv1, inb1, Ma1, &
10     upwd1, dnwd1, dnwd01, qcondc1, wd1, cape1, da1, phi1, mp1)
11 guez 47
12 guez 97 USE cv3_param_m, ONLY: nl
13 guez 103 use dimphy, only: klon, klev
14 guez 47
15 guez 103 integer, intent(in):: idcum(:) ! (ncum)
16     integer, intent(in):: iflag(klon)
17     real, intent(in):: precip(klon)
18     real, intent(in):: VPrecip(klon, klev+1)
19     real, intent(in):: sig(klon, klev), w0(klon, klev)
20     real, intent(in), dimension(klon, klev):: ft, fq, fu, fv
21     integer, intent(in):: inb(klon)
22     real, intent(in):: Ma(klon, klev)
23     real, intent(in):: upwd(klon, klev), dnwd(klon, klev), dnwd0(klon, klev)
24     real, intent(in):: qcondc(klon, klev)
25     real, intent(in):: wd(klon), cape(klon)
26     real, intent(in):: da(klon, klev), phi(klon, klev, klev), mp(klon, klev)
27 guez 47
28 guez 97 ! outputs:
29 guez 103 integer iflag1(klon)
30     real precip1(klon)
31     real VPrecip1(klon, klev+1)
32     real sig1(klon, klev), w01(klon, klev)
33     real ft1(klon, klev), fq1(klon, klev), fu1(klon, klev), fv1(klon, klev)
34     integer, intent(inout):: inb1(klon)
35     real Ma1(klon, klev)
36     real upwd1(klon, klev), dnwd1(klon, klev), dnwd01(klon, klev)
37     real qcondc1(klon, klev)
38     real wd1(klon), cape1(klon)
39     real, intent(inout):: da1(klon, klev), phi1(klon, klev, klev)
40     real, intent(inout):: mp1(klon, klev)
41 guez 47
42 guez 180 ! Local:
43 guez 103 integer ncum, i, k, j
44 guez 47
45 guez 97 !-------------------------------------------------------------------
46 guez 47
47 guez 103 ncum = size(idcum)
48    
49 guez 97 do i=1, ncum
50     precip1(idcum(i))=precip(i)
51     iflag1(idcum(i))=iflag(i)
52     wd1(idcum(i))=wd(i)
53     inb1(idcum(i))=inb(i)
54     cape1(idcum(i))=cape(i)
55     end do
56 guez 47
57 guez 97 do k=1, nl
58     do i=1, ncum
59     VPrecip1(idcum(i), k)=VPrecip(i, k)
60     sig1(idcum(i), k)=sig(i, k)
61     w01(idcum(i), k)=w0(i, k)
62     ft1(idcum(i), k)=ft(i, k)
63     fq1(idcum(i), k)=fq(i, k)
64     fu1(idcum(i), k)=fu(i, k)
65     fv1(idcum(i), k)=fv(i, k)
66     Ma1(idcum(i), k)=Ma(i, k)
67     upwd1(idcum(i), k)=upwd(i, k)
68     dnwd1(idcum(i), k)=dnwd(i, k)
69     dnwd01(idcum(i), k)=dnwd0(i, k)
70     qcondc1(idcum(i), k)=qcondc(i, k)
71     da1(idcum(i), k)=da(i, k)
72     mp1(idcum(i), k)=mp(i, k)
73     end do
74     end do
75    
76     do i=1, ncum
77 guez 103 sig1(idcum(i), klev)=sig(i, klev)
78 guez 97 end do
79    
80 guez 103 do j=1, klev
81     do k=1, klev
82 guez 97 do i=1, ncum
83     phi1(idcum(i), k, j)=phi(i, k, j)
84     end do
85     end do
86     end do
87    
88     end SUBROUTINE cv3_uncompress
89    
90     end module cv3_uncompress_m

  ViewVC Help
Powered by ViewVC 1.1.21