/[lmdze]/trunk/Sources/phylmd/phystokenc.f
ViewVC logotype

Diff of /trunk/Sources/phylmd/phystokenc.f

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

revision 76 by guez, Fri Nov 15 18:45:49 2013 UTC revision 78 by guez, Wed Feb 5 17:51:07 2014 UTC
# Line 10  contains Line 10  contains
10    
11      ! From phylmd/phystokenc.F, version 1.2 2004/06/22 11:45:35      ! From phylmd/phystokenc.F, version 1.2 2004/06/22 11:45:35
12      ! Author: Frédéric Hourdin      ! Author: Frédéric Hourdin
13      ! Objet : moniteur général des tendances traceurs                              ! Objet : écriture des variables pour transport offline
14    
15      USE histwrite_m, ONLY : histwrite      USE histwrite_m, ONLY: histwrite
16      USE histsync_m, ONLY : histsync      USE histsync_m, ONLY: histsync
17      USE dimens_m, ONLY : iim, jjm, nqmx      USE dimens_m, ONLY: iim, jjm, nqmx
18      USE indicesol, ONLY : nbsrf      USE indicesol, ONLY: nbsrf
19      USE dimphy, ONLY : klev, klon      USE dimphy, ONLY: klev, klon
20      USE tracstoke, ONLY : istphy      USE tracstoke, ONLY: istphy
   
     ! Arguments:                                                              
   
     !   EN ENTREE:                                                            
   
     !   divers:                                                              
21    
22      REAL, INTENT (IN):: pdtphys ! pas d'integration pour la physique (seconde)      REAL, INTENT (IN):: pdtphys ! pas d'integration pour la physique (seconde)
23      INTEGER, INTENT (IN):: itap      REAL, INTENT (IN):: rlon(klon), rlat(klon)
24        REAL, intent(in):: pt(klon, klev)
25    
26      !   convection:                                                              ! convection:
27    
28      REAL, INTENT (IN):: pmfu(klon, klev) ! flux de masse dans le panache montant      REAL, INTENT (IN):: pmfu(klon, klev) ! flux de masse dans le panache montant
29    
30      REAL, intent(in):: pmfd(klon, klev)      REAL, intent(in):: pmfd(klon, klev)
31      ! flux de masse dans le panache descendant      ! flux de masse dans le panache descendant
32    
33      REAL pen_u(klon, klev) ! flux entraine dans le panache montant      REAL, intent(in):: pen_u(klon, klev) ! flux entraine dans le panache montant
34      REAL pde_u(klon, klev) ! flux detraine dans le panache montant      REAL, intent(in):: pde_u(klon, klev) ! flux detraine dans le panache montant
35      REAL pen_d(klon, klev) ! flux entraine dans le panache descendant  
36      REAL pde_d(klon, klev) ! flux detraine dans le panache descendant      REAL, intent(in):: pen_d(klon, klev)
37      REAL, intent(in):: pt(klon, klev)      ! flux entraine dans le panache descendant
38    
39      REAL, INTENT (IN) :: rlon(klon), rlat(klon)      REAL, intent(in):: pde_d(klon, klev)
40      REAL, INTENT (IN) :: dtime      ! flux detraine dans le panache descendant
41    
42      !   Les Thermiques      ! Les Thermiques
43      REAL pfm_therm(klon, klev+1)      REAL pfm_therm(klon, klev+1)
44      REAL pentr_therm(klon, klev)      REAL pentr_therm(klon, klev)
45    
46      !   Couche limite:                                                            ! Couche limite:
47    
     REAL yv1(klon)  
     REAL yu1(klon), paire(klon)  
     REAL, INTENT(IN):: pphis(klon)  
