7 SUBROUTINE plevel_new(ilon, ilev, klevstd, lnew, pgcm, pres, qgcm, qpres)
 
   16   USE wxios
, ONLY: missing_val
 
   39   INTEGER ilon, ilev, klevstd
 
   45   REAL qpres(ilon, klevstd)
 
   54   INTEGER, 
ALLOCATABLE, 
SAVE, 
DIMENSION (:, :) :: lt, lb
 
   55   REAL, 
ALLOCATABLE, 
SAVE, 
DIMENSION (:, :) :: aist, aisb
 
   57   REAL, 
SAVE :: ptop, pbot
 
   59   LOGICAL, 
SAVE :: first = .
true.
 
   76     ALLOCATE (lt(
klon,klevstd), lb(
klon,klevstd))
 
   77     ALLOCATE (aist(
klon,klevstd), aisb(
klon,klevstd))
 
   95         IF (abs(pres(nlev)-pgcm(i,ilev))<abs(pres(nlev)-pgcm(i,1))) 
THEN 
   97           lb(i, nlev) = ilev - 1 
 
  107           IF (ptop<=pres(nlev) .AND. pbot>=pres(nlev)) 
THEN 
  121         aist(i, nlev) = log(pgcm(i,lb(i,nlev))/pres(nlev))/log(pgcm(i,lb(i, &
 
  122           nlev))/pgcm(i,lt(i,nlev)))
 
  123         aisb(i, nlev) = log(pres(nlev)/pgcm(i,lt(i,nlev)))/log(pgcm(i,lb(i, &
 
  124           nlev))/pgcm(i,lt(i,nlev)))
 
  137       IF (pgcm(i,1)<pres(nlev)) 
THEN 
  138         qpres(i, nlev) = missing_val
 
  140         qpres(i, nlev) = qgcm(i, lb(i,nlev))*aisb(i, nlev) + &
 
  141           qgcm(i, lt(i,nlev))*aist(i, nlev)
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans plevel_new
 
real, parameter missing_val_nf90
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true