4       subroutine wrgrads(if,nl,field,name,titlevar)
 
   19       character*10 name,file
 
   24       integer im,jm,lm,i,j,l,iv,iii,iji,iif,ijf
 
   40       print*,
'im,jm,lm,name,firsttime(if)' 
   44          if(name.eq.
var(1,if)) 
then 
   47          print*,
'fin de l initialiation de l ecriture du fichier' 
   49            print*,
'fichier no: ',
if 
   50            print*,
'unit ',
unit(if)
 
   51            print*,
'nvar  ',
nvar(if)
 
   52            print*,
'vars ',(
var(iv,if),iv=1,
nvar(if))
 
   59             print*,
'initialisation ecriture de ',
var(
ivar(if),if)
 
   60             print*,
'if ivar(if) nld ',
if,
ivar(if),
nld(
ivar(if),if)
 
   71          if(
var(
ivar(if),if).ne.name) 
then 
   72            print*,
'Il faut stoker la meme succession de champs a chaque' 
   74            print*,
'fichier no: ',
if 
   75            print*,
'unit ',
unit(if)
 
   76            print*,
'nvar  ',
nvar(if)
 
   77            print*,
'vars ',(
var(iv,if),iv=1,
nvar(if))
 
   83       print*,
'ivar(if),nvar(if),var(ivar(if),if),writectl' 
   91      s   ((field((l-1)*
imd(if)*
jmd(if)+(j-1)*
imd(if)+i)
 
   92      s   ,i=iii,iif),j=iji,ijf)
 
   98       open(
unit(if),file=trim(file)//
'.ctl' 
   99      &         ,form=
'formatted',status=
'unknown')
 
  100       write(
unit(if),
'(a5,1x,a40)')
 
  101      &       
'DSET ',
'^'//trim(file)//
'.dat' 
  103       write(
unit(if),
'(a12)') 
'UNDEF 1.0E30' 
  104       write(
unit(if),
'(a5,1x,a40)') 
'TITLE ',
title(if)
 
  108       write(
unit(if),
'(a4,i10,a30)')
 
  109      &       
'TDEF ',
itime(if),
' LINEAR 02JAN1987 1MO ' 
  110       write(
unit(if),
'(a4,2x,i5)') 
'VARS',
nvar(if)
 
  117       write(
unit(if),
'(a7)') 
'ENDVARS' 
  119 1000  
format(a5,3
x,i4,i3,1
x,a39)
 
!$Header!integer nvarmx s iid
 
!$Header!integer nvarmx yd
 
!$Header!integer nvarmx s imd
 
!$Header!integer nvarmx s ifd
 
!$Header!integer nvarmx s s s fichier
 
!$Header!integer nvarmx s s nvar
 
!$Header!integer nvarmx s lmd
 
!$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
 
!$Header!integer nvarmx s s s var
 
!$Header!integer nvarmx s jid
 
!$Header!integer nvarmx s s irec
 
!$Header!integer nvarmx s s nld
 
!$Header!integer nvarmx s jmd
 
!$Header!integer nvarmx zd
 
!$Header!c c INCLUDE fxyprim h c c c Fonctions in line c c REAL fyprim REAL rj c c il faut la calculer avant d appeler ces fonctions c c c Fonctions a changer selon x(x) et y(y) choisis.c-----------------------------------------------------------------c c.....ici
 
!$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
 
!$Header!integer nvarmx tvar(nvarmx, nfmx) common/gradsdef/xd
 
subroutine wrgrads(if, nl, field, name, titlevar)
 
!$Header!integer nvarmx s s itime
 
!$Header!integer nvarmx s s s title
 
!$Header!integer nvarmx s jfd
 
!$Header!integer nvarmx s s unit
 
!$Header!integer nvarmx s s firsttime
 
!$Header!integer nvarmx s s ivar