48      REAL pcoefh(klon, klev) ! coeff melange Couche limite      REAL pcoefh(klon, klev) ! coeff melange Couche limite
49        REAL yu1(klon)
50        REAL yv1(klon)
51    
52      ! Arguments necessaires pour les sources et puits de traceur                  ! Arguments necessaires pour les sources et puits de traceur
53    
54      REAL ftsol(klon, nbsrf) ! Temperature du sol (surf)(Kelvin)      REAL ftsol(klon, nbsrf) ! Temperature du sol (surf)(Kelvin)
55      REAL pctsrf(klon, nbsrf) ! Pourcentage de sol f(nature du sol)      REAL pctsrf(klon, nbsrf) ! Pourcentage de sol f(nature du sol)
56    
57      !   Lessivage:                                                                ! Lessivage:
58    
59      REAL frac_impa(klon, klev)      REAL frac_impa(klon, klev)
60      REAL frac_nucl(klon, klev)      REAL frac_nucl(klon, klev)
61    
62        REAL, INTENT(IN):: pphis(klon)
63        real paire(klon)
64        REAL, INTENT (IN):: dtime
65        INTEGER, INTENT (IN):: itap
66    
67      ! Variables local to the procedure:      ! Variables local to the procedure:
68    
69      real t(klon, klev)      real t(klon, klev)
70      INTEGER, SAVE:: physid      INTEGER, SAVE:: physid
71      REAL zx_tmp_3d(iim, jjm+1, klev), zx_tmp_2d(iim, jjm+1)      REAL zx_tmp_3d(iim, jjm+1, klev), zx_tmp_2d(iim, jjm+1)
72    
73      !   Les Thermiques      ! Les Thermiques
74    
75      REAL fm_therm1(klon, klev)      REAL fm_therm1(klon, klev)
76      REAL entr_therm(klon, klev)      REAL entr_therm(klon, klev)
# Line 104  contains Line 103  contains
103    
104      !------------------------------------------------------      !------------------------------------------------------
105    
106      !   Couche limite:                                                            ! Couche limite:
107    
108      ok_sync = .TRUE.      ok_sync = .TRUE.
109    
# Line 180  contains Line 179  contains
179    
180      dtcum = dtcum + pdtphys      dtcum = dtcum + pdtphys
181    
182      IF (mod(iadvtr, istphy)==0) THEN      IF (mod(iadvtr, istphy) == 0) THEN
183         ! normalisation par le temps cumule                                           ! normalisation par le temps cumule
184         DO k = 1, klev         DO k = 1, klev
185            DO i = 1, klon            DO i = 1, klon
186               mfu(i, k) = mfu(i, k)/dtcum               mfu(i, k) = mfu(i, k)/dtcum
# Line 217  contains Line 216  contains
216            END DO            END DO
217         END DO         END DO
218    
219         !   ecriture des champs                                                         ! ecriture des champs
220    
221         irec = irec + 1         irec = irec + 1
222    
# Line 250  contains Line 249  contains
249    
250         CALL gr_fi_ecrit(klev, klon, iim, jjm+1, entr_therm, zx_tmp_3d)         CALL gr_fi_ecrit(klev, klon, iim, jjm+1, entr_therm, zx_tmp_3d)
251         CALL histwrite(physid, 'en_th', itap, zx_tmp_3d)         CALL histwrite(physid, 'en_th', itap, zx_tmp_3d)
252         !ccc                                                                             !ccc
253         CALL gr_fi_ecrit(klev, klon, iim, jjm+1, frac_impa, zx_tmp_3d)         CALL gr_fi_ecrit(klev, klon, iim, jjm+1, frac_impa, zx_tmp_3d)
254         CALL histwrite(physid, 'frac_impa', itap, zx_tmp_3d)         CALL histwrite(physid, 'frac_impa', itap, zx_tmp_3d)
255    
# Line 283  contains Line 282  contains
282    
283         IF (ok_sync) CALL histsync(physid)         IF (ok_sync) CALL histsync(physid)
284    
285         !AA Test sur la valeur des coefficients de lessivage                             ! Test sur la valeur des coefficients de lessivage
286    
287         zmin = 1E33         zmin = 1E33
288         zmax = -1E33         zmax = -1E33

Legend:
Removed from v.76  
changed lines
  Added in v.78

  ViewVC Help
Powered by ViewVC 1.1.21