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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/Sources/phylmd/CV3_routines/cv3_uncompress.f revision 134 by guez, Wed Apr 29 15:47:56 2015 UTC trunk/Sources/phylmd/CV30_routines/cv30_uncompress.f revision 201 by guez, Mon Jun 6 17:42:15 2016 UTC
# Line 1  Line 1 
1  module cv3_uncompress_m  module cv30_uncompress_m
2    
3    implicit none    implicit none
4    
5  contains  contains
6    
7    SUBROUTINE cv3_uncompress(idcum, iflag, precip, VPrecip, sig, w0, ft, fq, &    SUBROUTINE cv30_uncompress(idcum, iflag, precip, VPrecip, sig, w0, ft, fq, &
8         fu, fv, inb, Ma, upwd, dnwd, dnwd0, qcondc, wd, cape, da, phi, mp, &         fu, fv, inb, Ma, upwd, dnwd, dnwd0, qcondc, cape, da, phi, mp, iflag1, &
9         iflag1, precip1, VPrecip1, sig1, w01, ft1, fq1, fu1, fv1, inb1, Ma1, &         precip1, VPrecip1, sig1, w01, ft1, fq1, fu1, fv1, inb1, Ma1, upwd1, &
10         upwd1, dnwd1, dnwd01, qcondc1, wd1, cape1, da1, phi1, mp1)         dnwd1, dnwd01, qcondc1, cape1, da1, phi1, mp1)
11    
12      USE cv3_param_m, ONLY: nl      ! UNCOMPRESS THE FIELDS
13    
14        USE cv30_param_m, ONLY: nl
15      use dimphy, only: klon, klev      use dimphy, only: klon, klev
16    
     ! inputs:  
17      integer, intent(in):: idcum(:) ! (ncum)      integer, intent(in):: idcum(:) ! (ncum)
18      integer, intent(in):: iflag(klon)      integer, intent(in):: iflag(:) ! (ncum)
19      real, intent(in):: precip(klon)      real, intent(in):: precip(klon)
20      real, intent(in):: VPrecip(klon, klev+1)      real, intent(in):: VPrecip(klon, klev+1)
21      real, intent(in):: sig(klon, klev), w0(klon, klev)      real, intent(in):: sig(klon, klev), w0(klon, klev)
22      real, intent(in), dimension(klon, klev):: ft, fq, fu, fv      real, intent(in), dimension(klon, klev):: ft, fq, fu, fv
23      integer, intent(in):: inb(klon)      integer, intent(in):: inb(:) ! (ncum)
24      real, intent(in):: Ma(klon, klev)      real, intent(in):: Ma(klon, klev)
25      real, intent(in):: upwd(klon, klev), dnwd(klon, klev), dnwd0(klon, klev)      real, intent(in):: upwd(klon, klev), dnwd(klon, klev), dnwd0(klon, klev)
26      real, intent(in):: qcondc(klon, klev)      real, intent(in):: qcondc(klon, klev)
27      real, intent(in):: wd(klon), cape(klon)      real, intent(in):: cape(klon)
28      real, intent(in):: da(klon, klev), phi(klon, klev, klev), mp(klon, klev)      real, intent(in):: da(:, :) ! (klon, klev)
29        real, intent(in):: phi(:, :, :) ! (klon, klev, klev)
30        real, intent(in):: mp(:, :) ! (ncum, nl)
31    
32      ! outputs:      ! outputs:
33      integer iflag1(klon)      integer, intent(out):: iflag1(:) ! (klon)
34      real precip1(klon)      real precip1(klon)
35      real VPrecip1(klon, klev+1)      real VPrecip1(klon, klev+1)
36      real sig1(klon, klev), w01(klon, klev)      real sig1(klon, klev), w01(klon, klev)
# Line 36  contains Line 39  contains
39      real Ma1(klon, klev)      real Ma1(klon, klev)
40      real upwd1(klon, klev), dnwd1(klon, klev), dnwd01(klon, klev)      real upwd1(klon, klev), dnwd1(klon, klev), dnwd01(klon, klev)
41      real qcondc1(klon, klev)      real qcondc1(klon, klev)
42      real wd1(klon), cape1(klon)      real cape1(klon)
43      real, intent(inout):: da1(klon, klev), phi1(klon, klev, klev)      real, intent(inout):: da1(klon, klev), phi1(klon, klev, klev)
44      real, intent(inout):: mp1(klon, klev)      real, intent(inout):: mp1(klon, klev)
45    
46      ! local variables:      ! Local:
47      integer ncum, i, k, j      integer ncum, i, k, j
48    
49      !-------------------------------------------------------------------      !-------------------------------------------------------------------
50    
51      ncum = size(idcum)      ncum = size(idcum)
52        iflag1 = 42 ! for non convective points
53    
54      do  i=1, ncum      do  i=1, ncum
55         precip1(idcum(i))=precip(i)         precip1(idcum(i))=precip(i)
56         iflag1(idcum(i))=iflag(i)         iflag1(idcum(i))=iflag(i)
        wd1(idcum(i))=wd(i)  
57         inb1(idcum(i))=inb(i)         inb1(idcum(i))=inb(i)
58         cape1(idcum(i))=cape(i)         cape1(idcum(i))=cape(i)
59      end do      end do
# Line 86  contains Line 89  contains
89         end do         end do
90      end do      end do
91    
92    end SUBROUTINE cv3_uncompress    end SUBROUTINE cv30_uncompress
93    
94  end module cv3_uncompress_m  end module cv30_uncompress_m

Legend:
Removed from v.134  
changed lines
  Added in v.201

  ViewVC Help
Powered by ViewVC 1.1.21