/[lmdze]/trunk/Sources/dyn3d/calfis.f
ViewVC logotype

Diff of /trunk/Sources/dyn3d/calfis.f

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

trunk/dyn3d/calfis.f revision 91 by guez, Wed Mar 26 17:18:58 2014 UTC trunk/Sources/dyn3d/calfis.f revision 139 by guez, Tue May 26 17:46:03 2015 UTC
# Line 4  module calfis_m Line 4  module calfis_m
4    
5  contains  contains
6    
7    SUBROUTINE calfis(rdayvrai, time, ucov, vcov, teta, q, ps, pk, phis, phi, &    SUBROUTINE calfis(dayvrai, time, ucov, vcov, teta, q, pk, phis, phi, w, &
8         w, dufi, dvfi, dtetafi, dqfi, lafin)         dufi, dvfi, dtetafi, dqfi, lafin)
9    
10      ! 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
11      ! Authors: P. Le Van, F. Hourdin      ! Authors: P. Le Van, F. Hourdin
# Line 13  contains Line 13  contains
13      ! 1. R\'earrangement des tableaux et transformation des variables      ! 1. R\'earrangement des tableaux et transformation des variables
14      ! dynamiques en variables physiques      ! dynamiques en variables physiques
15    
16      ! 2. Calcul des termes physiques      ! 2. Calcul des tendances physiques
17      ! 3. Retransformation des tendances physiques en tendances dynamiques      ! 3. Retransformation des tendances physiques en tendances dynamiques
18    
19      ! Remarques:      ! Remarques:
# Line 31  contains Line 31  contains
31      ! grandeur horizontalement).      ! grandeur horizontalement).
32    
33      use comconst, only: kappa, cpp, dtphys, g      use comconst, only: kappa, cpp, dtphys, g
34      use comgeom, only: apoln, cu_2d, cv_2d, unsaire_2d, apols, rlonu, rlonv      use comgeom, only: apoln, cu_2d, cv_2d, unsaire_2d, apols
35      use dimens_m, only: iim, jjm, llm, nqmx      use dimens_m, only: iim, jjm, llm, nqmx
36      use dimphy, only: klon      use dimphy, only: klon
37      use disvert_m, only: preff      use disvert_m, only: preff
38        use dynetat0_m, only: rlonu, rlonv
39      use grid_change, only: dyn_phy, gr_fi_dyn      use grid_change, only: dyn_phy, gr_fi_dyn
40      use nr_util, only: pi      use nr_util, only: pi
41      use physiq_m, only: physiq      use physiq_m, only: physiq
42      use pressure_var, only: p3d, pls      use pressure_var, only: p3d, pls
43    
44      REAL, intent(in):: rdayvrai      integer, intent(in):: dayvrai
45      REAL, intent(in):: time ! heure de la journ\'ee en fraction de jour      ! current day number, based at value 1 on January 1st of annee_ref
46    
47        REAL, intent(in):: time ! time of day, as a fraction of day length
48    
49      REAL, intent(in):: ucov(:, :, :) ! (iim + 1, jjm + 1, llm)      REAL, intent(in):: ucov(:, :, :) ! (iim + 1, jjm + 1, llm)
50      ! covariant zonal velocity      ! covariant zonal velocity
# Line 55  contains Line 58  contains
58      REAL, intent(in):: q(:, :, :, :) ! (iim + 1, jjm + 1, llm, nqmx)      REAL, intent(in):: q(:, :, :, :) ! (iim + 1, jjm + 1, llm, nqmx)
59      ! mass fractions of advected fields      ! mass fractions of advected fields
60    
     REAL, intent(in):: ps(:, :) ! (iim + 1, jjm + 1) surface pressure  
   
61      REAL, intent(in):: pk(:, :, :) ! (iim + 1, jjm + 1, llm)      REAL, intent(in):: pk(:, :, :) ! (iim + 1, jjm + 1, llm)
62      ! Exner = cp * (p / preff)**kappa      ! Exner = cp * (p / preff)**kappa
63    
# Line 77  contains Line 78  contains
78      LOGICAL, intent(in):: lafin      LOGICAL, intent(in):: lafin
79    
80      ! Local:      ! Local:
81      INTEGER i, j, l, ig0, iq, iiq      INTEGER i, j, l, ig0, iq
     REAL zpsrf(klon)  
82      REAL paprs(klon, llm + 1) ! aux interfaces des couches      REAL paprs(klon, llm + 1) ! aux interfaces des couches
83      REAL play(klon, llm) ! aux milieux des couches      REAL play(klon, llm) ! aux milieux des couches
84      REAL pphi(klon, llm), pphis(klon)      REAL pphi(klon, llm), pphis(klon)
# Line 179  contains Line 179  contains
179      forall(l = 1: llm) v(:, l) = pack(zvfi(:, :, l), dyn_phy)      forall(l = 1: llm) v(:, l) = pack(zvfi(:, :, l), dyn_phy)
180    
181      ! Appel de la physique :      ! Appel de la physique :
182      CALL physiq(lafin, rdayvrai, time, dtphys, paprs, play, pphi, pphis, u, &      CALL physiq(lafin, dayvrai, time, dtphys, paprs, play, pphi, pphis, u, &
183           v, t, qx, omega, d_u, d_v, d_t, d_qx)           v, t, qx, omega, d_u, d_v, d_t, d_qx)
184    
185      ! transformation des tendances physiques en tendances dynamiques:      ! transformation des tendances physiques en tendances dynamiques:

Legend:
Removed from v.91  
changed lines
  Added in v.139

  ViewVC Help
Powered by ViewVC 1.1.21