/[lmdze]/trunk/libf/dyn3d/calfis.f90
ViewVC logotype

Diff of /trunk/libf/dyn3d/calfis.f90

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

revision 43 by guez, Fri Apr 8 12:43:31 2011 UTC revision 44 by guez, Wed Apr 13 12:29:18 2011 UTC
# Line 4  module calfis_m Line 4  module calfis_m
4    
5  contains  contains
6    
7    SUBROUTINE calfis(rdayvrai, heure, pucov, pvcov, pteta, q, pmasse, pps, &    SUBROUTINE calfis(rdayvrai, heure, pucov, pvcov, teta, q, pmasse, pps, &
8         ppk, pphis, pphi, pducov, pdvcov, pdteta, pdq, pw, pdufi, pdvfi, &         ppk, pphis, pphi, pducov, pdvcov, pdq, pw, pdufi, pdvfi, pdhfi, pdqfi, &
9         pdhfi, pdqfi, pdpsfi, lafin)         pdpsfi, lafin)
10    
11      ! From dyn3d/calfis.F, version 1.3 2005/05/25 13:10:09      ! From dyn3d/calfis.F, version 1.3 2005/05/25 13:10:09
12      ! Authors: P. Le Van, F. Hourdin      ! Authors: P. Le Van, F. Hourdin
# Line 33  contains Line 33  contains
33      ! Input :      ! Input :
34      ! pucov covariant zonal velocity      ! pucov covariant zonal velocity
35      ! pvcov covariant meridional velocity      ! pvcov covariant meridional velocity
36      ! pteta potential temperature      ! teta potential temperature
37      ! pps surface pressure      ! pps surface pressure
38      ! pmasse masse d'air dans chaque maille      ! pmasse masse d'air dans chaque maille
39      ! pts surface temperature (K)      ! pts surface temperature (K)
# Line 66  contains Line 66  contains
66    
67      REAL pvcov(iim + 1, jjm, llm)      REAL pvcov(iim + 1, jjm, llm)
68      REAL pucov(iim + 1, jjm + 1, llm)      REAL pucov(iim + 1, jjm + 1, llm)
69      REAL pteta(iim + 1, jjm + 1, llm)      REAL, intent(in):: teta(iim + 1, jjm + 1, llm)
70      REAL pmasse(iim + 1, jjm + 1, llm)      REAL pmasse(iim + 1, jjm + 1, llm)
71    
72      REAL, intent(in):: q(iim + 1, jjm + 1, llm, nqmx)      REAL, intent(in):: q(iim + 1, jjm + 1, llm, nqmx)
# Line 77  contains Line 77  contains
77    
78      REAL pdvcov(iim + 1, jjm, llm)      REAL pdvcov(iim + 1, jjm, llm)
79      REAL pducov(iim + 1, jjm + 1, llm)      REAL pducov(iim + 1, jjm + 1, llm)
     REAL pdteta(iim + 1, jjm + 1, llm)  
80      REAL pdq(iim + 1, jjm + 1, llm, nqmx)      REAL pdq(iim + 1, jjm + 1, llm, nqmx)
81    
82      REAL, intent(in):: pw(iim + 1, jjm + 1, llm)      REAL, intent(in):: pw(iim + 1, jjm + 1, llm)
# Line 87  contains Line 86  contains
86    
87      REAL pdvfi(iim + 1, jjm, llm)      REAL pdvfi(iim + 1, jjm, llm)
88      REAL pdufi(iim + 1, jjm + 1, llm)      REAL pdufi(iim + 1, jjm + 1, llm)
89      REAL pdhfi(iim + 1, jjm + 1, llm)      REAL, intent(out):: pdhfi(iim + 1, jjm + 1, llm)
90      REAL pdqfi(iim + 1, jjm + 1, llm, nqmx)      REAL pdqfi(iim + 1, jjm + 1, llm, nqmx)
91      REAL pdpsfi(iim + 1, jjm + 1)      REAL pdpsfi(iim + 1, jjm + 1)
92    
# Line 152  contains Line 151  contains
151         pksurcp = ppk(:, :, l) / cpp         pksurcp = ppk(:, :, l) / cpp
152         pls(:, :, l) = preff * pksurcp**(1./ kappa)         pls(:, :, l) = preff * pksurcp**(1./ kappa)
153         zplay(:, l) = pack(pls(:, :, l), dyn_phy)         zplay(:, l) = pack(pls(:, :, l), dyn_phy)
154         ztfi(:, l) = pack(pteta(:, :, l) * pksurcp, dyn_phy)         ztfi(:, l) = pack(teta(:, :, l) * pksurcp, dyn_phy)
155      ENDDO      ENDDO
156    
157      ! 43.bis traceurs      ! 43.bis traceurs
# Line 247  contains Line 246  contains
246      forall(l= 1: llm) v(:, l) = pack(zvfi(:, :, l), dyn_phy)      forall(l= 1: llm) v(:, l) = pack(zvfi(:, :, l), dyn_phy)
247    
248      !IM calcul PV a teta=350, 380, 405K      !IM calcul PV a teta=350, 380, 405K
249      CALL PVtheta(klon, llm, pucov, pvcov, pteta, ztfi, zplay, zplev, &      CALL PVtheta(klon, llm, pucov, pvcov, teta, ztfi, zplay, zplev, &
250           ntetaSTD, rtetaSTD, PVteta)           ntetaSTD, rtetaSTD, PVteta)
251    
252      ! Appel de la physique :      ! Appel de la physique :

Legend:
Removed from v.43  
changed lines
  Added in v.44

  ViewVC Help
Powered by ViewVC 1.1.21