Changeset 97


Ignore:
Timestamp:
Mar 22, 2011, 5:25:44 PM (14 years ago)
Author:
slebonnois
Message:

Serie de modifs SL pour homogeneisation des phytitan et phyvenus
Ca touche aussi aux liens phy/dyn (surtout a propos de clesphy0),
a verifier avec les autres, donc...

Location:
trunk
Files:
70 edited

Legend:

Unmodified
Added
Removed
  • trunk/chantiers/commit_importants.log

    r76 r97  
    545545M               75   mars/libf/phymars/meso_dustlift.F
    546546NB: correction mineure, de facon a recuperer alpha_lift de initracer
     547
     548
     549********************
     550**** commit_v96 ****
     551********************
     552
     553Serie de modifs Sebastien Lebonnois
     554
     555** Correction bug
     556**---------------
     557
     558* Modif de bilan_dyn.F :
     559    - bug à la ligne 915: jjm et non jjp1...
     560
     561** Modifs de dyn3d
     562**---------------
     563
     564* Modif de leapfrog.F :
     565    - ajout test pk monotone
     566
     567** Sortie des opacites plutot que des aerosols dans phytitan
     568**----------------------------------------------------------
     569
     570* Modif de physiq.F :
     571    - ajout de variables et d'un common (pour variables venant de radtitan)
     572
     573* Modif de ini/write_histmth.h
     574    - sorties des opacites (thv* et khv*)
     575    - commentaire de la sortie des q*
     576
     577** Reglage .def
     578**---------------
     579
     580* titan/physiq.def :
     581    - ajustement tx
     582
     583** Sorties IOIPSL
     584**-----------------------
     585
     586* Modif de phy[venus/titan]/physiq.F
     587    - suppression des REAL*4 lies aux sorties IOIPSL
     588
     589* Modif de phy[venus/titan]/[ini/write]_hist*
     590    - suppression des variables intermediaires en REAL*4 lies aux sorties IOIPSL
     591
     592** nqmx remplace par nqtot
     593**-----------------------
     594
     595* Modif de phytitan/
     596  calchim.F,optci.F,optcv.F,pg3.F,physiq.F,phytrac.F,
     597  radlwsw.F,radtitan.F,rdf.F
     598
     599* Modif de phyvenus/
     600  phytrac.F,testphys1d.F
     601
     602** nettoyage
     603**-----------------------
     604
     605* Suppression de phytitan/
     606  calchim.dbleprec,calchim.spleprec
     607
     608** calendriers
     609**-----------------------
     610
     611* Modif de dyn3d[par]/gcm.F:
     612  - calendriers: il faut une option dans ioconf_calendar pour definir
     613  les calendriers titan et venus
     614  - pour definition jD_ref et jH_ref: avertissement pour Venus et Titan
     615  - avertissement pour separation en annees
     616
     617* Modif de deftank/[titan/venus]/run.def
     618  - ajout de calend => calend=titan ou venus
     619  - ajout de anneeref et raz_date
     620
     621** Possibilite de tourner moins d'une journee
     622**-----------------------
     623
     624* Modif de dyn3d[par]/leapfrog[_p].F
     625  - ajout de la possibilite de tourner moins d'1 jour
     626
     627* Modif de dyn3d[par]/control_mod.F90
     628  - ajout de less1day et fractday
     629
     630* Modif de dyn3d[par]/conf_gcm.F
     631  - definition/lecture de less1day et fractday
     632
     633* Modif de deftank/venus/run.def
     634  - ajout de less1day et fractday
     635
     636** suppression advtrac.h et control.h dans les phy*
     637**-----------------------
     638
     639* Modif de : phy[venus/titan]/physiq.F
     640  - remplacement de #include "advtrac.h" par USE infotrac
     641  - remplacement de #include "control.h" par USE control_mod
     642
     643* Modif de : phy[venus/titan]/phytrac.F
     644  - remplacement de #include "advtrac.h" par USE infotrac
     645  - remplacement de #include "control.h" par USE control_mod
     646
     647* Modif de : phy[venus/titan]/phyredem.F
     648 - remplacement de #include "control.h" par USE control_mod
     649
     650** ajustements lecture des .def
     651**-----------------------
     652
     653* Modif de phy[titan/venus]/conf_phys.F90
     654  - ajout de tous les parametres transferes de gcm.def dans physiq.def
     655  - utilisation de ecritphy:
     656       pour Venus, frequence de sortie dans mth et ins
     657       pour Titan, frequence de sortie dans ins
     658  - suppression de zzz
     659
     660* Modif de phy[titan/venus]/clesphys.h
     661  - mise a jour des declarations necessaires
     662
     663** Elimination de clesphy0
     664**-----------------------
     665
     666* Modif de : phy[titan/venus]/phyetat0.F
     667  - elimination de clesphy0, longcles
     668
     669* Modif de : phy[titan/venus]/physiq.F
     670  - elimination de clesphy0, longcles
     671
     672* Modif de dyn3d[par]/
     673  calfis.F, ce0l.F90, conf_gcm.F, gcm.F, leapfrog.F
     674  - elimination de clesphy0, longcles
     675
     676** Ajustement format .h
     677**-----------------------
     678
     679* Modif de phy[titan/venus]/clesphys.h (clesphys.inc elimine)
     680
     681* Modif de phy[titan/venus]/YOMCST.h (YOMCST.inc elimine)
     682
     683* Elimination de tous les YOETHF dans phy[titan/venus] et nettoyage de suphec.F
     684
     685* Elimination de tous les FCTTRE dans phy[titan/venus]
     686
     687* Modif de : phytitan/comorbit.h (comorbit.inc elimine)
     688
     689** Controle de la remise a zero des varc
     690**-----------------------
     691
     692* Modif de dyn3d[par]/sortvarc.F
     693  - ajout firstcal
     694  - ajout flag pour controle (resetvarc)
     695  - correction pour avoir le moment cinetique total absolu
     696
     697* Modif de dyn3d[par]/conf_gcm.F
     698  - ajout flag pour controle (resetvarc)
     699
     700* Modif de dyn3d[par]/control_mod.F90
     701  - ajout de resetvarc
     702
     703* Modif de deftank/venus/run.def
     704  - ajout de resetvarc
     705
     706* Modif de dyn3d[par]/sortvarc0.F
     707  - correction pour avoir le moment cinetique total absolu
     708
     709
     710
  • trunk/deftanks/titan/physiq.def

    r6 r97  
    9090microfi=1
    9191# facteur pour les aerosols
    92 tx = 1.
     92tx = 3.
    9393# facteur de correction
    9494tcorrect=1.
  • trunk/deftanks/titan/run.def

    r6 r97  
    44INCLUDEDEF=physiq.def
    55INCLUDEDEF=gcm.def
     6## Calendrier
     7calend=titan
    68## Jour de l'etat initial ( = 350  si 20 Decembre ,par expl. ,comme ici )
    79dayref=1
    810##  Annee de l'etat  initial (   avec  4  chiffres   )
    9 anneeref=1979
     11anneeref=1111
    1012## Remise a zero de la date initiale
    11 raz_date=0
     13raz_date=1
     14## Reinit des variables de controle
     15resetvarc=n
    1216## Nombre de jours d'integration
    1317nday=11
  • trunk/deftanks/venus/run.def

    r6 r97  
    44INCLUDEDEF=physiq.def
    55INCLUDEDEF=gcm.def
     6## Calendrier
     7calend=venus
    68## Jour de l'etat initial ( = 350  si 20 Decembre ,par expl. ,comme ici )
    79dayref=1
    810##  Annee de l'etat  initial (   avec  4  chiffres   )
    9 anneeref=1979
     11anneeref=1111
    1012## Remise a zero de la date initiale
    11 raz_date=0
     13raz_date=1
     14## Reinit des variables de controle
     15resetvarc=n
    1216## Nombre de jours d'integration
    1317nday=2
     18## Si on veut moins d'un jour :
     19less1day=n
     20## si less1day T, fraction de jour du run :
     21fractday=0.01
    1422## periode de sortie des variables de controle (en pas)
    1523iconser=500
  • trunk/libf/dyn3d/bilan_dyn.F

    r37 r97  
    915915         do itr=2,ntr
    916916           do l=1,llm
    917             do j=1,jjp1
     917            do j=1,jjm
    918918          zawQ(1,l,itr,iQ)=zawQ(1,l,itr,iQ)+zwQ(j,l,itr,iQ)*zmasse(j,l)
    919919            enddo
  • trunk/libf/dyn3d/calfis.F

    r37 r97  
    2121     $                  pdq,
    2222     $                  flxw,
    23      $                  clesphy0,
    2423     $                  pdufi,
    2524     $                  pdvfi,
     
    131130      REAL pdqfi(iip1,jjp1,llm,nqtot)
    132131      REAL pdpsfi(iip1,jjp1)
    133 
    134       INTEGER        longcles
    135       PARAMETER    ( longcles = 20 )
    136       REAL clesphy0( longcles )
    137132
    138133
     
    515510     .             zphis,
    516511     .             presnivs,
    517      .             clesphy0,
    518512     .             zufi,
    519513     .             zvfi,
     
    546540     .             zphis,
    547541     .             presnivs,
    548      .             clesphy0,
    549542     .             zufi,
    550543     .             zvfi,
  • trunk/libf/dyn3d/ce0l.F90

    r1 r97  
    3939#include "temps.h"
    4040#include "logic.h"
    41   INTEGER, PARAMETER            :: longcles=20
    42   REAL,    DIMENSION(longcles)  :: clesphy0
    4341  REAL,    DIMENSION(iip1,jjp1) :: masque
    4442  CHARACTER(LEN=15)             :: calnd
    4543!-------------------------------------------------------------------------------
    46   CALL conf_gcm( 99, .TRUE. , clesphy0 )
     44  CALL conf_gcm( 99, .TRUE. )
    4745
    4846  CALL Init_Phys_lmdz(iim,jjp1,llm,1,(/(jjm-1)*iim+2/))
  • trunk/libf/dyn3d/conf_gcm.F

    r6 r97  
    44c
    55c
    6       SUBROUTINE conf_gcm( tapedef, etatinit, clesphy0 )
     6      SUBROUTINE conf_gcm( tapedef, etatinit )
    77c
    88      USE control_mod
     
    2222c     etatinit  :     = TRUE   , on ne  compare pas les valeurs des para-
    2323c     -metres  du zoom  avec  celles lues sur le fichier start .
    24 c      clesphy0 :  sortie  .
    2524c
    2625       LOGICAL etatinit
    2726       INTEGER tapedef
    2827
    29        INTEGER        longcles
    30        PARAMETER(     longcles = 20 )
    31        REAL clesphy0( longcles )
    32 c
    3328c   Declarations :
    3429c   --------------
     
    147142      CALL getin('raz_date', raz_date)
    148143
     144!Config  Key  = resetvarc
     145!Config  Desc = Reinit des variables de controle
     146!Config  Def  = n
     147!Config  Help = Reinit des variables de controle
     148      resetvarc = .false.
     149      CALL getin('resetvarc',resetvarc)
     150
    149151!Config  Key  = nday
    150152!Config  Desc = Nombre de jours d'integration
     
    154156      nday = 10
    155157      CALL getin('nday',nday)
     158
     159!Config  Key  = less1day
     160!Config  Desc = Possibilite d'integrer moins d'un jour
     161!Config  Def  = n
     162!Config  Help = Possibilite d'integrer moins d'un jour
     163      less1day = .false.
     164      CALL getin('less1day',less1day)
     165
     166!Config  Key  = fractday
     167!Config  Desc = integration sur une fraction de jour
     168!Config  Def  = 0.01
     169!Config  Help = integration sur une fraction de jour
     170      fractday = 0.01
     171      CALL getin('fractday',fractday)
    156172
    157173!Config  Key  = day_step
     
    360376       ip_ebil_dyn = 0
    361377       CALL getin('ip_ebil_dyn',ip_ebil_dyn)
    362 
    363       DO i = 1, longcles
    364        clesphy0(i) = 0.
    365       ENDDO
    366378
    367379ccc  ....   P. Le Van , ajout  le 7/03/95 .pour le zoom ...
     
    611623      write(lunout,*)' anneeref = ', anneeref
    612624      write(lunout,*)' nday = ', nday
     625      if (less1day) then
     626      write(lunout,*)' Run only for a fraction of day ! '
     627      write(lunout,*)' fractday = ', fractday
     628      endif
    613629      write(lunout,*)' day_step = ', day_step
    614630      write(lunout,*)' iperiod = ', iperiod
  • trunk/libf/dyn3d/control_mod.F90

    r1 r97  
    2424  LOGICAL ok_dyn_ave ! output averaged values of fields in the dynamics
    2525                     ! in NetCDF files dyn_hist*ave.nc
     26  LOGICAL :: resetvarc  ! allows to reset the variables in sortvarc
     27  LOGICAL :: less1day   ! allows to run less than 1 day (for Venus)
     28  REAL    :: fractday   ! fraction of the day to run in this case
    2629
    2730END MODULE
  • trunk/libf/dyn3d/gcm.F

    r7 r97  
    8080#include "indicesol.h"
    8181#endif
    82       INTEGER         longcles
    83       PARAMETER     ( longcles = 20 )
    84       REAL  clesphy0( longcles )
    85       SAVE  clesphy0
    86 
    8782
    8883
     
    172167! Ehouarn: dump possibility of using defrun
    173168!#ifdef CPP_IOIPSL
    174       CALL conf_gcm( 99, .TRUE. , clesphy0 )
     169      CALL conf_gcm( 99, .TRUE. )
    175170!#else
    176171!      CALL defrun( 99, .TRUE. , clesphy0 )
     
    210205        call ioconf_calendar('gregorian')
    211206        write(lunout,*)'CALENDRIER CHOISI: Terrestre bissextile'
     207      else if (calend == 'titan') then
     208!        call ioconf_calendar('titan')
     209        write(lunout,*)'CALENDRIER CHOISI: Titan'
     210        abort_message = 'A FAIRE...'
     211        call abort_gcm(modname,abort_message,1)
     212      else if (calend == 'venus') then
     213!        call ioconf_calendar('venus')
     214        write(lunout,*)'CALENDRIER CHOISI: Venus'
     215        abort_message = 'A FAIRE...'
     216        call abort_gcm(modname,abort_message,1)
    212217      else
    213218        abort_message = 'Mauvais choix de calendrier'
     
    361366      mois = 1
    362367      heure = 0.
     368! Ce n'est defini pour l'instant que pour la Terre...
     369      if (planet_type.eq.'earth') then
    363370      call ymds2ju(annee_ref, mois, day_ref, heure, jD_ref)
    364371      jH_ref = jD_ref - int(jD_ref)
     
    373380      write(lunout,*)'jD_ref+jH_ref,an, mois, jour, heure'
    374381      write(lunout,*)jD_ref+jH_ref,an, mois, jour, heure
     382      else
     383! A voir pour Titan et Venus
     384        jD_ref=0
     385        jH_ref=0
     386      write(lunout,*)'A VOIR POUR VENUS ET TITAN: jD_ref, jH_ref'
     387      write(lunout,*)jD_ref,jH_ref
     388      endif ! planet_type
    375389#else
    376390! Ehouarn: we still need to define JD_ref and JH_ref
     
    460474
    461475#ifdef CPP_IOIPSL
     476! Ce n'est defini pour l'instant que pour la Terre...
     477      if (planet_type.eq.'earth') then
    462478      call ju2ymds(jD_ref + day_ini - day_ref, an, mois, jour, heure)
    463479      write (lunout,301)jour, mois, an
    464480      call ju2ymds(jD_ref + day_end - day_ref, an, mois, jour, heure)
    465481      write (lunout,302)jour, mois, an
     482      else
     483! A voir pour Titan et Venus
     484      write(lunout,*)'A VOIR POUR VENUS ET TITAN: separation en annees...'
     485      endif ! planet_type
     486
    466487 301  FORMAT('1'/,15x,'run du ', i2,'/',i2,'/',i4)
    467488 302  FORMAT('1'/,15x,'    au ', i2,'/',i2,'/',i4)
     
    519540
    520541
    521       CALL leapfrog(ucov,vcov,teta,ps,masse,phis,q,clesphy0,
     542      CALL leapfrog(ucov,vcov,teta,ps,masse,phis,q,
    522543     .              time_0)
    523544
  • trunk/libf/dyn3d/leapfrog.F

    r53 r97  
    44c
    55c
    6       SUBROUTINE leapfrog(ucov,vcov,teta,ps,masse,phis,q,clesphy0,
     6      SUBROUTINE leapfrog(ucov,vcov,teta,ps,masse,phis,q,
    77     &                    time_0)
    88
     
    6666! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique
    6767! #include "clesphys.h"
    68 
    69       INTEGER         longcles
    70       PARAMETER     ( longcles = 20 )
    71       REAL  clesphy0( longcles )
    7268
    7369      real zqmin,zqmax
     
    202198
    203199      itaufin   = nday*day_step
     200      if (less1day) then
     201c MODIF VENUS: to run less than one day:
     202        itaufin   = int(fractday*day_step)
     203      endif
    204204      itaufinp1 = itaufin +1
    205205      modname="leapfrog"
     
    236236      CALL pression ( ip1jmp1, ap, bp, ps, p       )
    237237      CALL exner_hyb( ip1jmp1, ps, p,alpha,beta, pks, pk, pkf )
     238c------------------
     239c TEST PK MONOTONE
     240c------------------
     241      write(*,*) "Test PK"
     242      do ij=1,ip1jmp1
     243        do l=2,llm
     244          if(pk(ij,l).gt.pk(ij,l-1)) then
     245c           write(*,*) ij,l,pk(ij,l)
     246            abort_message = 'PK non strictement decroissante'
     247            call abort_gcm(modname,abort_message,1)
     248c           write(*,*) "ATTENTION, Test PK deconnecté..."
     249          endif
     250        enddo
     251      enddo
     252      write(*,*) "Fin Test PK"
     253c     stop
     254c------------------
    238255
    239256c-----------------------------------------------------------------------
     
    430447     $               du,dv,dteta,dq,
    431448     $               flxw,
    432      $               clesphy0, dufi,dvfi,dtetafi,dqfi,dpfi  )
     449     $               dufi,dvfi,dtetafi,dqfi,dpfi  )
    433450
    434451c      ajout des tendances physiques:
  • trunk/libf/dyn3d/sortvarc.F

    r1 r97  
    5555
    5656      REAL       SSUM
     57
     58      logical  firstcal
     59      data     firstcal/.true./
     60      save     firstcal
    5761
    5862c-----------------------------------------------------------------------
     
    115119     *               cosphi(ij)
    116120          ENDDO
    117           angl(l) = radsg *
     121          angl(l) = rad *
    118122     s    (SSUM(ip1jm-iip1,ge(iip2),1)-SSUM(jjm-1,ge(iip2),iip1))
    119123      ENDDO
     
    129133      ang   = SSUM(     llm,  angl, 1 )
    130134
    131 c      rday = REAL(INT ( day_ini + time ))
    132 c
     135      IF (firstcal.and.resetvarc) then
    133136       rday = REAL(INT(time-jD_ref-jH_ref))
    134       IF(ptot0.eq.0.)  THEN
    135137         PRINT 3500, itau, rday, heure,time
    136138         PRINT*,'WARNING!!! On recalcule les valeurs initiales de :'
     
    151153      ang = ang /ang0
    152154
     155      firstcal = .false.
    153156
    154157      PRINT 3500, itau, rday, heure, time
  • trunk/libf/dyn3d/sortvarc0.F

    r1 r97  
    116116     *               cosphi(ij)
    117117          ENDDO
    118           angl(l) = radsg *
     118          angl(l) = rad *
    119119     s    (SSUM(ip1jm-iip1,ge(iip2),1)-SSUM(jjm-1,ge(iip2),iip1))
    120120      ENDDO
  • trunk/libf/dyn3dpar/calfis_p.F

    r52 r97  
    2121     $                  pdq,
    2222     $                  flxw,
    23      $                  clesphy0,
    2423     $                  pdufi,
    2524     $                  pdvfi,
     
    144143      REAL pdqfi(iip1,jjp1,llm,nqtot)
    145144      REAL pdpsfi(iip1,jjp1)
    146 
    147       INTEGER        longcles
    148       PARAMETER    ( longcles = 20 )
    149       REAL clesphy0( longcles )
    150145
    151146#ifdef CPP_PHYS
     
    691686     .             zphis_omp,
    692687     .             presnivs_omp,
    693      .             clesphy0,
    694688     .             zufi_omp,
    695689     .             zvfi_omp,
     
    720714     .             zphis_omp,
    721715     .             presnivs_omp,
    722      .             clesphy0,
    723716     .             zufi_omp,
    724717     .             zvfi_omp,
  • trunk/libf/dyn3dpar/ce0l.F90

    r66 r97  
    4242#include "temps.h"
    4343#include "logic.h"
    44   INTEGER, PARAMETER            :: longcles=20
    45   REAL,    DIMENSION(longcles)  :: clesphy0
    4644  REAL,    DIMENSION(iip1,jjp1) :: masque
    4745  CHARACTER(LEN=15)             :: calnd
    4846!-------------------------------------------------------------------------------
    49   CALL conf_gcm( 99, .TRUE. , clesphy0 )
     47  CALL conf_gcm( 99, .TRUE. )
    5048
    5149  CALL init_mpi
  • trunk/libf/dyn3dpar/conf_gcm.F

    r7 r97  
    44c
    55c
    6       SUBROUTINE conf_gcm( tapedef, etatinit, clesphy0 )
     6      SUBROUTINE conf_gcm( tapedef, etatinit )
    77c
    88#ifdef CPP_IOIPSL
     
    2626c     etatinit  :     = TRUE   , on ne  compare pas les valeurs des para-
    2727c     -metres  du zoom  avec  celles lues sur le fichier start .
    28 c      clesphy0 :  sortie  .
    2928c
    3029       LOGICAL etatinit
    3130       INTEGER tapedef
    3231
    33        INTEGER        longcles
    34        PARAMETER(     longcles = 20 )
    35        REAL clesphy0( longcles )
    36 c
    3732c   Declarations :
    3833c   --------------
     
    157152      CALL getin('raz_date', raz_date)
    158153
     154!Config  Key  = resetvarc
     155!Config  Desc = Reinit des variables de controle
     156!Config  Def  = n
     157!Config  Help = Reinit des variables de controle
     158      resetvarc = .false.
     159      CALL getin('resetvarc',resetvarc)
     160
    159161!Config  Key  = nday
    160162!Config  Desc = Nombre de jours d'integration
     
    164166      nday = 10
    165167      CALL getin('nday',nday)
     168
     169!Config  Key  = less1day
     170!Config  Desc = Possibilite d'integrer moins d'un jour
     171!Config  Def  = n
     172!Config  Help = Possibilite d'integrer moins d'un jour
     173      less1day = .false.
     174      CALL getin('less1day',less1day)
     175
     176!Config  Key  = fractday
     177!Config  Desc = integration sur une fraction de jour
     178!Config  Def  = 0.01
     179!Config  Help = integration sur une fraction de jour
     180      fractday = 0.01
     181      CALL getin('fractday',fractday)
    166182
    167183!Config  Key  = day_step
     
    628644      write(lunout,*)' anneeref = ', anneeref
    629645      write(lunout,*)' nday = ', nday
     646      if (less1day) then
     647      write(lunout,*)' Run only for a fraction of day ! '
     648      write(lunout,*)' fractday = ', fractday
     649      endif
    630650      write(lunout,*)' day_step = ', day_step
    631651      write(lunout,*)' iperiod = ', iperiod
  • trunk/libf/dyn3dpar/control_mod.F90

    r1 r97  
    2424  LOGICAL ok_dyn_ave ! output averaged values of fields in the dynamics
    2525                     ! in NetCDF files dyn_hist*ave.nc
     26  LOGICAL :: resetvarc  ! allows to reset the variables in sortvarc
     27  LOGICAL :: less1day   ! allows to run less than 1 day (for Venus)
     28  REAL    :: fractday   ! fraction of the day to run in this case
    2629
    2730END MODULE
  • trunk/libf/dyn3dpar/gcm.F

    r52 r97  
    7979#include "indicesol.h"
    8080#endif
    81       INTEGER         longcles
    82       PARAMETER     ( longcles = 20 )
    83       REAL  clesphy0( longcles )
    84       SAVE  clesphy0
    85 
    8681
    8782
     
    175170! Ehouarn: dump possibility of using defrun
    176171!#ifdef CPP_IOIPSL
    177       CALL conf_gcm( 99, .TRUE. , clesphy0 )
     172      CALL conf_gcm( 99, .TRUE. )
    178173!#else
    179174!      CALL defrun( 99, .TRUE. , clesphy0 )
     
    240235        call ioconf_calendar('gregorian')
    241236        write(lunout,*)'CALENDRIER CHOISI: Terrestre bissextile'
     237      else if (calend == 'titan') then
     238!        call ioconf_calendar('titan')
     239        write(lunout,*)'CALENDRIER CHOISI: Titan'
     240        abort_message = 'A FAIRE...'
     241        call abort_gcm(modname,abort_message,1)
     242      else if (calend == 'venus') then
     243!        call ioconf_calendar('venus')
     244        write(lunout,*)'CALENDRIER CHOISI: Venus'
     245        abort_message = 'A FAIRE...'
     246        call abort_gcm(modname,abort_message,1)
    242247      else
    243248        abort_message = 'Mauvais choix de calendrier'
     
    382387      mois = 1
    383388      heure = 0.
     389! Ce n'est defini pour l'instant que pour la Terre...
     390      if (planet_type.eq.'earth') then
    384391      call ymds2ju(annee_ref, mois, day_ref, heure, jD_ref)
    385392      jH_ref = jD_ref - int(jD_ref)
     
    394401      write(lunout,*)'jD_ref+jH_ref,an, mois, jour, heure'
    395402      write(lunout,*)jD_ref+jH_ref,an, mois, jour, heure
     403      else
     404! A voir pour Titan et Venus
     405        jD_ref=0
     406        jH_ref=0
     407      write(lunout,*)'A VOIR POUR VENUS ET TITAN: jD_ref, jH_ref'
     408      write(lunout,*)jD_ref,jH_ref
     409      endif ! planet_type
    396410#else
    397411! Ehouarn: we still need to define JD_ref and JH_ref
     
    491505
    492506#ifdef CPP_IOIPSL
     507! Ce n'est defini pour l'instant que pour la Terre...
     508      if (planet_type.eq.'earth') then
    493509      call ju2ymds(jD_ref + day_ini - day_ref, an, mois, jour, heure)
    494510      write (lunout,301)jour, mois, an
    495511      call ju2ymds(jD_ref + day_end - day_ref, an, mois, jour, heure)
    496512      write (lunout,302)jour, mois, an
     513      else
     514! A voir pour Titan et Venus
     515      write(lunout,*)'A VOIR POUR VENUS ET TITAN: separation en annees...'
     516      endif ! planet_type
     517
    497518 301  FORMAT('1'/,15x,'run du ', i2,'/',i2,'/',i4)
    498519 302  FORMAT('1'/,15x,'    au ', i2,'/',i2,'/',i4)
     
    554575
    555576c$OMP PARALLEL DEFAULT(SHARED) COPYIN(/temps/,/logic/)
    556       CALL leapfrog_p(ucov,vcov,teta,ps,masse,phis,q,clesphy0,
     577      CALL leapfrog_p(ucov,vcov,teta,ps,masse,phis,q,
    557578     .              time_0)
    558579c$OMP END PARALLEL
  • trunk/libf/dyn3dpar/leapfrog_p.F

    r52 r97  
    55c
    66
    7       SUBROUTINE leapfrog_p(ucov,vcov,teta,ps,masse,phis,q,clesphy0,
     7      SUBROUTINE leapfrog_p(ucov,vcov,teta,ps,masse,phis,q,
    88     &                    time_0)
    99
     
    7070#include "academic.h"
    7171     
    72       INTEGER         longcles
    73       PARAMETER     ( longcles = 20 )
    74       REAL  clesphy0( longcles )
    75 
    7672      real zqmin,zqmax
    7773      INTEGER nbetatmoy, nbetatdem,nbetat
     
    219215     
    220216      itaufin   = nday*day_step
     217      if (less1day) then
     218c MODIF VENUS: to run less than one day:
     219        itaufin   = int(fractday*day_step)
     220      endif
    221221      itaufinp1 = itaufin +1
    222222      modname="leapfrog_p"
     
    820820     $               du,dv,dteta,dq,
    821821     $               flxw,
    822      $               clesphy0, dufi,dvfi,dtetafi,dqfi,dpfi  )
     822     $               dufi,dvfi,dtetafi,dqfi,dpfi  )
    823823!        CALL FTRACE_REGION_END("calfis")
    824824        ijb=ij_begin
  • trunk/libf/dyn3dpar/sortvarc.F

    r1 r97  
    5555
    5656      REAL       SSUM
     57
     58      logical  firstcal
     59      data     firstcal/.true./
     60      save     firstcal
    5761
    5862c-----------------------------------------------------------------------
     
    129133      ang   = SSUM(     llm,  angl, 1 )
    130134
    131 c      rday = REAL(INT ( day_ini + time ))
    132 c
     135      IF (firstcal.and.resetvarc) then
    133136       rday = REAL(INT(time-jD_ref-jH_ref))
    134       IF(ptot0.eq.0.)  THEN
    135137         PRINT 3500, itau, rday, heure,time
    136138         PRINT*,'WARNING!!! On recalcule les valeurs initiales de :'
     
    151153      ang = ang /ang0
    152154
     155      firstcal = .false.
    153156
    154157      PRINT 3500, itau, rday, heure, time
  • trunk/libf/phytitan/YOMCST.h

    r3 r97  
    11!
    2 ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/YOMCST.h,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $
     2!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
     3!                 veillez  n'utiliser que des ! pour les commentaires
     4!                 et  bien positionner les & des lignes de continuation
     5!                 (les placer en colonne 6 et en colonne 73)
    36!
    47! A1.0 Fundamental constants
     
    69! A1.1 Astronomical constants
    710      REAL RDAY,REA,REPSM,RSIYEA,RSIDAY,ROMEGA
     11! A1.1.bis Constantes concernant l'orbite de la Terre:
     12      REAL :: R_ecc, R_peri, R_incl
    813! A1.2 Geoide
    914      REAL RA,RG,R1SA
    1015! A1.3 Radiation
    11 !     REAL RSIGMA,RI0
     16!     REAL :: RSIGMA,RI0
    1217      REAL RSIGMA
    1318! A1.4 Thermodynamic gas phase
     
    2530      REAL RALPD,RBETD,RGAMD
    2631!
    27 !    S      ,RSIGMA,RI0
    28       COMMON/YOMCST/RPI   ,RCLUM ,RHPLA ,RKBOL ,RNAVO
    29      S      ,RDAY  ,REA   ,REPSM ,RSIYEA,RSIDAY,ROMEGA
    30      S      ,RA    ,RG    ,R1SA
    31      S      ,RSIGMA
    32      S      ,R     ,RMD   ,RMV   ,RD    ,RV    ,RCPD
    33      S      ,RCPV  ,RCVD  ,RCVV  ,RKAPPA,RETV
    34      S      ,RCW   ,RCS
    35      S      ,RLVTT ,RLSTT ,RLMLT ,RTT   ,RATM
    36      S      ,RESTT ,RALPW ,RBETW ,RGAMW ,RALPS ,RBETS ,RGAMS
    37      S      ,RALPD ,RBETD ,RGAMD
    38 !    ------------------------------------------------------------------
     32      COMMON/YOMCST/RPI ,RCLUM, RHPLA, RKBOL, RNAVO ,RDAY  ,REA         &
     33     & ,REPSM ,RSIYEA,RSIDAY,ROMEGA , R_ecc, R_peri, R_incl,            &
     34     & ,RA    ,RG ,R1SA                                                 &
     35     & ,RSIGMA,R ,RMD   ,RMV   ,RD    ,RV    ,RCPD ,RCPV,RCVD           &
     36     & ,RCVV  ,RKAPPA,RETV ,RCW   ,RCS ,RLVTT ,RLSTT ,RLMLT ,RTT ,RATM  &
     37     & ,RESTT ,RALPW ,RBETW ,RGAMW ,RALPS ,RBETS ,RGAMS ,RALPD ,RBETD   &
     38     & ,RGAMD
  • trunk/libf/phytitan/calchim.F

    r3 r97  
    3636      REAL         cplev(jjm+1,klev)      ! pression intercouches (Pa)
    3737     
    38       REAL         dqyc(jjm+1,klev,nqmx)  ! Tendances especes chimiques (nqmx, mais en fait NC...)
     38      REAL         dqyc(jjm+1,klev,nqtot)  ! Tendances especes chimiques (nqtot, mais en fait NC...)
    3939     
    4040c    Local variables :
  • trunk/libf/phytitan/clcdrag.F90

    r3 r97  
    3030! ================================================================= c
    3131!
    32 #include "YOMCST.inc"
    33 #include "clesphys.inc"
     32#include "YOMCST.h"
     33#include "clesphys.h"
    3434!
    3535! Quelques constantes et options:
  • trunk/libf/phytitan/clesphys.h

    r3 r97  
    11!
    2 ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/clesphys.h,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $
     2!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
     3!                 veillez  n'utiliser que des ! pour les commentaires
     4!                 et  bien positionner les & des lignes de continuation
     5!                 (les placer en colonne 6 et en colonne 73)
    36!
    4 c..include cles_phys.h
    5 c
    6        LOGICAL cycle_diurne,soil_model,new_oliq,ok_orodr,ok_orolf
    7        LOGICAL ok_limitvrai
     7!..include cles_phys.h
     8!
     9       LOGICAL cycle_diurne,soil_model,ok_orodr,ok_orolf
     10       LOGICAL ok_orodr,ok_orolf,ok_gw_nonoro
    811       INTEGER nbapp_rad, nbapp_chim, iflag_con, iflag_ajs
     12       REAL    ecritphy
    913       REAL    solaire
    10 
    11 c Parametres pour PBL:
    12        real z0,lmixmin
    13        REAL ksta
     14       REAL    z0, lmixmin
     15       REAL    ksta, inertie
    1416       LOGICAL ok_kzmin
    15 
    16 c Parametres Chimie:
     17       INTEGER lev_histmth, lev_histday
    1718       logical chimi,ylellouch,hcnrad
    1819       integer vchim,aerprod,htoh2
    19        
    20 c Parametres Microphysique:
    2120       integer microfi,cutoff
    22        real tx,tcorrect
    23        
    24 c surface
    25        real inertie
     21       real    tx,tcorrect
    2622
    27 cIM lev_histmth : niveau sorties mensuelles
    28 cIM lev_histday : niveau sorties journalieres
    29        INTEGER lev_histmth, lev_histday
    3023
    31        COMMON/clesphys/cycle_diurne, soil_model, new_oliq,
    32      ,     ok_orodr, ok_orolf, ok_limitvrai, nbapp_rad, nbapp_chim
    33      ,     , iflag_con, iflag_ajs, solaire, z0, lmixmin, ksta
    34      ,     , ok_kzmin, lev_histmth, lev_histday
    35      ,     , inertie, chimi,vchim,aerprod,htoh2,ylellouch,hcnrad
    36      ,     , microfi,cutoff,tx,tcorrect
     24       COMMON/clesphys/cycle_diurne, soil_model,                        &
     25     &     ok_orodr, ok_orolf, ok_gw_nonoro, nbapp_rad, nbapp_chim      &
     26     &     , ecritphy                                                   &
     27     &     , iflag_con, iflag_ajs, solaire, z0, lmixmin, ksta           &
     28     &     , ok_kzmin, lev_histmth, lev_histday                         &
     29     &     , inertie, chimi,vchim,aerprod,htoh2,ylellouch,hcnrad        &
     30     &     , microfi,cutoff,tx,tcorrect
     31
  • trunk/libf/phytitan/comorbit.h

    r3 r97  
    1 c-----------------------------------------------------------------------
    2 c INCLUDE 'comorbit.h'
     1!
     2!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
     3!                 veillez  n'utiliser que des ! pour les commentaires
     4!                 et  bien positionner les & des lignes de continuation
     5!                 (les placer en colonne 6 et en colonne 73)
     6!
     7!..include comorbit.h
    38
    4       COMMON/comorbit/aphelie,periheli,year_day,
    5      $       peri_day,timeperi,obliquit,
    6      $      e_elips,p_elips,unitastr,pi
     9      REAL aphelie,periheli,year_day
     10      REAL peri_day,timeperi,obliquit
     11      REAL e_elips,p_elips,unitastr,pi
    712
    8       REAL aphelie,periheli,year_day,
    9      $  peri_day,timeperi,obliquit,
    10      $  e_elips,p_elips,unitastr,pi
     13      COMMON/comorbit/aphelie,periheli,year_day,                        &
     14     &       peri_day,timeperi,obliquit,                                &
     15     &       e_elips,p_elips,unitastr,pi
    1116
    12 c-----------------------------------------------------------------------
  • trunk/libf/phytitan/conf_phys.F90

    r3 r97  
    1010   implicit none
    1111
    12 #include "YOMCST.inc"
    13 #include "clesphys.inc"
     12#include "YOMCST.h"
     13#include "clesphys.h"
    1414#include "compbl.h"
    15 #include "comorbit.inc"
     15#include "comorbit.h"
     16
     17! ok_journe:  sorties journalieres
     18! ok_mensuel: sorties mensuelles
     19! ok_instan:  sorties instantanees
     20
     21
     22! Sortie:
     23  logical              :: ok_journe, ok_mensuel, ok_instan       
     24  integer              :: if_ebil
     25
     26! Local
     27  integer              :: numout = 6
     28
    1629!
    1730! Configuration de la "physique" de LMDZ a l'aide de la fonction
     
    2235!--- Ca lit le physiq.def ---
    2336
    24 !
    25 ! ok_mensuel: sorties mensuelles
    26 ! ok_journe:  sorties journalieres
    27 ! ok_instan:  sorties instantanees
    28 
    29 
    30 ! Sortie:
    31   logical              :: ok_mensuel, ok_journe, ok_instan
    32   integer              :: if_ebil
    33 
    34 ! Local
    35   integer              :: numout = 6
    36   real*4               :: zzz
     37!******************* parametres anciennement lus dans gcm.def
     38
     39!Config  Key  = cycle_diurne
     40!Config  Desc = Cycle ddiurne
     41!Config  Def  = y
     42!Config  Help = Cette option permet d'eteidre le cycle diurne.
     43!Config         Peut etre util pour accelerer le code !
     44       cycle_diurne = .TRUE.
     45       CALL getin('cycle_diurne',cycle_diurne)
     46
     47!Config  Key  = soil_model
     48!Config  Desc = Modele de sol
     49!Config  Def  = y
     50!Config  Help = Choix du modele de sol (Thermique ?)
     51!Config         Option qui pourait un string afin de pouvoir
     52!Config         plus de choix ! Ou meme une liste d'options !
     53       soil_model = .TRUE.
     54       CALL getin('soil_model',soil_model)
     55
     56!Config  Key  = ok_orodr
     57!Config  Desc = Oro drag
     58!Config  Def  = y
     59!Config  Help = GW drag orographie
     60!Config         
     61       ok_orodr = .TRUE.
     62       CALL getin('ok_orodr',ok_orodr)
     63
     64!Config  Key  =  ok_orolf
     65!Config  Desc = Oro lift
     66!Config  Def  = n
     67!Config  Help = GW lift orographie (pas utilise)
     68       ok_orolf = .TRUE.
     69       CALL getin('ok_orolf', ok_orolf)
     70
     71!Config  Key  = ok_gw_nonoro
     72!Config  Desc = Gravity waves parameterization
     73!Config  Def  = n
     74!Config  Help = GW drag non-orographique
     75       ok_gw_nonoro = .FALSE.
     76       CALL getin('ok_gw_nonoro',ok_gw_nonoro)
     77
     78!Config  Key  = nbapp_rad
     79!Config  Desc = Frequence d'appel au rayonnement
     80!Config  Def  = 12
     81!Config  Help = Nombre  d'appels des routines de rayonnements
     82!Config         par jour.
     83       nbapp_rad = 12
     84       CALL getin('nbapp_rad',nbapp_rad)
     85
     86!Config  Key  = nbapp_chim
     87!Config  Desc = Frequence d'appel a la chimie
     88!Config  Def  = 1
     89!Config  Help = Nombre  d'appels des routines de chimie
     90!Config         par jour.
     91       nbapp_chim = 1
     92       CALL getin('nbapp_chim',nbapp_chim)
     93
     94!Config  Key  = iflag_con
     95!Config  Desc = Flag de convection
     96!Config  Def  = 0
     97!Config  Help = Flag  pour la convection les options suivantes existent :
     98!Config         0 : ajsec simple (VENUS, TITAN)
     99!Config         1 pour LMD,
     100!Config         2 pour Tiedtke,
     101!Config         3 pour CCM(NCAR) 
     102       iflag_con = 0
     103       CALL getin('iflag_con',iflag_con)
     104
     105!******************* fin parametres anciennement lus dans gcm.def
    37106
    38107!Config Key  = OK_mensuel
     
    64133!
    65134!
     135!Config  Key  = ecritphy
     136!Config  Desc = Frequence d'ecriture dans histins
     137!Config  Def  = 1
     138!Config  Help = frequence de l'ecriture du fichier histins
     139!Config         en jours.
     140!
     141       ecritphy = 1.
     142       CALL getin('ecritphy', ecritphy)
     143!
    66144!Config Key  = if_ebil
    67145!Config Desc = Niveau de sortie pour les diags bilan d'energie
     
    85163!Config Help =
    86164!               
    87   zzz = 673.
    88   call getin('year_day', zzz)
    89   year_day = zzz
     165  year_day = 673.
     166  call getin('year_day', year_day)
    90167!
    91168!Config Key  = peri_day
     
    94171!Config Help =
    95172!               
    96   zzz = 533.
    97   call getin('peri_day', zzz)
    98   peri_day = zzz
     173  peri_day = 533.
     174  call getin('peri_day', peri_day)
    99175!
    100176!Config Key  = periheli
     
    103179!Config Help =
    104180!               
    105   zzz = 1354.5
    106   call getin('periheli', zzz)
    107   periheli = zzz
     181  periheli = 1354.5
     182  call getin('periheli', periheli)
    108183!!
    109184!Config Key  = aphelie
     
    112187!Config Help =
    113188!               
    114   zzz = 1506.0
    115   call getin('aphelie', zzz)
    116   aphelie = zzz
     189  aphelie = 1506.0
     190  call getin('aphelie', aphelie)
    117191!!
    118192!Config Key  = obliquit
     
    121195!Config Help =
    122196!               
    123   zzz = 26.7
    124   call getin('obliquit', zzz)
    125   obliquit = zzz
     197  obliquit = 26.7
     198  call getin('obliquit', obliquit)
    126199!
    127200!Config Key  = solaire
     
    131204!Config Help =
    132205!
    133   zzz = 2620.
    134     call getin('solaire', zzz)
    135   solaire = zzz
     206  solaire = 2620.
     207    call getin('solaire', solaire)
    136208!
    137209!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    158230!Config Help =
    159231!
    160   zzz = 1.0e-7
    161   call getin('ksta',zzz)
    162   ksta = zzz
     232  ksta = 1.0e-7
     233  call getin('ksta',ksta)
    163234
    164235!
     
    168239!Config Help =
    169240!
    170   zzz = 1.0e-2
    171   call getin('z0',zzz)
    172   z0 = zzz
     241  z0 = 1.0e-2
     242  call getin('z0',z0)
    173243
    174244!
     
    178248!Config Help =
    179249!
    180   zzz = 35.
    181   call getin('lmixmin',zzz)
    182   lmixmin = zzz
    183 
    184 !
     250  lmixmin = 35.
     251  call getin('lmixmin',lmixmin)
     252
    185253!
    186254!Config Key  = ok_kzmin
     
    204272!Config Key  = inertie
    205273!Config Desc =
    206 !Config Def  = 2000.
    207 !Config Help =
    208 !
    209   zzz = 2000.
    210   call getin('inertie',zzz)
    211   inertie = zzz
     274!Config Def  = 340.
     275!Config Help =
     276!
     277  inertie = 340.
     278  call getin('inertie',inertie)
    212279!
    213280!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    287354!Config Help =
    288355!
    289   zzz = 3.5
    290   call getin('tx',zzz)
    291   tx = zzz
     356  tx = 3.5
     357  call getin('tx',tx)
    292358
    293359!
     
    297363!Config Help =
    298364!
    299   zzz = 1.
    300   call getin('tcorrect',zzz)
    301   tcorrect = zzz
     365  tcorrect = 1.
     366  call getin('tcorrect',tcorrect)
    302367
    303368!
     
    349414  write(numout,*)' ##############################################'
    350415  write(numout,*)' Configuration des parametres de la physique: '
     416  write(numout,*)' cycle_diurne = ', cycle_diurne
     417  write(numout,*)' soil_model = ', soil_model
     418  write(numout,*)' ok_orodr = ', ok_orodr
     419  write(numout,*)' ok_orolf = ', ok_orolf
     420  write(numout,*)' ok_gw_nonoro = ', ok_gw_nonoro
     421  write(numout,*)' nbapp_rad = ', nbapp_rad
     422  write(numout,*)' nbapp_chim = ', nbapp_chim
     423  write(numout,*)' iflag_con = ', iflag_con
    351424  write(numout,*)' Sortie mensuelle = ', ok_mensuel
    352425  write(numout,*)' Sortie journaliere = ', ok_journe
    353426  write(numout,*)' Sortie instantanee = ', ok_instan
     427  write(numout,*)' frequence sorties = ', ecritphy 
    354428  write(numout,*)' Sortie bilan d energie, if_ebil =', if_ebil
    355429  write(numout,*)' Duree de l annee = ',year_day
  • trunk/libf/phytitan/ini_histday.h

    r3 r97  
    1010c
    1111         idayref = day_ref
    12          z4julian = zjulian
    13          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     12         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1413c
    1514         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    1918         ENDDO
    2019         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
    21          z4_lon = zx_lon
    22          z4_lat = zx_lat
    23          zpresnivs=presnivs
    24          CALL histbeg("histday", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    25      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto,
     20         CALL histbeg("histday", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
     21     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto,
    2622     .                 nhori, nid_day)
    2723         write(*,*)'Journee ', itau_phy, zjulian
    2824         CALL histvert(nid_day, "presnivs", "Vertical levels", "mb",
    29      .                 klev, zpresnivs, nvert)
     25     .                 klev, presnivs, nvert)
    3026
    3127c-------------------------------------------------------
  • trunk/libf/phytitan/ini_histins.h

    r3 r97  
    99c
    1010         idayref = day_ref
    11          z4julian = zjulian
    12          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     11         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1312c
    1413         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    1817         ENDDO
    1918         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
    20          z4_lon = zx_lon
    21          z4_lat = zx_lat
    22          zpresnivs=presnivs
    23          CALL histbeg("histins", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    24      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto1,
     19         CALL histbeg("histins", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
     20     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto1,
    2521     .                 nhori, nid_ins)
    2622         write(*,*)'Inst ', itau_phy, zjulian
    2723         CALL histvert(nid_ins, "presnivs", "Vertical levels", "mb",
    28      .                 klev, zpresnivs, nvert)
     24     .                 klev, presnivs, nvert)
    2925
    3026c-------------------------------------------------------
  • trunk/libf/phytitan/ini_histmth.h

    r3 r97  
    77c
    88         idayref = day_ref
    9          z4julian = zjulian
    10          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     9         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1110c
    1211         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    1615         ENDDO
    1716         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
    18          z4_lon = zx_lon
    19          z4_lat = zx_lat
    20          zpresnivs=presnivs
    21          CALL histbeg("histmth", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    22      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto,
     17         CALL histbeg("histmth", iim,zx_lon(:,1), jjmp1,zx_lat(1,:),
     18     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto,
    2319     .                 nhori, nid_mth)
    2420         write(*,*)'Journee ', itau_phy, zjulian
    2521         CALL histvert(nid_mth, "presnivs", "Vertical levels", "mb",
    26      .                 klev, zpresnivs, nvert)
     22     .                 klev, presnivs, nvert)
    2723
    2824c-------------------------------------------------------
     
    9894c
    9995         if (iflag_trac.eq.1) THEN
    100           if (microfi.eq.1) then
    101            DO iq=1,nmicro
    102          CALL histdef(nid_mth, tname(iq), ttext(iq), "n/m2",
    103      .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
    104      .                "ave(X)", zsto,zout)
    105            ENDDO
    106           endif
    107           if (nmicro.lt.nqmax) then
     96c         if (microfi.eq.1) then
     97c          DO iq=1,nmicro
     98c        CALL histdef(nid_mth, tname(iq), ttext(iq), "n/m2",
     99c    .                iim,jjmp1,nhori, klev,1,klev,nvert, 32,
     100c    .                "ave(X)", zsto,zout)
     101c          ENDDO
     102c         endif
     103          if (nmicro.lt.nqmax) then
    108104           DO iq=nmicro+1,nqmax
    109105         CALL histdef(nid_mth, tname(iq), ttext(iq), "ppm",
     
    117113c    .                "ave(X)", zsto,zout)
    118114c          ENDDO
    119           endif
     115          endif
    120116         endif
    121117c
     
    150146     .                iim,jjmp1,nhori, klev,1,klev,nvert,
    151147     .                32, "ave(X)", zsto1,zout)
     148c
     149         DO k=3,nspecv,5
     150           write(str1,'(i2.2)') k
     151         CALL histdef(nid_mth,"thv"//str1,"Haze Opa Vis",
     152     .                "--",iim,jjmp1,nhori,klev,1,klev,nvert,32,
     153     .                "ave(X)",zsto1,zout)
     154         ENDDO
     155c
     156         DO k=3,nspecv,5
     157           write(str1,'(i2.2)') k
     158         CALL histdef(nid_mth,"khv"//str1,"Haze ext Vis ",
     159     .                "m-1",iim,jjmp1,nhori,klev,1,klev,nvert,32,
     160     .                "ave(X)",zsto1,zout)
     161         ENDDO
    152162c
    153163      ENDIF !lev_histmth.GE.3
  • trunk/libf/phytitan/interface_surf.F90

    r3 r97  
    2525  END INTERFACE
    2626
    27 #include "YOMCST.inc"
     27#include "YOMCST.h"
    2828
    2929  CONTAINS
  • trunk/libf/phytitan/optci.F

    r3 r97  
    88c   Arguments:
    99c   ---------
    10       REAL    ykim(klon,klev,nqmx)
     10      REAL    ykim(klon,klev,nqtot)
    1111      integer nmicro
    1212c   ---------
     
    5656      DIMENSION PROD(NLEVEL)
    5757* nrad dans microtab.h
    58       real qaer(klon,nlayer,nqmx)
     58      real qaer(klon,nlayer,nqtot)
    5959      real v(nrad),rayon(nrad),vrat,dr(nrad),dv(nrad)
    6060      real xv1(klev,nspeci),xv2(klev,nspeci)
     
    121121      if (iopti.eq.0) then
    122122
    123 c verif pour taille zqaer_1pt, sachant que si microfi=0 et nqmx=1,
     123c verif pour taille zqaer_1pt, sachant que si microfi=0 et nqtot=1,
    124124c il faut quand meme qu on lise la look-up table de dim nrad=10
    125125c et si microfi=1, on doit avoir nmicro=nrad (dans microtab.h)
  • trunk/libf/phytitan/optcv.F

    r3 r97  
    5151      COMMON /ADJUST/ RHCH4,FH2,FHAZE,FHVIS,FHIR,TAUFAC,RCLOUD,FARGON
    5252      COMMON /CONST/ RGAS,RHOP,PI,SIGMA
    53       COMMON /traceurs/qaer(klon,nlayer,nqmx)
     53      COMMON /traceurs/qaer(klon,nlayer,nqtot)
    5454      COMMON /part/ v(nrad),rayon(nrad),vrat,dr(nrad),dv(nrad)
    5555
     
    9393c      do nng=2,klon
    9494c       do i=1,klev           
    95 c        do j=1,nqmx
     95c        do j=1,nqtot
    9696c          sum=sum+qaer(nng,i,j)*rayon(j)**3.*1.3333*3.1415*1000.
    9797c        enddo
     
    107107      if (ioptv.eq.0) then
    108108
    109 c verif pour taille zqaer_1pt, sachant que si microfi=0 et nqmx=1,
     109c verif pour taille zqaer_1pt, sachant que si microfi=0 et nqtot=1,
    110110c il faut quand meme qu'on lise la look-up table de dim nrad=10
    111111c et si microfi=1, on doit avoir nmicro=nrad (dans microtab.h)
  • trunk/libf/phytitan/pg3.F

    r3 r97  
    8686* --------------
    8787
    88 c      print*,'Df aerosols /1 a nqmx/'
     88c      print*,'Df aerosols /1 a nqtot/'
    8989c       write(*,*) (df(h),h=1,nrad)
    9090c       write(*,*) (rayon(h),h=1,nrad)
     
    173173c
    174174c      print*,'CHECK BEFORE COMPUTATION'
    175 c      print*,'nrad=',nrad,' nqmx=',nqmx,' ctrl...'
     175c      print*,'nrad=',nrad,' nqtot=',nqtot,' ctrl...'
    176176c      print*,'##############################################'
    177177c      print*,'1.0 - tableaux de bases:'
     
    221221c      print*,'1.2 - Avec les rayons:'
    222222c      print*,'h        i       j       k(h,i,j)'
    223 c        do j=1,nqmx
     223c        do j=1,nqtot
    224224c         print*,h,i,j,k(h,i,j)
    225225c      enddo
     
    311311#include "dimensions.h"
    312312#include "microtab.h"
    313 cparameter(nz=200,nrad=nqmx,nztop=135)
     313cparameter(nz=200,nrad=nqtot,nztop=135)
    314314        common/con/c
    315315        real c(nz,nrad,2)
     
    353353        integer li,lf
    354354        real tt,dt
    355 cparameter(nz=200,nrad=nqmx,nztop=135)
     355cparameter(nz=200,nrad=nqtot,nztop=135)
    356356        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz),pi,nav
    357357        real pb(nz),tb(nz),rhob(nz)
     
    419419        integer li,lf
    420420        real tt,dt
    421 cparameter(nz=200,nrad=nqmx)
     421cparameter(nz=200,nrad=nqtot)
    422422        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz),pi,nav
    423423        real pb(nz),tb(nz),rhob(nz)
     
    642642* ----------------------------------
    643643
    644 cparameter(nz=200,nrad=nqmx)
     644cparameter(nz=200,nrad=nqtot)
    645645        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz),pb(nz),tb(nz),
    646646     s     rhob(nz)
     
    692692* ----------------------------------
    693693
    694 cparameter(nz=200,nrad=nqmx)
     694cparameter(nz=200,nrad=nqtot)
    695695        real v(nrad),rayon(nrad),vrat,dr(nrad),dv(nrad)
    696696
     
    771771* ----------------------------------
    772772
    773 cparameter(nz=200,nrad=nqmx)
     773cparameter(nz=200,nrad=nqtot)
    774774        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz)
    775775     s  ,pb(nz),tb(nz),rhob(nz)
     
    851851
    852852
    853 cparameter(nz=200,nrad=nqmx)
     853cparameter(nz=200,nrad=nqtot)
    854854        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz),pb(nz),tb(nz),
    855855     s   rhob(nz)
     
    909909* ----------------------------------
    910910
    911 cparameter(nz=200,nrad=nqmx)
     911cparameter(nz=200,nrad=nqtot)
    912912        integer li,lf
    913913        real dt,tt
     
    10701070        integer li,lf
    10711071        real tt,dt
    1072 cparameter(nz=200,nrad=nqmx)
     1072cparameter(nz=200,nrad=nqtot)
    10731073        real p(nz),t(nz),rho(nz),ach4(nz),aar(nz),an2(nz),pi,nav
    10741074        real pb(nz),tb(nz),rhob(nz)
     
    11801180
    11811181        integer ndz
    1182 cparameter (nrad=nqmx,nz=200,nztop=135)
     1182cparameter (nrad=nqtot,nz=200,nztop=135)
    11831183        real zb(nz),z(nz),dz(nz),dzb(nz)
    11841184        real c(nz,nrad,2)
     
    12711271
    12721272        integer ndz
    1273 cparameter (nrad=nqmx,nz=200,nztop=135)
     1273cparameter (nrad=nqtot,nz=200,nztop=135)
    12741274        real zb(nz),z(nz),dz(nz),dzb(nz)
    12751275        real c(nz,nrad,2)
     
    13451345* ----------------------------------
    13461346
    1347 cparameter(nz=200,nrad=nqmx,nztop=135)
     1347cparameter(nz=200,nrad=nqtot,nztop=135)
    13481348        integer li,lf
    13491349        real tt,dt
  • trunk/libf/phytitan/phyetat0.F

    r3 r97  
    77     .            rlat,rlon, tsol,tsoil,
    88     .           albe, solsw, sollw,
    9      .           fder,radsol,clesphy0,
     9     .           fder,radsol,
    1010     .           tabcntr0,
    1111     .           t_ancien,ancien_ok)
     
    4040      LOGICAL ancien_ok
    4141
    42       INTEGER        longcles
    43       PARAMETER    ( longcles = 20 )
    44       REAL clesphy0( longcles )
    45 c
    4642      REAL xmin, xmax
    4743c
     
    8480         ENDDO
    8581c
    86          cycle_diurne   = .FALSE.
    87          soil_model     = .FALSE.
    88          new_oliq       = .FALSE.
    89          ok_orodr       = .FALSE.
    90          ok_orolf       = .FALSE.
    91          ok_limitvrai   = .FALSE.
    92 
    93 
    94          IF( clesphy0(1).NE.tab_cntrl( 5 ) )  THEN
    95              tab_cntrl( 5 ) = clesphy0(1)
    96          ENDIF
    97 
    98          IF( clesphy0(2).NE.tab_cntrl( 6 ) )  THEN
    99              tab_cntrl( 6 ) = clesphy0(2)
    100          ENDIF
    101 
    102          IF( clesphy0(3).NE.tab_cntrl( 7 ) )  THEN
    103              tab_cntrl( 7 ) = clesphy0(3)
    104          ENDIF
    105 
    106          IF( clesphy0(4).NE.tab_cntrl( 8 ) )  THEN
    107              tab_cntrl( 8 ) = clesphy0(4)
    108          ENDIF
    109 
    110          IF( clesphy0(5).NE.tab_cntrl( 9 ) )  THEN
    111              tab_cntrl( 9 ) = clesphy0( 5 )
    112          ENDIF
    113 
    114          IF( clesphy0(6).NE.tab_cntrl( 10 ) )  THEN
    115              tab_cntrl( 10 ) = clesphy0( 6 )
    116          ENDIF
    117 
    118          IF( clesphy0(7).NE.tab_cntrl( 11 ) )  THEN
    119              tab_cntrl( 11 ) = clesphy0( 7 )
    120          ENDIF
    121 
    122          IF( clesphy0(8).NE.tab_cntrl( 12 ) )  THEN
    123              tab_cntrl( 12 ) = clesphy0( 8 )
    124          ENDIF
    125 
    126          IF( clesphy0(9).NE.tab_cntrl( 16 ) )  THEN
    127              tab_cntrl( 16 ) = clesphy0( 9 )
    128          ENDIF
    129 
    13082
    13183         dtime        = tab_cntrl(1)
    13284         radpas       = tab_cntrl(2)
    13385         chimpas      = tab_cntrl(3)
    134          iflag_con    = tab_cntrl(5)
    135          nbapp_rad    = tab_cntrl(6)
    136          nbapp_chim   = tab_cntrl(16)
    137 
    138 
    139          cycle_diurne    = .FALSE.
    140          soil_model      = .FALSE.
    141          new_oliq        = .FALSE.
    142          ok_orodr        = .FALSE.
    143          ok_orolf        = .FALSE.
    144          ok_limitvrai    = .FALSE.
    145 
    146          IF( tab_cntrl( 7) .EQ. 1. )    cycle_diurne  = .TRUE.
    147          IF( tab_cntrl( 8) .EQ. 1. )       soil_model = .TRUE.
    148          IF( tab_cntrl( 9) .EQ. 1. )         new_oliq = .TRUE.
    149          IF( tab_cntrl(10) .EQ. 1. )         ok_orodr = .TRUE.
    150          IF( tab_cntrl(11) .EQ. 1. )         ok_orolf = .TRUE.
    151          IF( tab_cntrl(12) .EQ. 1. )     ok_limitvrai = .TRUE.
    15286
    15387      ENDIF
  • trunk/libf/phytitan/phyredem.F

    r3 r97  
    99     .           radsol,
    1010     .           t_ancien)
     11
     12      USE control_mod
    1113      IMPLICIT none
    1214c======================================================================
     
    1921#include "dimsoil.h"
    2022#include "clesphys.h"
    21 #include "control.h"
    2223#include "temps.h"
    2324c======================================================================
  • trunk/libf/phytitan/physiq.F

    r3 r97  
    55      SUBROUTINE physiq (nlon,nlev,nqmax,
    66     .            debut,lafin,rjourvrai,gmtime,pdtphys,
    7      .            paprs,pplay,ppk,pphi,pphis,presnivs,clesphy0,
     7     .            paprs,pplay,ppk,pphi,pphis,presnivs,
    88     .            u,v,t,qx,
    99     .            omega,
     
    1212      USE ioipsl
    1313      USE histcom
     14      USE infotrac
     15      USE control_mod
    1416      IMPLICIT none
    1517c======================================================================
     
    7173#include "dimsoil.h"
    7274#include "clesphys.h"
    73 #include "control.h"
    7475#include "temps.h"
    7576#include "comgeomphy.h"
    76 #include "advtrac.h"
    7777#include "iniprint.h"
    7878#include "raddim.h"
     
    147147      SAVE LWdnTOA
    148148c
    149       INTEGER        longcles
    150       PARAMETER    ( longcles = 20 )
    151       REAL clesphy0( longcles      )
    152 c
    153149c Variables propres a la physique
    154150c
     
    251247cAA
    252248      integer nmicro
    253       REAL source(klon,nqmx)
     249      REAL source(klon,nqmax)
    254250      save    nmicro,source
    255251
     
    259255      character*8 nom
    260256* common relatifs aux aerosols
    261       REAL qaer(klon,klev,nqmx)
     257      REAL qaer(klon,klev,nqmax)
    262258      common/traceurs/qaer
    263259
     
    400396      REAL zx_tmp_2d(iim,jjmp1),zx_tmp_3d(iim,jjmp1,klev)
    401397      REAL zx_lon(iim,jjmp1), zx_lat(iim,jjmp1)
    402       REAL*4 z4_tmp_2d(iim,jjmp1),z4_tmp_3d(iim,jjmp1,klev)
    403       REAL*4 z4_lon(iim,jjmp1), z4_lat(iim,jjmp1)
    404       REAL*4 zpresnivs(klev)
    405398
    406399      INTEGER nid_day, nid_mth, nid_ins
     
    408401c
    409402      INTEGER nhori, nvert, idayref
    410       REAL*4 zsto, zout, zsto1, zsto2, z4julian, zero
     403      REAL zsto, zout, zsto1, zsto2, zero
    411404      parameter (zero=0.0e0)
    412405      real zjulian
     
    447440      REAL mangtot            ! moment cinetique total
    448441
     442c Temporaire avant de trouver mieux :
     443c Recuperation des TAU du TR
     444      CHARACTER*2 str1
     445      INTEGER NSPECV,NSPECI,NLAYER
     446      PARAMETER (NSPECV=24,NSPECI=46,NLAYER=klev)
     447      REAL t_tauhvd(klon,klev),t_khvd(klon,klev)
     448      REAL TAUHID(klon,NLAYER,NSPECI)
     449     &               ,TAUGID(klon,NLAYER,NSPECI)
     450     &               ,TAUHVD(klon,NLAYER,NSPECV)
     451     &               ,TAUGVD(klon,NLAYER,NSPECV)
     452
     453      COMMON /TAUD/   TAUHID,TAUGID,TAUHVD,TAUGVD
     454
    449455c Declaration des constantes et des fonctions thermodynamiques
    450456c
     
    498504     .       rlatd,rlond,ftsol,ftsoil,
    499505     .       falbe, solsw, sollw,
    500      .       dlw,radsol,clesphy0,
     506     .       dlw,radsol,
    501507c     .      zmea,zstd,zsig,zgam,zthe,zpic,zval,
    502508     .       tabcntr0,
     
    624630     .                   iflag_ajs
    625631c
    626          ecrit_mth = NINT(RDAY/dtime *(nday-1))  ! tous les nday jours
     632         ecrit_mth = NINT(RDAY/dtime) *nday  ! tous les nday jours
    627633         IF (ok_mensuel) THEN
    628634         WRITE(lunout,*)'La frequence de sortie mensuelle est de ',
     
    636642         ENDIF
    637643
    638          ecrit_ins = NINT(RDAY/dtime/100.)  ! toutes les ~4h Terre
     644         ecrit_ins = NINT(RDAY/dtime*ecritphy)  ! Fraction de jour reglable
    639645         IF (ok_instan) THEN
    640646         WRITE(lunout,*)'La frequence de sortie instant. est de ',
     
    10891095c------------------
    10901096c test condensation
    1091 c     do i=1,nqmx
     1097c     do i=1,nqmax
    10921098c       if(tname(i).eq."HCN") then
    10931099c          print*,"HCN="
  • trunk/libf/phytitan/phytrac.F

    r3 r97  
    33     .                   pplev,pplay,delp,ptemp,pmu0,pfract,pdecli,
    44     .                   lonsol,tr_seri,d_tr_mph,d_tr_kim)
     5
     6      USE infotrac
    57
    68      IMPLICIT none
     
    3436#include "clesphys.h"
    3537#include "YOMCST.h"
    36 #include "advtrac.h"
    3738
    3839c======================================================================
     
    5253
    5354* common relatifs aux aerosols
    54       REAL qaer(klon,klev,nqmx)
     55      REAL qaer(klon,klev,nqtot)
    5556      common/traceurs/qaer
    5657
     
    6364      REAL pdqmfi(jjm+1,klev,nqmax)
    6465      REAL ychim(jjm+1,klev,nqmax-nmicro)
    65       REAL qysat(klev,nqmx)        ! dim nqmx, mais en fait nqmax-nmicro (save...)
    66       REAL pdyfi(jjm+1,klev,nqmx)  ! dim nqmx, mais en fait nqmax-nmicro (save...)
     66      REAL qysat(klev,nqtot)        ! dim nqtot, mais en fait nqmax-nmicro (save...)
     67      REAL pdyfi(jjm+1,klev,nqtot)  ! dim nqtot, mais en fait nqmax-nmicro (save...)
    6768      character*10 nomqy(nqmax-nmicro+1)
    6869      integer      i,j,l,iq,ig0
  • trunk/libf/phytitan/radlwsw.F

    r3 r97  
    6868     
    6969* common relatifs aux aerosols
    70       REAL qaer(klon,klev,nqmx)
     70      REAL qaer(klon,klev,nqtot)
    7171      common/traceurs/qaer
    7272     
  • trunk/libf/phytitan/radtitan.F

    r3 r97  
    199199* common relatifs aux aerosols 
    200200* nrad dans microtab.h
    201       REAL qaer(klon,nlayer,nqmx),volume(nrad),rayon(nrad),vrat,
     201      REAL qaer(klon,nlayer,nqtot),volume(nrad),rayon(nrad),vrat,
    202202     &      drayon(nrad),dvolume(nrad)
    203203
  • trunk/libf/phytitan/rdf.F

    r3 r97  
    7171
    7272        print*,'tcorrect=',tcorrect,' tx=',tx
    73         print*,'Df aerosols /1 a nqmx/'
     73        print*,'Df aerosols /1 a nqtot/'
    7474        write(*,*) (rf(h),h=1,nrad)
    7575        write(*,*) (df(h),h=1,nrad)
  • trunk/libf/phytitan/suphec.F

    r3 r97  
    5858      ROMEGA=2.*RPI/RSIDAY
    5959c 1/(duree du jour) = 1/(periode rotation) - 1/(periode revolution)
    60       RDAY=RSIDAY/(1.-RSIDAY/RSIYEA) ! 116.748 j
     60      RDAY=RSIDAY/(1.-RSIDAY/RSIYEA)
    6161      REA=1.5e12
    6262      REPSM=0.  ! 0. veut dire qu'on commence au point vernal
     
    157157      WRITE(UNIT=6,FMT='(''     Rv/Rd-1  = '',e13.7)') RETV
    158158C
    159 C     ----------------------------------------------------------------
    160 C
    161 C*       6.    DEFINE THERMODYNAMIC CONSTANTS, LIQUID PHASE.
    162 C              ---------------------------------------------
    163 C
    164       RCW=RCPV
    165       WRITE(UNIT=6,FMT='('' *** Thermodynamic, liquid  ***'')')
    166       WRITE(UNIT=6,FMT='(''         Cw   = '',E13.7)') RCW
    167 C
    168 C     ----------------------------------------------------------------
    169 C
    170 C*       7.    DEFINE THERMODYNAMIC CONSTANTS, SOLID PHASE.
    171 C              --------------------------------------------
    172 C
    173       RCS=RCPV
    174       WRITE(UNIT=6,FMT='('' *** thermodynamic, solid   ***'')')
    175       WRITE(UNIT=6,FMT='(''         Cs   = '',E13.7)') RCS
    176 C
    177 C     ----------------------------------------------------------------
    178 C
    179 C*       8.    DEFINE THERMODYNAMIC CONSTANTS, TRANSITION OF PHASE.
    180 C              ----------------------------------------------------
    181 C
    182 c valeurs TERRE
    183       RTT=273.16
    184       RLVTT=2.5008E+6
    185       RLSTT=2.8345E+6
    186       RLMLT=RLSTT-RLVTT
    187       RATM=100000.
    188       WRITE(UNIT=6,FMT='('' *** Thermodynamic, trans.  ***'')')
    189       WRITE(UNIT=6,FMT='('' Fusion point  = '',E13.7)') RTT
    190       WRITE(UNIT=6,FMT='(''        RLvTt  = '',E13.7)') RLVTT
    191       WRITE(UNIT=6,FMT='(''        RLsTt  = '',E13.7)') RLSTT
    192       WRITE(UNIT=6,FMT='(''        RLMlt  = '',E13.7)') RLMLT
    193       WRITE(UNIT=6,FMT='('' Normal press. = '',E13.7)') RATM
    194       WRITE(UNIT=6,FMT='('' Latent heat :  '')')
    195 C
    196 C     ----------------------------------------------------------------
    197 C
    198 C*       9.    SATURATED VAPOUR PRESSURE.
    199 C              --------------------------
    200 C
    201 c valeurs TERRE
    202       RESTT=611.14
    203       RGAMW=(RCW-RCPV)/RV
    204       RBETW=RLVTT/RV+RGAMW*RTT
    205       RALPW=LOG(RESTT)+RBETW/RTT+RGAMW*LOG(RTT)
    206       RGAMS=(RCS-RCPV)/RV
    207       RBETS=RLSTT/RV+RGAMS*RTT
    208       RALPS=LOG(RESTT)+RBETS/RTT+RGAMS*LOG(RTT)
    209       RGAMD=RGAMS-RGAMW
    210       RBETD=RBETS-RBETW
    211       RALPD=RALPS-RALPW
    212 C
    213 C     ------------------------------------------------------------------
    214 c
    215 c calculer les constantes pour les fonctions thermodynamiques
    216 c
    217 c valeurs TERRE
    218       RVTMP2=RCPV/RCPD-1.
    219       RHOH2O=RATM/100.
    220       R2ES=RESTT*RD/RV
    221       R3LES=17.269
    222       R3IES=21.875
    223       R4LES=35.86
    224       R4IES=7.66
    225       R5LES=R3LES*(RTT-R4LES)
    226       R5IES=R3IES*(RTT-R4IES)
    227 C
    228159      RETURN
    229160      END
  • trunk/libf/phytitan/write_histday.h

    r3 r97  
    77      ndex3d = 0
    88      zx_tmp_2d = 0.
    9       z4_tmp_2d = 0.
    109      zx_tmp_3d = 0.
    11       z4_tmp_3d = 0.
    1210      zx_tmp_fi2d=0.
    1311      zx_tmp_fi3d=0.
     
    2422c
    2523      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
    26       z4_tmp_2d=zx_tmp_2d
    27       CALL histwrite(nid_day,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     24      CALL histwrite(nid_day,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    2825C
    2926      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
    30       z4_tmp_2d=zx_tmp_2d
    31       CALL histwrite(nid_day,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     27      CALL histwrite(nid_day,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3228c
    3329ccccccc axe Ls
    3430      do j=1,jjmp1
    3531       do i=1,iim
    36         z4_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
     32        zx_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
    3733       enddo
    3834      enddo
    39       CALL histwrite(nid_day,"ls",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     35      CALL histwrite(nid_day,"ls",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4036c
    4137ccccccccccccc 2D fields, variables
    4238c
    4339      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
    44       z4_tmp_2d=zx_tmp_2d
    45       CALL histwrite(nid_day,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     40      CALL histwrite(nid_day,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4641c
    4742      DO i = 1, klon
     
    4944      ENDDO
    5045      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    51       z4_tmp_2d=zx_tmp_2d
    52       CALL histwrite(nid_day,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     46      CALL histwrite(nid_day,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5347c
    5448c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
    55 c     z4_tmp_2d=zx_tmp_2d
    56 c     CALL histwrite(nid_day,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     49c     CALL histwrite(nid_day,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5750c
    5851c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
    59 c     z4_tmp_2d=zx_tmp_2d
    60 c     CALL histwrite(nid_day,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     52c     CALL histwrite(nid_day,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    6153c
    6254      ENDIF !lev_histday.GE.1
     
    6860c
    6961      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
    70       z4_tmp_3d=zx_tmp_3d
    71       CALL histwrite(nid_day,"temp",itau_w,z4_tmp_3d,
     62      CALL histwrite(nid_day,"temp",itau_w,zx_tmp_3d,
    7263     .                                   iim*jjmp1*klev,ndex3d)
    7364c
    7465      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
    75       z4_tmp_3d=zx_tmp_3d
    76       CALL histwrite(nid_day,"pres",itau_w,z4_tmp_3d,
     66      CALL histwrite(nid_day,"pres",itau_w,zx_tmp_3d,
    7767     .                                   iim*jjmp1*klev,ndex3d)
    7868c
    7969      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
    80       z4_tmp_3d=zx_tmp_3d
    81       CALL histwrite(nid_day,"geop",itau_w,z4_tmp_3d,
     70      CALL histwrite(nid_day,"geop",itau_w,zx_tmp_3d,
    8271     .                                   iim*jjmp1*klev,ndex3d)
    8372c
    8473      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
    85       z4_tmp_3d=zx_tmp_3d
    86       CALL histwrite(nid_day,"vitu",itau_w,z4_tmp_3d,
     74      CALL histwrite(nid_day,"vitu",itau_w,zx_tmp_3d,
    8775     .                                   iim*jjmp1*klev,ndex3d)
    8876c
    8977      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
    90       z4_tmp_3d=zx_tmp_3d
    91       CALL histwrite(nid_day,"vitv",itau_w,z4_tmp_3d,
     78      CALL histwrite(nid_day,"vitv",itau_w,zx_tmp_3d,
    9279     .                                   iim*jjmp1*klev,ndex3d)
    9380c
    9481      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
    95       z4_tmp_3d=zx_tmp_3d
    96       CALL histwrite(nid_day,"vitw",itau_w,z4_tmp_3d,
     82      CALL histwrite(nid_day,"vitw",itau_w,zx_tmp_3d,
    9783     .                                   iim*jjmp1*klev,ndex3d)
    9884c
    9985      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
    100       z4_tmp_2d=zx_tmp_2d
    101       CALL histwrite(nid_day,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     86      CALL histwrite(nid_day,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    10287c
    10388      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
    104       z4_tmp_3d=zx_tmp_3d
    105       CALL histwrite(nid_day,"dudyn",itau_w,z4_tmp_3d,
     89      CALL histwrite(nid_day,"dudyn",itau_w,zx_tmp_3d,
    10690     .                                   iim*jjmp1*klev,ndex3d)
    10791c
    10892      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
    109       z4_tmp_3d=zx_tmp_3d
    110       CALL histwrite(nid_day,"duvdf",itau_w,z4_tmp_3d,
     93      CALL histwrite(nid_day,"duvdf",itau_w,zx_tmp_3d,
    11194     .                                   iim*jjmp1*klev,ndex3d)
    11295c
     
    11598           DO iq=1,nmicro
    11699       CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qaer(1,1,iq), zx_tmp_3d)
    117        z4_tmp_3d=zx_tmp_3d
    118        CALL histwrite(nid_day,tname(iq),itau_w,z4_tmp_3d,
     100       CALL histwrite(nid_day,tname(iq),itau_w,zx_tmp_3d,
    119101     .                                   iim*jjmp1*klev,ndex3d)
    120102           ENDDO
     
    123105           DO iq=nmicro+1,nqmax
    124106       CALL gr_fi_ecrit(klev,klon,iim,jjmp1,tr_seri(1,1,iq),zx_tmp_3d)
    125        z4_tmp_3d=zx_tmp_3d
    126        CALL histwrite(nid_day,tname(iq),itau_w,z4_tmp_3d,
     107       CALL histwrite(nid_day,tname(iq),itau_w,zx_tmp_3d,
    127108     .                                   iim*jjmp1*klev,ndex3d)
    128109           ENDDO
     
    140121c
    141122      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
    142       z4_tmp_2d=zx_tmp_2d
    143       CALL histwrite(nid_day,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     123      CALL histwrite(nid_day,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    144124c
    145125      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
    146       z4_tmp_2d=zx_tmp_2d
    147       CALL histwrite(nid_day,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     126      CALL histwrite(nid_day,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    148127c
    149128      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
    150       z4_tmp_2d=zx_tmp_2d
    151       CALL histwrite(nid_day,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     129      CALL histwrite(nid_day,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    152130c
    153131c 3D
     
    155133      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
    156134      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    157       z4_tmp_3d=zx_tmp_3d
    158       CALL histwrite(nid_day,"SWnet",itau_w,z4_tmp_3d,
     135      CALL histwrite(nid_day,"SWnet",itau_w,zx_tmp_3d,
    159136     .                                   iim*jjmp1*klev,ndex3d)
    160137c
    161138      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
    162139      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    163       z4_tmp_3d=zx_tmp_3d
    164       CALL histwrite(nid_day,"LWnet",itau_w,z4_tmp_3d,
     140      CALL histwrite(nid_day,"LWnet",itau_w,zx_tmp_3d,
    165141     .                                   iim*jjmp1*klev,ndex3d)
    166142c
     
    171147c
    172148      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
    173       z4_tmp_3d=zx_tmp_3d
    174       CALL histwrite(nid_day,"dtdyn",itau_w,z4_tmp_3d,
     149      CALL histwrite(nid_day,"dtdyn",itau_w,zx_tmp_3d,
    175150     .                                   iim*jjmp1*klev,ndex3d)
    176151c
    177152      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
    178       z4_tmp_3d=zx_tmp_3d
    179       CALL histwrite(nid_day,"dtphy",itau_w,z4_tmp_3d,
     153      CALL histwrite(nid_day,"dtphy",itau_w,zx_tmp_3d,
    180154     .                                   iim*jjmp1*klev,ndex3d)
    181155c K/s
    182156      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)
    183157      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    184       z4_tmp_3d=zx_tmp_3d
    185       CALL histwrite(nid_day,"dtvdf",itau_w,z4_tmp_3d,
     158      CALL histwrite(nid_day,"dtvdf",itau_w,zx_tmp_3d,
    186159     .                                   iim*jjmp1*klev,ndex3d)
    187160c
     
    189162      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)
    190163      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    191       z4_tmp_3d=zx_tmp_3d
    192       CALL histwrite(nid_day,"dtajs",itau_w,z4_tmp_3d,
     164      CALL histwrite(nid_day,"dtajs",itau_w,zx_tmp_3d,
    193165     .                                   iim*jjmp1*klev,ndex3d)
    194166c
     
    196168      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)
    197169      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    198       z4_tmp_3d=zx_tmp_3d
    199       CALL histwrite(nid_day,"dtswr",itau_w,z4_tmp_3d,
     170      CALL histwrite(nid_day,"dtswr",itau_w,zx_tmp_3d,
    200171     .                                   iim*jjmp1*klev,ndex3d)
    201172c
     
    203174      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)
    204175      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    205       z4_tmp_3d=zx_tmp_3d
    206       CALL histwrite(nid_day,"dtlwr",itau_w,z4_tmp_3d,
     176      CALL histwrite(nid_day,"dtlwr",itau_w,zx_tmp_3d,
    207177     .                                   iim*jjmp1*klev,ndex3d)
    208178c K/s     
    209179      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
    210180      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    211       z4_tmp_3d=zx_tmp_3d
    212       CALL histwrite(nid_day,"dtec",itau_w,z4_tmp_3d,
     181      CALL histwrite(nid_day,"dtec",itau_w,zx_tmp_3d,
    213182     .                                   iim*jjmp1*klev,ndex3d)
    214183c
     
    220189c
    221190c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
    222 c      z4_tmp_2d=zx_tmp_2d
    223191c      CALL histwrite(nid_day,"taux_",itau_w,
    224 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     192c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    225193c     
    226194c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
    227 c      z4_tmp_2d=zx_tmp_2d
    228195c      CALL histwrite(nid_day,"tauy_",itau_w,
    229 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     196c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    230197c
    231198c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    232 c      z4_tmp_2d=zx_tmp_2d
    233 c     CALL histwrite(nid_day,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     199c     CALL histwrite(nid_day,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    234200c
    235201c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    236 c      z4_tmp_2d=zx_tmp_2d
    237 c     CALL histwrite(nid_day,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     202c     CALL histwrite(nid_day,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    238203c
    239204      ENDIF !lev_histday.GE.5
  • trunk/libf/phytitan/write_histins.h

    r3 r97  
    77      ndex3d = 0
    88      zx_tmp_2d = 0.
    9       z4_tmp_2d = 0.
    109      zx_tmp_3d = 0.
    11       z4_tmp_3d = 0.
    1210      zx_tmp_fi2d=0.
    1311      zx_tmp_fi3d=0.
     
    2422c
    2523      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
    26       z4_tmp_2d=zx_tmp_2d
    27       CALL histwrite(nid_ins,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     24      CALL histwrite(nid_ins,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    2825C
    2926      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
    30       z4_tmp_2d=zx_tmp_2d
    31       CALL histwrite(nid_ins,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     27      CALL histwrite(nid_ins,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3228c
    3329ccccccc axe Ls
    3430      do j=1,jjmp1
    3531       do i=1,iim
    36         z4_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
     32        zx_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
    3733       enddo
    3834      enddo
    39       CALL histwrite(nid_ins,"ls",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     35      CALL histwrite(nid_ins,"ls",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4036c
    4137ccccccccccccc 2D fields, variables
    4238c
    4339      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
    44       z4_tmp_2d=zx_tmp_2d
    45       CALL histwrite(nid_ins,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     40      CALL histwrite(nid_ins,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4641c
    4742      DO i = 1, klon
     
    4944      ENDDO
    5045      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    51       z4_tmp_2d=zx_tmp_2d
    52       CALL histwrite(nid_ins,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     46      CALL histwrite(nid_ins,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5347c
    5448c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
    55 c     z4_tmp_2d=zx_tmp_2d
    56 c     CALL histwrite(nid_ins,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     49c     CALL histwrite(nid_ins,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5750c
    5851c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
    59 c     z4_tmp_2d=zx_tmp_2d
    60 c     CALL histwrite(nid_ins,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     52c     CALL histwrite(nid_ins,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    6153c
    6254      ENDIF !lev_histday.GE.1
     
    6860c
    6961      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
    70       z4_tmp_3d=zx_tmp_3d
    71       CALL histwrite(nid_ins,"temp",itau_w,z4_tmp_3d,
     62      CALL histwrite(nid_ins,"temp",itau_w,zx_tmp_3d,
    7263     .                                   iim*jjmp1*klev,ndex3d)
    7364c
    7465      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
    75       z4_tmp_3d=zx_tmp_3d
    76       CALL histwrite(nid_ins,"pres",itau_w,z4_tmp_3d,
     66      CALL histwrite(nid_ins,"pres",itau_w,zx_tmp_3d,
    7767     .                                   iim*jjmp1*klev,ndex3d)
    7868c
    7969      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
    80       z4_tmp_3d=zx_tmp_3d
    81       CALL histwrite(nid_ins,"geop",itau_w,z4_tmp_3d,
     70      CALL histwrite(nid_ins,"geop",itau_w,zx_tmp_3d,
    8271     .                                   iim*jjmp1*klev,ndex3d)
    8372c
    8473      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
    85       z4_tmp_3d=zx_tmp_3d
    86       CALL histwrite(nid_ins,"vitu",itau_w,z4_tmp_3d,
     74      CALL histwrite(nid_ins,"vitu",itau_w,zx_tmp_3d,
    8775     .                                   iim*jjmp1*klev,ndex3d)
    8876c
    8977      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
    90       z4_tmp_3d=zx_tmp_3d
    91       CALL histwrite(nid_ins,"vitv",itau_w,z4_tmp_3d,
     78      CALL histwrite(nid_ins,"vitv",itau_w,zx_tmp_3d,
    9279     .                                   iim*jjmp1*klev,ndex3d)
    9380c
    9481      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
    95       z4_tmp_3d=zx_tmp_3d
    96       CALL histwrite(nid_ins,"vitw",itau_w,z4_tmp_3d,
     82      CALL histwrite(nid_ins,"vitw",itau_w,zx_tmp_3d,
    9783     .                                   iim*jjmp1*klev,ndex3d)
    9884c
    9985      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
    100       z4_tmp_2d=zx_tmp_2d
    101       CALL histwrite(nid_ins,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     86      CALL histwrite(nid_ins,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    10287c
    10388      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
    104       z4_tmp_3d=zx_tmp_3d
    105       CALL histwrite(nid_ins,"duvdf",itau_w,z4_tmp_3d,
     89      CALL histwrite(nid_ins,"duvdf",itau_w,zx_tmp_3d,
    10690     .                                   iim*jjmp1*klev,ndex3d)
    10791c
    10892      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
    109       z4_tmp_3d=zx_tmp_3d
    110       CALL histwrite(nid_ins,"dudyn",itau_w,z4_tmp_3d,
     93      CALL histwrite(nid_ins,"dudyn",itau_w,zx_tmp_3d,
    11194     .                                   iim*jjmp1*klev,ndex3d)
    11295c
     
    122105           DO iq=1,nmicro
    123106       CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qaer(1,1,iq), zx_tmp_3d)
    124        z4_tmp_3d=zx_tmp_3d
    125        CALL histwrite(nid_ins,tname(iq),itau_w,z4_tmp_3d,
     107       CALL histwrite(nid_ins,tname(iq),itau_w,zx_tmp_3d,
    126108     .                                   iim*jjmp1*klev,ndex3d)
    127109           ENDDO
     
    130112           DO iq=nmicro+1,nqmax
    131113       CALL gr_fi_ecrit(klev,klon,iim,jjmp1,tr_seri(1,1,iq),zx_tmp_3d)
    132        z4_tmp_3d=zx_tmp_3d
    133        CALL histwrite(nid_ins,tname(iq),itau_w,z4_tmp_3d,
     114       CALL histwrite(nid_ins,tname(iq),itau_w,zx_tmp_3d,
    134115     .                                   iim*jjmp1*klev,ndex3d)
    135116           ENDDO
     
    142123c
    143124      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
    144       z4_tmp_2d=zx_tmp_2d
    145       CALL histwrite(nid_ins,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     125      CALL histwrite(nid_ins,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    146126c
    147127      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
    148       z4_tmp_2d=zx_tmp_2d
    149       CALL histwrite(nid_ins,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     128      CALL histwrite(nid_ins,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    150129c
    151130      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
    152       z4_tmp_2d=zx_tmp_2d
    153       CALL histwrite(nid_ins,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     131      CALL histwrite(nid_ins,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    154132c
    155133c 3D
     
    157135      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
    158136      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    159       z4_tmp_3d=zx_tmp_3d
    160       CALL histwrite(nid_ins,"SWnet",itau_w,z4_tmp_3d,
     137      CALL histwrite(nid_ins,"SWnet",itau_w,zx_tmp_3d,
    161138     .                                   iim*jjmp1*klev,ndex3d)
    162139c
    163140      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
    164141      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    165       z4_tmp_3d=zx_tmp_3d
    166       CALL histwrite(nid_ins,"LWnet",itau_w,z4_tmp_3d,
     142      CALL histwrite(nid_ins,"LWnet",itau_w,zx_tmp_3d,
    167143     .                                   iim*jjmp1*klev,ndex3d)
    168144c
     
    173149c
    174150      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
    175       z4_tmp_3d=zx_tmp_3d
    176       CALL histwrite(nid_ins,"dtdyn",itau_w,z4_tmp_3d,
     151      CALL histwrite(nid_ins,"dtdyn",itau_w,zx_tmp_3d,
    177152     .                                   iim*jjmp1*klev,ndex3d)
    178153c
    179154      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
    180       z4_tmp_3d=zx_tmp_3d
    181       CALL histwrite(nid_ins,"dtphy",itau_w,z4_tmp_3d,
     155      CALL histwrite(nid_ins,"dtphy",itau_w,zx_tmp_3d,
    182156     .                                   iim*jjmp1*klev,ndex3d)
    183157c K/s
    184158      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)
    185159      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    186       z4_tmp_3d=zx_tmp_3d
    187       CALL histwrite(nid_ins,"dtvdf",itau_w,z4_tmp_3d,
     160      CALL histwrite(nid_ins,"dtvdf",itau_w,zx_tmp_3d,
    188161     .                                   iim*jjmp1*klev,ndex3d)
    189162c
     
    191164      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)
    192165      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    193       z4_tmp_3d=zx_tmp_3d
    194       CALL histwrite(nid_ins,"dtajs",itau_w,z4_tmp_3d,
     166      CALL histwrite(nid_ins,"dtajs",itau_w,zx_tmp_3d,
    195167     .                                   iim*jjmp1*klev,ndex3d)
    196168c
     
    198170      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)
    199171      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    200       z4_tmp_3d=zx_tmp_3d
    201       CALL histwrite(nid_ins,"dtswr",itau_w,z4_tmp_3d,
     172      CALL histwrite(nid_ins,"dtswr",itau_w,zx_tmp_3d,
    202173     .                                   iim*jjmp1*klev,ndex3d)
    203174c
     
    205176      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)
    206177      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    207       z4_tmp_3d=zx_tmp_3d
    208       CALL histwrite(nid_ins,"dtlwr",itau_w,z4_tmp_3d,
     178      CALL histwrite(nid_ins,"dtlwr",itau_w,zx_tmp_3d,
    209179     .                                   iim*jjmp1*klev,ndex3d)
    210180c K/s     
    211181      zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
    212182      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    213       z4_tmp_3d=zx_tmp_3d
    214       CALL histwrite(nid_ins,"dtec",itau_w,z4_tmp_3d,
     183      CALL histwrite(nid_ins,"dtec",itau_w,zx_tmp_3d,
    215184     .                                   iim*jjmp1*klev,ndex3d)
    216185c
    217186c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
    218 c     z4_tmp_3d=zx_tmp_3d
    219 c     CALL histwrite(nid_ins,"dvvdf",itau_w,z4_tmp_3d,
     187c     CALL histwrite(nid_ins,"dvvdf",itau_w,zx_tmp_3d,
    220188c    .                                   iim*jjmp1*klev,ndex3d)
    221189c
     
    227195c
    228196c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
    229 c      z4_tmp_2d=zx_tmp_2d
    230197c      CALL histwrite(nid_ins,"taux_",itau_w,
    231 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     198c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    232199c     
    233200c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
    234 c      z4_tmp_2d=zx_tmp_2d
    235201c      CALL histwrite(nid_ins,"tauy_",itau_w,
    236 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     202c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    237203c
    238204c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    239 c      z4_tmp_2d=zx_tmp_2d
    240 c     CALL histwrite(nid_ins,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     205c     CALL histwrite(nid_ins,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    241206c
    242207c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    243 c      z4_tmp_2d=zx_tmp_2d
    244 c     CALL histwrite(nid_ins,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     208c     CALL histwrite(nid_ins,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    245209c
    246210      ENDIF !lev_histday.GE.5
  • trunk/libf/phytitan/write_histmth.h

    r3 r97  
    44      ndex3d = 0
    55      zx_tmp_2d = 0.
    6       z4_tmp_2d = 0.
    76      zx_tmp_3d = 0.
    8       z4_tmp_3d = 0.
    97      zx_tmp_fi2d=0.
    108      zx_tmp_fi3d=0.
     
    2018c
    2119      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
    22       z4_tmp_2d=zx_tmp_2d
    23       CALL histwrite(nid_mth,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     20      CALL histwrite(nid_mth,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    2421C
    2522      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
    26       z4_tmp_2d=zx_tmp_2d
    27       CALL histwrite(nid_mth,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     23      CALL histwrite(nid_mth,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    2824c
    2925ccccccc axe Ls
    3026      do j=1,jjmp1
    3127       do i=1,iim
    32         z4_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
     28        zx_tmp_2d(i,j)=zls*180./RPI      ! zls est en radians !!
    3329       enddo
    3430      enddo
    35       CALL histwrite(nid_mth,"ls",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     31      CALL histwrite(nid_mth,"ls",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3632c
    3733ccccccccccccc 2D fields, variables
    3834c
    3935      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
    40       z4_tmp_2d=zx_tmp_2d
    41       CALL histwrite(nid_mth,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     36      CALL histwrite(nid_mth,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4237c
    4338      DO i = 1, klon
     
    4540      ENDDO
    4641      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    47       z4_tmp_2d=zx_tmp_2d
    48       CALL histwrite(nid_mth,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     42      CALL histwrite(nid_mth,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4943c
    5044c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
    51 c     z4_tmp_2d=zx_tmp_2d
    52 c     CALL histwrite(nid_mth,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     45c     CALL histwrite(nid_mth,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5346c
    5447c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
    55 c     z4_tmp_2d=zx_tmp_2d
    56 c     CALL histwrite(nid_mth,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     48c     CALL histwrite(nid_mth,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5749c
    5850      ENDIF !lev_histmth.GE.1
     
    6456c
    6557      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
    66       z4_tmp_3d=zx_tmp_3d
    67       CALL histwrite(nid_mth,"temp",itau_w,z4_tmp_3d,
     58      CALL histwrite(nid_mth,"temp",itau_w,zx_tmp_3d,
    6859     .                                   iim*jjmp1*klev,ndex3d)
    6960c
    7061      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
    71       z4_tmp_3d=zx_tmp_3d
    72       CALL histwrite(nid_mth,"pres",itau_w,z4_tmp_3d,
     62      CALL histwrite(nid_mth,"pres",itau_w,zx_tmp_3d,
    7363     .                                   iim*jjmp1*klev,ndex3d)
    7464c
    7565      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
    76       z4_tmp_3d=zx_tmp_3d
    77       CALL histwrite(nid_mth,"geop",itau_w,z4_tmp_3d,
     66      CALL histwrite(nid_mth,"geop",itau_w,zx_tmp_3d,
    7867     .                                   iim*jjmp1*klev,ndex3d)
    7968c
    8069      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
    81       z4_tmp_3d=zx_tmp_3d
    82       CALL histwrite(nid_mth,"vitu",itau_w,z4_tmp_3d,
     70      CALL histwrite(nid_mth,"vitu",itau_w,zx_tmp_3d,
    8371     .                                   iim*jjmp1*klev,ndex3d)
    8472c
    8573      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
    86       z4_tmp_3d=zx_tmp_3d
    87       CALL histwrite(nid_mth,"vitv",itau_w,z4_tmp_3d,
     74      CALL histwrite(nid_mth,"vitv",itau_w,zx_tmp_3d,
    8875     .                                   iim*jjmp1*klev,ndex3d)
    8976c
    9077      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
    91       z4_tmp_3d=zx_tmp_3d
    92       CALL histwrite(nid_mth,"vitw",itau_w,z4_tmp_3d,
     78      CALL histwrite(nid_mth,"vitw",itau_w,zx_tmp_3d,
    9379     .                                   iim*jjmp1*klev,ndex3d)
    9480c
    9581      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
    96       z4_tmp_2d=zx_tmp_2d
    97       CALL histwrite(nid_mth,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     82      CALL histwrite(nid_mth,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    9883c
    9984         if (iflag_trac.eq.1) THEN
    10085          if (microfi.eq.1) then
    101            DO iq=1,nmicro
    102        CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qaer(1,1,iq), zx_tmp_3d)
    103        z4_tmp_3d=zx_tmp_3d
    104        CALL histwrite(nid_mth,tname(iq),itau_w,z4_tmp_3d,
    105      .                                   iim*jjmp1*klev,ndex3d)
    106            ENDDO
    107           endif
    108           if (nmicro.lt.nqmax) then
     86c          DO iq=1,nmicro
     87c      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qaer(1,1,iq), zx_tmp_3d)
     88c      CALL histwrite(nid_mth,tname(iq),itau_w,zx_tmp_3d,
     89c    .                                   iim*jjmp1*klev,ndex3d)
     90c          ENDDO
     91c         endif
     92          if (nmicro.lt.nqmax) then
    10993           DO iq=nmicro+1,nqmax
    11094       CALL gr_fi_ecrit(klev,klon,iim,jjmp1,tr_seri(1,1,iq),zx_tmp_3d)
    111        z4_tmp_3d=zx_tmp_3d
    112        CALL histwrite(nid_mth,tname(iq),itau_w,z4_tmp_3d,
     95       CALL histwrite(nid_mth,tname(iq),itau_w,zx_tmp_3d,
    11396     .                                   iim*jjmp1*klev,ndex3d)
    11497           ENDDO
     
    11699c          DO iq=nmicro+1,nqmax
    117100c      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_tr_mph(1,1,iq),zx_tmp_3d)
    118 c      z4_tmp_3d=zx_tmp_3d
    119 c      CALL histwrite(nid_mth,"c_"//tname(iq),itau_w,z4_tmp_3d,
     101c      CALL histwrite(nid_mth,"c_"//tname(iq),itau_w,zx_tmp_3d,
    120102c    .                                   iim*jjmp1*klev,ndex3d)
    121103c          ENDDO
     
    133115c
    134116      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
    135       z4_tmp_2d=zx_tmp_2d
    136       CALL histwrite(nid_mth,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     117      CALL histwrite(nid_mth,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    137118c
    138119      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
    139       z4_tmp_2d=zx_tmp_2d
    140       CALL histwrite(nid_mth,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     120      CALL histwrite(nid_mth,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    141121c
    142122      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
    143       z4_tmp_2d=zx_tmp_2d
    144       CALL histwrite(nid_mth,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     123      CALL histwrite(nid_mth,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    145124c
    146125c 3D
     
    148127      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
    149128      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    150       z4_tmp_3d=zx_tmp_3d
    151       CALL histwrite(nid_mth,"SWnet",itau_w,z4_tmp_3d,
     129      CALL histwrite(nid_mth,"SWnet",itau_w,zx_tmp_3d,
    152130     .                                   iim*jjmp1*klev,ndex3d)
    153131c
    154132      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
    155133      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    156       z4_tmp_3d=zx_tmp_3d
    157       CALL histwrite(nid_mth,"LWnet",itau_w,z4_tmp_3d,
    158      .                                   iim*jjmp1*klev,ndex3d)
    159 c
     134      CALL histwrite(nid_mth,"LWnet",itau_w,zx_tmp_3d,
     135     .                                   iim*jjmp1*klev,ndex3d)
     136c
     137c 3D adding Tau and k  (31/08/10)
     138c
     139       do k=3,nspecv,5
     140         do i=1,klon
     141         do l=1,klev
     142           t_tauhvd(i,j)=TAUHVD(i,klev-l+1,k)
     143         enddo
     144         enddo
     145         write(str1,'(i2.2)') k
     146      zx_tmp_fi3d(1:klon,1:klev)=t_tauhvd(1:klon,1:klev)
     147      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
     148      CALL histwrite(nid_mth,"thv"//str1,itau_w,zx_tmp_3d,
     149     .                                   iim*jjmp1*klev,ndex3d)
     150       enddo      ! fin boucle nspecv
     151
     152       do k=3,nspecv,5
     153         do i=1,klon
     154         do l=1,klev
     155         if(l.ne.klev)
     156     s    t_khvd(i,l)=TAUHVD(i,klev-l+1,k)
     157     s    -TAUHVD(i,klev-l+1-1,k)
     158
     159          if(l.eq.klev)
     160     s    t_khvd(i,l)=TAUHVD(i,klev-l+1,k)
     161
     162         t_khvd(i,l)=t_khvd(i,l)/(zzlev(i,l+1)-zzlev(i,l))
     163         enddo
     164         enddo
     165         write(str1,'(i2.2)') k
     166      zx_tmp_fi3d(1:klon,1:klev)=t_khvd(1:klon,1:klev)
     167      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
     168      CALL histwrite(nid_mth,"khv"//str1,itau_w,zx_tmp_3d,
     169     .                                   iim*jjmp1*klev,ndex3d)
     170       enddo      ! fin boucle nspecv
     171
    160172      ENDIF !lev_histmth.GE.3
    161173c
     
    164176c
    165177      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
    166       z4_tmp_3d=zx_tmp_3d
    167       CALL histwrite(nid_mth,"dtdyn",itau_w,z4_tmp_3d,
     178      CALL histwrite(nid_mth,"dtdyn",itau_w,zx_tmp_3d,
    168179     .                                   iim*jjmp1*klev,ndex3d)
    169180c
    170181      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
    171       z4_tmp_3d=zx_tmp_3d
    172       CALL histwrite(nid_mth,"dtphy",itau_w,z4_tmp_3d,
     182      CALL histwrite(nid_mth,"dtphy",itau_w,zx_tmp_3d,
    173183     .                                   iim*jjmp1*klev,ndex3d)
    174184c K/s
    175185      zx_tmp_fi3d(1:klon,1:klev)=d_t_vdf(1:klon,1:klev)
    176186      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    177       z4_tmp_3d=zx_tmp_3d
    178       CALL histwrite(nid_mth,"dtvdf",itau_w,z4_tmp_3d,
     187      CALL histwrite(nid_mth,"dtvdf",itau_w,zx_tmp_3d,
    179188     .                                   iim*jjmp1*klev,ndex3d)
    180189c
     
    182191      zx_tmp_fi3d(1:klon,1:klev)=d_t_ajs(1:klon,1:klev)
    183192      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    184       z4_tmp_3d=zx_tmp_3d
    185       CALL histwrite(nid_mth,"dtajs",itau_w,z4_tmp_3d,
     193      CALL histwrite(nid_mth,"dtajs",itau_w,zx_tmp_3d,
    186194     .                                   iim*jjmp1*klev,ndex3d)
    187195c
     
    189197      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)
    190198      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    191       z4_tmp_3d=zx_tmp_3d
    192       CALL histwrite(nid_mth,"dtswr",itau_w,z4_tmp_3d,
     199      CALL histwrite(nid_mth,"dtswr",itau_w,zx_tmp_3d,
    193200     .                                   iim*jjmp1*klev,ndex3d)
    194201c
     
    196203      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)
    197204      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    198       z4_tmp_3d=zx_tmp_3d
    199       CALL histwrite(nid_mth,"dtlwr",itau_w,z4_tmp_3d,
     205      CALL histwrite(nid_mth,"dtlwr",itau_w,zx_tmp_3d,
    200206     .                                   iim*jjmp1*klev,ndex3d)
    201207c K/s     
    202208c     zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
    203209c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    204 c     z4_tmp_3d=zx_tmp_3d
    205 c     CALL histwrite(nid_mth,"dtec",itau_w,z4_tmp_3d,
     210c     CALL histwrite(nid_mth,"dtec",itau_w,zx_tmp_3d,
    206211c    .                                   iim*jjmp1*klev,ndex3d)
    207212c
    208213      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
    209       z4_tmp_3d=zx_tmp_3d
    210       CALL histwrite(nid_mth,"duvdf",itau_w,z4_tmp_3d,
     214      CALL histwrite(nid_mth,"duvdf",itau_w,zx_tmp_3d,
    211215     .                                   iim*jjmp1*klev,ndex3d)
    212216c
    213217      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
    214       z4_tmp_3d=zx_tmp_3d
    215       CALL histwrite(nid_mth,"dudyn",itau_w,z4_tmp_3d,
     218      CALL histwrite(nid_mth,"dudyn",itau_w,zx_tmp_3d,
    216219     .                                   iim*jjmp1*klev,ndex3d)
    217220c
    218221c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
    219 c     z4_tmp_3d=zx_tmp_3d
    220 c     CALL histwrite(nid_mth,"dvvdf",itau_w,z4_tmp_3d,
     222c     CALL histwrite(nid_mth,"dvvdf",itau_w,zx_tmp_3d,
    221223c    .                                   iim*jjmp1*klev,ndex3d)
    222224c
     
    228230c
    229231c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
    230 c      z4_tmp_2d=zx_tmp_2d
    231232c      CALL histwrite(nid_mth,"taux_",itau_w,
    232 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     233c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    233234c     
    234235c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
    235 c      z4_tmp_2d=zx_tmp_2d
    236236c      CALL histwrite(nid_mth,"tauy_",itau_w,
    237 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     237c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    238238c
    239239c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    240 c      z4_tmp_2d=zx_tmp_2d
    241 c     CALL histwrite(nid_mth,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     240c     CALL histwrite(nid_mth,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    242241c
    243242c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    244 c      z4_tmp_2d=zx_tmp_2d
    245 c     CALL histwrite(nid_mth,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     243c     CALL histwrite(nid_mth,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    246244c
    247245      ENDIF !lev_histmth.GE.5
  • trunk/libf/phyvenus/YOMCST.h

    r3 r97  
    11!
    2 ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/YOMCST.h,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $
     2!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
     3!                 veillez  n'utiliser que des ! pour les commentaires
     4!                 et  bien positionner les & des lignes de continuation
     5!                 (les placer en colonne 6 et en colonne 73)
    36!
    47! A1.0 Fundamental constants
     
    710      REAL RDAY,REA,REPSM,RSIYEA,RSIDAY,ROMEGA
    811! A1.1.bis Constantes concernant l'orbite de la Terre:
    9       REAL R_ecc, R_peri, R_incl
     12      REAL :: R_ecc, R_peri, R_incl
    1013! A1.2 Geoide
    1114      REAL RA,RG,R1SA
    1215! A1.3 Radiation
    13 !     REAL RSIGMA,RI0
     16!     REAL :: RSIGMA,RI0
    1417      REAL RSIGMA
    1518! A1.4 Thermodynamic gas phase
     
    2730      REAL RALPD,RBETD,RGAMD
    2831!
    29 !    S      ,RSIGMA,RI0
    30       COMMON/YOMCST/RPI   ,RCLUM ,RHPLA ,RKBOL ,RNAVO
    31      S      ,RDAY  ,REA   ,REPSM ,RSIYEA,RSIDAY,ROMEGA
    32      s      ,R_ecc, R_peri, R_incl
    33      S      ,RA    ,RG    ,R1SA
    34      S      ,RSIGMA
    35      S      ,R     ,RMD   ,RMV   ,RD    ,RV    ,RCPD
    36      S      ,RCPV  ,RCVD  ,RCVV  ,RKAPPA,RETV
    37      S      ,RCW   ,RCS
    38      S      ,RLVTT ,RLSTT ,RLMLT ,RTT   ,RATM
    39      S      ,RESTT ,RALPW ,RBETW ,RGAMW ,RALPS ,RBETS ,RGAMS
    40      S      ,RALPD ,RBETD ,RGAMD
    41 !    ------------------------------------------------------------------
     32      COMMON/YOMCST/RPI ,RCLUM, RHPLA, RKBOL, RNAVO ,RDAY  ,REA         &
     33     & ,REPSM ,RSIYEA,RSIDAY,ROMEGA , R_ecc, R_peri, R_incl,            &
     34     & ,RA    ,RG ,R1SA                                                 &
     35     & ,RSIGMA,R ,RMD   ,RMV   ,RD    ,RV    ,RCPD ,RCPV,RCVD           &
     36     & ,RCVV  ,RKAPPA,RETV ,RCW   ,RCS ,RLVTT ,RLSTT ,RLMLT ,RTT ,RATM  &
     37     & ,RESTT ,RALPW ,RBETW ,RGAMW ,RALPS ,RBETS ,RGAMS ,RALPD ,RBETD   &
     38     & ,RGAMD
  • trunk/libf/phyvenus/clcdrag.F90

    r3 r97  
    3030! ================================================================= c
    3131!
    32 #include "YOMCST.inc"
    33 #include "YOETHF.inc"
    34 #include "clesphys.inc"
     32#include "YOMCST.h"
     33#include "clesphys.h"
    3534!
    3635! Quelques constantes et options:
  • trunk/libf/phyvenus/clesphys.h

    r3 r97  
    11!
    2 ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/clesphys.h,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $
     2!  ATTENTION!!!!: ce fichier include est compatible format fixe/format libre
     3!                 veillez  n'utiliser que des ! pour les commentaires
     4!                 et  bien positionner les & des lignes de continuation
     5!                 (les placer en colonne 6 et en colonne 73)
    36!
    4 c..include cles_phys.h
    5 c
    6        LOGICAL cycle_diurne,soil_model,new_oliq
     7!
     8!..include cles_phys.h
     9!
     10       LOGICAL cycle_diurne,soil_model
    711       LOGICAL ok_orodr,ok_orolf,ok_gw_nonoro
    8        INTEGER nbapp_rad, iflag_con, iflag_ajs
     12       INTEGER nbapp_rad, nbapp_chim, iflag_con, iflag_ajs
     13       REAL    ecritphy
    914       REAL    solaire
    10 
    11 c Parametres pour PBL:
    12        real z0,lmixmin
    13        REAL ksta
     15       REAL    z0, lmixmin
     16       REAL    ksta, inertie
    1417       LOGICAL ok_kzmin
    15 
    16 c surface
    17        real inertie
    18 
    19 cIM lev_histhf  : niveau sorties 6h
    20 cIM lev_histday : niveau sorties journalieres
    21 cIM lev_histmth : niveau sorties mensuelles
    2218       INTEGER lev_histhf, lev_histday, lev_histmth
    2319
    24        COMMON/clesphys/cycle_diurne, soil_model, new_oliq,
    25      ,     ok_orodr, ok_orolf, ok_gw_nonoro,
    26      ,     nbapp_rad, iflag_con
    27      ,     , iflag_ajs, solaire, z0, lmixmin, ksta
    28      ,     , ok_kzmin, lev_histhf, lev_histday, lev_histmth
    29      ,     , inertie
     20       COMMON/clesphys/cycle_diurne, soil_model,                        &
     21     &     ok_orodr, ok_orolf, ok_gw_nonoro, nbapp_rad, nbapp_chim      &
     22     &     , ecritphy                                                   &
     23     &     , iflag_con, iflag_ajs, solaire, z0, lmixmin, ksta           &
     24     &     , ok_kzmin, lev_histhf, lev_histday, lev_histmth             &
     25     &     , inertie
     26
  • trunk/libf/phyvenus/clmain.F

    r3 r97  
    134134c
    135135#include "YOMCST.h"
    136 #include "YOETHF.h"
    137 #include "FCTTRE.h"
    138136      REAL u1lay(klon), v1lay(klon)
    139137      REAL delp(klon,klev)
     
    499497#include "dimphy.h"
    500498#include "YOMCST.h"
    501 #include "YOETHF.h"
    502 #include "FCTTRE.h"
    503499#include "dimsoil.h"
    504500#include "iniprint.h"
     
    994990      PARAMETER (zxli=.FALSE.)
    995991c
    996 #include "YOETHF.h"
    997 #include "FCTTRE.h"
    998992      fsta(x) = 1.0 / (1.0+10.0*x*(1+8.0*x))
    999993      fins(x) = SQRT(1.0-18.0*x)
  • trunk/libf/phyvenus/clmain.classic

    r3 r97  
    134134c
    135135#include "YOMCST.h"
    136 #include "YOETHF.h"
    137 #include "FCTTRE.h"
    138136      REAL u1lay(klon), v1lay(klon)
    139137      REAL delp(klon,klev)
     
    499497#include "dimphy.h"
    500498#include "YOMCST.h"
    501 #include "YOETHF.h"
    502 #include "FCTTRE.h"
    503499#include "dimsoil.h"
    504500#include "iniprint.h"
     
    994990      PARAMETER (zxli=.FALSE.)
    995991c
    996 #include "YOETHF.h"
    997 #include "FCTTRE.h"
    998992      fsta(x) = 1.0 / (1.0+10.0*x*(1+8.0*x))
    999993      fins(x) = SQRT(1.0-18.0*x)
  • trunk/libf/phyvenus/clmain.simple

    r3 r97  
    128128c
    129129#include "YOMCST.h"
    130 #include "YOETHF.h"
    131 #include "FCTTRE.h"
    132130      REAL u1lay(klon), v1lay(klon)
    133131      REAL delp(klon,klev)
     
    370368#include "dimphy.h"
    371369#include "YOMCST.h"
    372 #include "YOETHF.h"
    373 #include "FCTTRE.h"
    374370#include "dimsoil.h"
    375371#include "iniprint.h"
     
    865861      PARAMETER (zxli=.FALSE.)
    866862c
    867 #include "YOETHF.h"
    868 #include "FCTTRE.h"
    869863      fsta(x) = 1.0 / (1.0+10.0*x*(1+8.0*x))
    870864      fins(x) = SQRT(1.0-18.0*x)
  • trunk/libf/phyvenus/conf_phys.F90

    r3 r97  
    1111   implicit none
    1212
    13 #include "YOMCST.inc"
    14 #include "clesphys.inc"
     13#include "YOMCST.h"
     14#include "clesphys.h"
    1515#include "compbl.h"
    16 !
    17 ! Configuration de la "physique" de LMDZ a l'aide de la fonction
    18 ! GETIN de IOIPSL
    19 !
    20 ! LF 05/2001
    21 !
    22 !--- Ca lit le physiq.def ---
    23 
    24 !
     16
    2517! ok_journe:  sorties journalieres
    2618! ok_mensuel: sorties mensuelles
     
    3426! Local
    3527  integer              :: numout = 6
    36   real*4               :: zzz
    37 ! real                 :: zzz
     28
     29!
     30! Configuration de la "physique" de LMDZ a l'aide de la fonction
     31! GETIN de IOIPSL
     32!
     33! LF 05/2001
     34!
     35!--- Ca lit le physiq.def ---
     36
     37!******************* parametres anciennement lus dans gcm.def
     38
     39!Config  Key  = cycle_diurne
     40!Config  Desc = Cycle ddiurne
     41!Config  Def  = y
     42!Config  Help = Cette option permet d'eteidre le cycle diurne.
     43!Config         Peut etre util pour accelerer le code !
     44       cycle_diurne = .TRUE.
     45       CALL getin('cycle_diurne',cycle_diurne)
     46
     47!Config  Key  = soil_model
     48!Config  Desc = Modele de sol
     49!Config  Def  = y
     50!Config  Help = Choix du modele de sol (Thermique ?)
     51!Config         Option qui pourait un string afin de pouvoir
     52!Config         plus de choix ! Ou meme une liste d'options !
     53       soil_model = .TRUE.
     54       CALL getin('soil_model',soil_model)
     55
     56!Config  Key  = ok_orodr
     57!Config  Desc = Oro drag
     58!Config  Def  = y
     59!Config  Help = GW drag orographie
     60!Config         
     61       ok_orodr = .TRUE.
     62       CALL getin('ok_orodr',ok_orodr)
     63
     64!Config  Key  =  ok_orolf
     65!Config  Desc = Oro lift
     66!Config  Def  = n
     67!Config  Help = GW lift orographie (pas utilise)
     68       ok_orolf = .TRUE.
     69       CALL getin('ok_orolf', ok_orolf)
     70
     71!Config  Key  = ok_gw_nonoro
     72!Config  Desc = Gravity waves parameterization
     73!Config  Def  = n
     74!Config  Help = GW drag non-orographique
     75       ok_gw_nonoro = .FALSE.
     76       CALL getin('ok_gw_nonoro',ok_gw_nonoro)
     77
     78!Config  Key  = nbapp_rad
     79!Config  Desc = Frequence d'appel au rayonnement
     80!Config  Def  = 12
     81!Config  Help = Nombre  d'appels des routines de rayonnements
     82!Config         par jour.
     83       nbapp_rad = 12
     84       CALL getin('nbapp_rad',nbapp_rad)
     85
     86!Config  Key  = nbapp_chim
     87!Config  Desc = Frequence d'appel a la chimie
     88!Config  Def  = 1
     89!Config  Help = Nombre  d'appels des routines de chimie
     90!Config         par jour.
     91       nbapp_chim = 1
     92       CALL getin('nbapp_chim',nbapp_chim)
     93
     94!Config  Key  = iflag_con
     95!Config  Desc = Flag de convection
     96!Config  Def  = 0
     97!Config  Help = Flag  pour la convection les options suivantes existent :
     98!Config         0 : ajsec simple (VENUS, TITAN)
     99!Config         1 pour LMD,
     100!Config         2 pour Tiedtke,
     101!Config         3 pour CCM(NCAR) 
     102       iflag_con = 0
     103       CALL getin('iflag_con',iflag_con)
     104
     105!******************* fin parametres anciennement lus dans gcm.def
    38106
    39107!Config Key  = OK_journe
     
    63131  ok_instan = .false.
    64132  call getin('OK_instan', ok_instan)
     133!
     134!Config  Key  = ecritphy
     135!Config  Desc = Frequence d'ecriture dans histmth et histins
     136!Config  Def  = 1
     137!Config  Help = frequence de l'ecriture du fichier histmth et histins
     138!Config         en jours.
     139!
     140       ecritphy = 1.
     141       CALL getin('ecritphy', ecritphy)
    65142!
    66143!
     
    83160! VENUS
    84161! R_ecc = 0.006787
    85   zzz   = 0.0
    86   call getin('R_ecc', zzz)
    87   R_ecc = zzz
     162  R_ecc   = 0.0
     163  call getin('R_ecc', R_ecc)
    88164!!
    89165!Config Key  = R_peri
     
    93169!               
    94170! VENUS
    95   zzz = 0.
    96   call getin('R_peri', zzz)
    97   R_peri = zzz
     171  R_peri = 0.
     172  call getin('R_peri', R_peri)
    98173!!
    99174!Config Key  = R_incl
     
    103178!               
    104179! VENUS
    105   zzz = 0.0
    106   call getin('R_incl', zzz)
    107   R_incl = zzz
     180  R_incl = 0.0
     181  call getin('R_incl', R_incl)
    108182!
    109183!Config Key  = solaire
     
    113187!Config Help =
    114188!
    115   zzz = 2620.
    116     call getin('solaire', zzz)
    117   solaire = zzz
     189  solaire = 2620.
     190    call getin('solaire', solaire)
    118191!
    119192!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    140213!Config Help =
    141214!
    142   zzz = 1.0e-7
    143   call getin('ksta',zzz)
    144   ksta = zzz
     215  ksta = 1.0e-7
     216  call getin('ksta',ksta)
    145217
    146218!
     
    150222!Config Help =
    151223!
    152   zzz = 1.0e-2
    153   call getin('z0',zzz)
    154   z0 = zzz
     224  z0 = 1.0e-2
     225  call getin('z0',z0)
    155226
    156227!
     
    160231!Config Help =
    161232!
    162   zzz = 35.
    163   call getin('lmixmin',zzz)
    164   lmixmin = zzz
    165 
    166 !
     233  lmixmin = 35.
     234  call getin('lmixmin',lmixmin)
     235
    167236!
    168237!Config Key  = ok_kzmin
     
    186255!Config Key  = inertie
    187256!Config Desc =
    188 !Config Def  = 30000.
    189 !Config Help =
    190 !
    191   zzz = 30000.
    192   call getin('inertie',zzz)
    193   inertie = zzz
     257!Config Def  = 2000.
     258!Config Help =
     259!
     260  inertie = 2000.
     261  call getin('inertie',inertie)
    194262!
    195263!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    239307  write(numout,*)' ##############################################'
    240308  write(numout,*)' Configuration des parametres de la physique: '
     309  write(numout,*)' cycle_diurne = ', cycle_diurne
     310  write(numout,*)' soil_model = ', soil_model
     311  write(numout,*)' ok_orodr = ', ok_orodr
     312  write(numout,*)' ok_orolf = ', ok_orolf
     313  write(numout,*)' ok_gw_nonoro = ', ok_gw_nonoro
     314  write(numout,*)' nbapp_rad = ', nbapp_rad
     315  write(numout,*)' nbapp_chim = ', nbapp_chim
     316  write(numout,*)' iflag_con = ', iflag_con
    241317  write(numout,*)' Sortie journaliere = ', ok_journe
    242318  write(numout,*)' Sortie mensuelle = ', ok_mensuel
    243319  write(numout,*)' Sortie instantanee = ', ok_instan
     320  write(numout,*)' frequence sorties = ', ecritphy 
    244321  write(numout,*)' Sortie bilan d''energie, if_ebil =', if_ebil
    245322  write(numout,*)' Excentricite = ',R_ecc
  • trunk/libf/phyvenus/diagphy.F

    r3 r97  
    77     $    , d_etp_tot, d_qt_tot, d_ec_tot
    88     $    , fs_bound, fq_bound)
     9
     10! ATTENTION !! PAS DU TOUT A JOUR POUR VENUS OU TITAN...
     11
    912C======================================================================
    1013C
     
    5053#include "dimphy.h"
    5154#include "YOMCST.h"
    52 #include "YOETHF.h"
    5355C
    5456C     Input variables
     
    211213#include "dimphy.h"
    212214#include "YOMCST.h"
    213 #include "YOETHF.h"
    214215C
    215216c     Input variables
  • trunk/libf/phyvenus/ini_histday.h

    r3 r97  
    99c
    1010         idayref = day_ref
    11          z4julian = zjulian
    12          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     11         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1312c
    1413         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    1817         ENDDO
    1918         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
    20          z4_lon = zx_lon
    21          z4_lat = zx_lat
    22          zpresnivs=presnivs
    23          CALL histbeg("histday", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    24      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto,
     19
     20c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
     21c    d'ou le -1.* devant zx_lon et zx_lat       
     22         CALL histbeg("histday.nc", iim,-1.*zx_lon(:,1), jjmp1,
     23     .                 -1.*zx_lat(1,:),
     24     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto,
    2525     .                 nhori, nid_day)
    2626         write(*,*)'Journee ', itau_phy, zjulian
    2727         CALL histvert(nid_day, "presnivs", "Vertical levels", "mb",
    28      .                 klev, zpresnivs, nvert)
     28     .                 klev, presnivs, nvert)
    2929
    3030c-------------------------------------------------------
  • trunk/libf/phyvenus/ini_histins.h

    r3 r97  
    99c
    1010         idayref = day_ref
    11          z4julian = zjulian
    12          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     11         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1312c
    1413         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    1817         ENDDO
    1918         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlatd,zx_lat)
    20          z4_lon = zx_lon
    21          z4_lat = zx_lat
    22          zpresnivs=presnivs
    23          CALL histbeg("histins", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    24      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto1,
     19         
     20c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
     21c    d'ou le -1.* devant zx_lon et zx_lat       
     22         CALL histbeg("histins.nc", iim,-1.*zx_lon(:,1), jjmp1,
     23     .                 -1.*zx_lat(1,:),
     24     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto1,
    2525     .                 nhori, nid_ins)
    2626         write(*,*)'Inst ', itau_phy, zjulian
    2727         CALL histvert(nid_ins, "presnivs", "Vertical levels", "mb",
    28      .                 klev, zpresnivs, nvert)
     28     .                 klev, presnivs, nvert)
    2929
    3030c-------------------------------------------------------
  • trunk/libf/phyvenus/ini_histmth.h

    r3 r97  
    1414c
    1515         idayref = day_ref
    16          z4julian = zjulian
    17          CALL ymds2ju(annee_ref, 1, idayref, zero, z4julian)
     16         CALL ymds2ju(annee_ref, 1, idayref, zero, zjulian)
    1817c
    1918         CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlond,zx_lon)
     
    2524         
    2625c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
    27          z4_lon = -1.*zx_lon
    28          z4_lat = -1.*zx_lat
    29          
    30          zpresnivs=presnivs
    31          CALL histbeg("histmth.nc", iim,z4_lon(:,1), jjmp1,z4_lat(1,:),
    32      .                 1,iim,1,jjmp1, itau_phy, z4julian, zsto,
     26c    d'ou le -1.* devant zx_lon et zx_lat       
     27         CALL histbeg("histmth.nc", iim,-1.*zx_lon(:,1), jjmp1,
     28     .                 -1.*zx_lat(1,:),
     29     .                 1,iim,1,jjmp1, itau_phy, zjulian, zsto,
    3330     .                 nhori, nid_mth)
    3431         write(*,*)'Mensuel ', itau_phy, zjulian
    3532         CALL histvert(nid_mth, "presnivs", "Vertical levels", "mb",
    36      .                 klev, zpresnivs, nvert)
     33     .                 klev, presnivs, nvert)
    3734
    3835c-------------------------------------------------------
  • trunk/libf/phyvenus/interface_surf.F90

    r3 r97  
    2525  END INTERFACE
    2626
    27 #include "YOMCST.inc"
     27#include "YOMCST.h"
    2828
    2929  CONTAINS
     
    210210!
    211211
    212 #include "YOETHF.inc"
    213 #include "FCTTRE.inc"
    214 
    215212! Parametres d'entree
    216213  integer, intent(IN) :: knon, klon
  • trunk/libf/phyvenus/phyetat0.F

    r3 r97  
    77     .            rlat,rlon, tsol,tsoil,
    88     .           albe, solsw, sollw,
    9      .           fder,radsol,clesphy0,
     9     .           fder,radsol,
    1010     .    zmea, zstd, zsig, zgam, zthe, zpic, zval, 
    1111     .           tabcntr0,
     
    4444      LOGICAL ancien_ok
    4545
    46       INTEGER        longcles
    47       PARAMETER    ( longcles = 20 )
    48       REAL clesphy0( longcles )
    49 c
    5046      REAL xmin, xmax
    5147c
     
    8884         ENDDO
    8985c
    90          cycle_diurne   = .FALSE.
    91          soil_model     = .FALSE.
    92          new_oliq       = .FALSE.
    93          ok_orodr       = .FALSE.
    94          ok_orolf       = .FALSE.
    95          ok_gw_nonoro   = .FALSE.
    96 
    97 
    98          IF( clesphy0(1).NE.tab_cntrl( 5 ) )  THEN
    99              tab_cntrl( 5 ) = clesphy0(1)
    100          ENDIF
    101 
    102          IF( clesphy0(2).NE.tab_cntrl( 6 ) )  THEN
    103              tab_cntrl( 6 ) = clesphy0(2)
    104          ENDIF
    105 
    106          IF( clesphy0(3).NE.tab_cntrl( 7 ) )  THEN
    107              tab_cntrl( 7 ) = clesphy0(3)
    108          ENDIF
    109 
    110          IF( clesphy0(4).NE.tab_cntrl( 8 ) )  THEN
    111              tab_cntrl( 8 ) = clesphy0(4)
    112          ENDIF
    113 
    114          IF( clesphy0(5).NE.tab_cntrl( 9 ) )  THEN
    115              tab_cntrl( 9 ) = clesphy0( 5 )
    116          ENDIF
    117 
    118          IF( clesphy0(6).NE.tab_cntrl( 10 ) )  THEN
    119              tab_cntrl( 10 ) = clesphy0( 6 )
    120          ENDIF
    121 
    122          IF( clesphy0(7).NE.tab_cntrl( 11 ) )  THEN
    123              tab_cntrl( 11 ) = clesphy0( 7 )
    124          ENDIF
    125 
    126          IF( clesphy0(8).NE.tab_cntrl( 12 ) )  THEN
    127              tab_cntrl( 12 ) = clesphy0( 8 )
    128          ENDIF
    129 
    13086
    13187         dtime        = tab_cntrl(1)
    13288         radpas       = tab_cntrl(2)
    133          iflag_con    = tab_cntrl(5)
    134          nbapp_rad    = tab_cntrl(6)
    135 
    136 
    137          cycle_diurne    = .FALSE.
    138          soil_model      = .FALSE.
    139          new_oliq        = .FALSE.
    140          ok_orodr        = .FALSE.
    141          ok_orolf        = .FALSE.
    142          ok_gw_nonoro    = .FALSE.
    143 
    144          IF( tab_cntrl( 7) .EQ. 1. )    cycle_diurne  = .TRUE.
    145          IF( tab_cntrl( 8) .EQ. 1. )       soil_model = .TRUE.
    146          IF( tab_cntrl( 9) .EQ. 1. )         new_oliq = .TRUE.
    147          IF( tab_cntrl(10) .EQ. 1. )         ok_orodr = .TRUE.
    148          IF( tab_cntrl(11) .EQ. 1. )         ok_orolf = .TRUE.
    149          IF( tab_cntrl(12) .EQ. 1. )     ok_gw_nonoro = .TRUE.
    15089
    15190      ENDIF
  • trunk/libf/phyvenus/phyredem.F

    r3 r97  
    1010     .    zmea, zstd, zsig, zgam, zthe, zpic, zval,
    1111     .           t_ancien)
     12
     13      USE control_mod
    1214      IMPLICIT none
    1315c======================================================================
     
    2022#include "dimsoil.h"
    2123#include "clesphys.h"
    22 #include "control.h"
    2324#include "temps.h"
    2425c======================================================================
  • trunk/libf/phyvenus/physiq.F

    r3 r97  
    55      SUBROUTINE physiq (nlon,nlev,nqmax,
    66     .            debut,lafin,rjourvrai,gmtime,pdtphys,
    7      .            paprs,pplay,ppk,pphi,pphis,presnivs,clesphy0,
     7     .            paprs,pplay,ppk,pphi,pphis,presnivs,
    88     .            u,v,t,qx,
    99     .            omega,
     
    1212      USE ioipsl
    1313      USE histcom
     14      USE infotrac
     15      USE control_mod
    1416      IMPLICIT none
    1517c======================================================================
     
    7173#include "dimsoil.h"
    7274#include "clesphys.h"
    73 #include "control.h"
    7475#include "temps.h"
    7576#include "comgeomphy.h"
    76 #include "advtrac.h"
    7777#include "iniprint.h"
    7878#include "raddim.h"
     
    157157#endif
    158158
    159       INTEGER        longcles
    160       PARAMETER    ( longcles = 20 )
    161       REAL clesphy0( longcles      )
    162 c
    163159c Variables propres a la physique
    164160c
     
    385381      REAL zx_tmp_2d(iim,jjmp1),zx_tmp_3d(iim,jjmp1,klev)
    386382      REAL zx_lon(iim,jjmp1), zx_lat(iim,jjmp1)
    387       REAL*4 z4_tmp_2d(iim,jjmp1),z4_tmp_3d(iim,jjmp1,klev)
    388       REAL*4 z4_lon(iim,jjmp1), z4_lat(iim,jjmp1)
    389       REAL*4 zpresnivs(klev)
    390 c     REAL z4_tmp_2d(iim,jjmp1),z4_tmp_3d(iim,jjmp1,klev)
    391 c     REAL z4_lon(iim,jjmp1), z4_lat(iim,jjmp1)
    392 c     REAL zpresnivs(klev)
    393383
    394384      INTEGER nid_day, nid_mth, nid_ins
     
    396386c
    397387      INTEGER nhori, nvert, idayref
    398       REAL*4 zsto, zout, zsto1, zsto2, z4julian, zero
    399 c     REAL zsto, zout, zsto1, zsto2, z4julian, zero
     388      REAL zsto, zout, zsto1, zsto2, zero
    400389      parameter (zero=0.0e0)
    401390      real zjulian
     
    439428c
    440429#include "YOMCST.h"
    441 #include "YOETHF.h"
    442 #include "FCTTRE.h"
    443430
    444431c======================================================================
     
    489476     .       rlatd,rlond,ftsol,ftsoil,
    490477     .       falbe, solsw, sollw,
    491      .       dlw,radsol,clesphy0,
     478     .       dlw,radsol,
    492479     .      zmea,zstd,zsig,zgam,zthe,zpic,zval,
    493480     .       tabcntr0,
     
    577564     .                   iflag_ajs
    578565c
    579          ecrit_mth = NINT(RDAY/dtime *ecritphy)  ! tous les ecritphy jours
     566         ecrit_mth = NINT(RDAY/dtime*ecritphy)  ! tous les ecritphy jours
    580567         IF (ok_mensuel) THEN
    581568         WRITE(lunout,*)'La frequence de sortie mensuelle est de ',
    582569     .                   ecrit_mth
    583570         ENDIF
     571
    584572         ecrit_day = NINT(RDAY/dtime *1.0)  ! tous les jours
    585573         IF (ok_journe) THEN
     
    587575     .                   ecrit_day
    588576         ENDIF
    589          ecrit_ins = NINT(RDAY/dtime/48.)  ! a chaque pas de temps ==> PB. dans time_counter pour 1mois
    590          ecrit_ins = NINT(RDAY/dtime/12.)  ! toutes les deux heures
     577
     578         ecrit_ins = NINT(RDAY/dtime/*ecritphy)  ! Fraction de jour reglable
    591579         IF (ok_instan) THEN
    592580         WRITE(lunout,*)'La frequence de sortie instant. est de ',
  • trunk/libf/phyvenus/phytrac.F

    r3 r97  
    2626
    2727      USE ioipsl
     28      USE infotrac
     29      USE control_mod
    2830
    2931      IMPLICIT none
     
    4244#include "temps.h"
    4345#include "paramet.h"
    44 #include "control.h"
    4546#include "comgeomphy.h"
    46 #include "advtrac.h"
    4747c======================================================================
    4848
     
    124124c   k,i,it,tr_seri(klon,klev,nqmax),pplay(nlon,nlev),
    125125      integer nqCO_OCS
    126       real zprof(klev,nqmx)
     126      real zprof(klev,nqtot)
    127127c      real pzero,gamma
    128128c      parameter (pzero=85000.)
    129129c      parameter (gamma=5000.)
    130130      REAL alpha
    131       real deltatr(klon,klev,nqmx) ! ecart au profil de ref zprof
    132       real tau(klev,nqmx)          ! temps de relaxation vers le profil (s)
     131      real deltatr(klon,klev,nqtot) ! ecart au profil de ref zprof
     132      real tau(klev,nqtot)          ! temps de relaxation vers le profil (s)
    133133      save zprof,tau
    134134c======================================================================
  • trunk/libf/phyvenus/radlwsw.1mat

    r3 r97  
    3838#include "dimphy.h"
    3939#include "raddim.h"
    40 #include "YOETHF.h"
    4140c
    4241      real rmu0(klon), fract(klon), dist
  • trunk/libf/phyvenus/radlwsw.F

    r3 r97  
    4242#include "dimphy.h"
    4343#include "raddim.h"
    44 #include "YOETHF.h"
    4544#include "YOMCST.h"
    4645#include "clesphys.h"
  • trunk/libf/phyvenus/radlwsw.NewtonCool

    r3 r97  
    4141#include "dimphy.h"
    4242#include "raddim.h"
    43 #include "YOETHF.h"
    4443#include "YOMCST.h"
    4544#include "clesphys.h"
  • trunk/libf/phyvenus/radlwsw.multimat

    r3 r97  
    4242#include "dimphy.h"
    4343#include "raddim.h"
    44 #include "YOETHF.h"
    4544#include "YOMCST.h"
    4645#include "clesphys.h"
  • trunk/libf/phyvenus/suphec.F

    r3 r97  
    55C
    66#include "YOMCST.h"
    7 #include "YOETHF.h"
    87cIM cf. JLD
    98       LOGICAL firstcall
     
    153152      WRITE(UNIT=6,FMT='(''     Rv/Rd-1  = '',e13.7)') RETV
    154153C
    155 C     ----------------------------------------------------------------
    156 C
    157 C*       6.    DEFINE THERMODYNAMIC CONSTANTS, LIQUID PHASE.
    158 C              ---------------------------------------------
    159 C
    160       RCW=RCPV
    161       WRITE(UNIT=6,FMT='('' *** Thermodynamic, liquid  ***'')')
    162       WRITE(UNIT=6,FMT='(''         Cw   = '',E13.7)') RCW
    163 C
    164 C     ----------------------------------------------------------------
    165 C
    166 C*       7.    DEFINE THERMODYNAMIC CONSTANTS, SOLID PHASE.
    167 C              --------------------------------------------
    168 C
    169       RCS=RCPV
    170       WRITE(UNIT=6,FMT='('' *** thermodynamic, solid   ***'')')
    171       WRITE(UNIT=6,FMT='(''         Cs   = '',E13.7)') RCS
    172 C
    173 C     ----------------------------------------------------------------
    174 C
    175 C*       8.    DEFINE THERMODYNAMIC CONSTANTS, TRANSITION OF PHASE.
    176 C              ----------------------------------------------------
    177 C
    178       RTT=273.16
    179       RLVTT=2.5008E+6
    180       RLSTT=2.8345E+6
    181       RLMLT=RLSTT-RLVTT
    182       RATM=100000.
    183       WRITE(UNIT=6,FMT='('' *** Thermodynamic, trans.  ***'')')
    184       WRITE(UNIT=6,FMT='('' Fusion point  = '',E13.7)') RTT
    185       WRITE(UNIT=6,FMT='(''        RLvTt  = '',E13.7)') RLVTT
    186       WRITE(UNIT=6,FMT='(''        RLsTt  = '',E13.7)') RLSTT
    187       WRITE(UNIT=6,FMT='(''        RLMlt  = '',E13.7)') RLMLT
    188       WRITE(UNIT=6,FMT='('' Normal press. = '',E13.7)') RATM
    189       WRITE(UNIT=6,FMT='('' Latent heat :  '')')
    190 C
    191 C     ----------------------------------------------------------------
    192 C
    193 C*       9.    SATURATED VAPOUR PRESSURE.
    194 C              --------------------------
    195 C
    196       RESTT=611.14
    197       RGAMW=(RCW-RCPV)/RV
    198       RBETW=RLVTT/RV+RGAMW*RTT
    199       RALPW=LOG(RESTT)+RBETW/RTT+RGAMW*LOG(RTT)
    200       RGAMS=(RCS-RCPV)/RV
    201       RBETS=RLSTT/RV+RGAMS*RTT
    202       RALPS=LOG(RESTT)+RBETS/RTT+RGAMS*LOG(RTT)
    203       RGAMD=RGAMS-RGAMW
    204       RBETD=RBETS-RBETW
    205       RALPD=RALPS-RALPW
    206 C
    207 C     ------------------------------------------------------------------
    208 c
    209 c calculer les constantes pour les fonctions thermodynamiques
    210 c
    211       RVTMP2=RCPV/RCPD-1.
    212       RHOH2O=RATM/100.
    213       R2ES=RESTT*RD/RV
    214       R3LES=17.269
    215       R3IES=21.875
    216       R4LES=35.86
    217       R4IES=7.66
    218       R5LES=R3LES*(RTT-R4LES)
    219       R5IES=R3IES*(RTT-R4IES)
    220 C
    221154      RETURN
    222155      END
  • trunk/libf/phyvenus/testphys1d.F

    r3 r97  
    5454      REAL gru,grv   ! prescribed "geostrophic" background wind
    5555      REAL temp(llm)   ! temperature at the middle of the layers
    56       REAL q(llm,nqmx) ! tracer mixing ratio (e.g. kg/kg)
     56      REAL q(llm,nqtot) ! tracer mixing ratio (e.g. kg/kg)
    5757      REAL tsoil(nsoilmx)   ! subsurface soik temperature (K)
    5858      REAL zlay(llm)   ! altitude estimee dans les couches (km)
     
    6666      REAL dudyn(llm),dvdyn(llm),dtempdyn(llm)
    6767      REAL dpsurf   
    68       REAL dq(llm,nqmx)
    69       REAL dqdyn(llm,nqmx)
     68      REAL dq(llm,nqtot)
     69      REAL dqdyn(llm,nqtot)
    7070
    7171c   Various intermediate variables
     
    287287c    ---------------------------
    288288
    289       DO iq=1,nqmx
     289      DO iq=1,nqtot
    290290        DO ilayer=1,nlayer
    291291           q(ilayer,iq) = 0.
     
    375375c       --------------------
    376376
    377       CALL physiq (1,llm,nqmx,
     377      CALL physiq (1,llm,nqtot,
    378378     ,     firstcall,lastcall,
    379379     ,     day,time,dtphys,
  • trunk/libf/phyvenus/ustarhb.F

    r3 r97  
    3636      LOGICAL check(klon)   ! True=>chk if Richardson no.>critcal
    3737c
    38 #include "YOETHF.h"
    39 #include "FCTTRE.h"
    4038      DO i = 1, knon
    4139        zx_alf1 = 1.0
  • trunk/libf/phyvenus/write_histday.h

    r3 r97  
    77      ndex3d = 0
    88      zx_tmp_2d = 0.
    9       z4_tmp_2d = 0.
    109      zx_tmp_3d = 0.
    11       z4_tmp_3d = 0.
    1210      zx_tmp_fi2d=0.
    1311      zx_tmp_fi3d=0.
     
    2624      i = NINT(zout/zsto)
    2725      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
    28       z4_tmp_2d=zx_tmp_2d
    29       CALL histwrite(nid_day,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     26      CALL histwrite(nid_day,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3027C
    3128      i = NINT(zout/zsto)
    3229      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
    33       z4_tmp_2d=zx_tmp_2d
    34       CALL histwrite(nid_day,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     30      CALL histwrite(nid_day,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3531c
    3632      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
    37       z4_tmp_2d=zx_tmp_2d
    38       CALL histwrite(nid_day,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     33      CALL histwrite(nid_day,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3934c
    4035      DO i = 1, klon
     
    4237      ENDDO
    4338      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    44       z4_tmp_2d=zx_tmp_2d
    45       CALL histwrite(nid_day,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     39      CALL histwrite(nid_day,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4640c
    4741      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
    48       z4_tmp_2d=zx_tmp_2d
    49       CALL histwrite(nid_day,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     42      CALL histwrite(nid_day,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5043c
    5144      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
    52       z4_tmp_2d=zx_tmp_2d
    53       CALL histwrite(nid_day,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     45      CALL histwrite(nid_day,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5446c
    5547      ENDIF !lev_histday.GE.1
     
    6153c
    6254      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
    63       z4_tmp_3d=zx_tmp_3d
    64       CALL histwrite(nid_day,"temp",itau_w,z4_tmp_3d,
     55      CALL histwrite(nid_day,"temp",itau_w,zx_tmp_3d,
    6556     .                                   iim*jjmp1*klev,ndex3d)
    6657c
    6758      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
    68       z4_tmp_3d=zx_tmp_3d
    69       CALL histwrite(nid_day,"pres",itau_w,z4_tmp_3d,
     59      CALL histwrite(nid_day,"pres",itau_w,zx_tmp_3d,
    7060     .                                   iim*jjmp1*klev,ndex3d)
    7161c
    7262      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
    73       z4_tmp_3d=zx_tmp_3d
    74       CALL histwrite(nid_day,"geop",itau_w,z4_tmp_3d,
     63      CALL histwrite(nid_day,"geop",itau_w,zx_tmp_3d,
    7564     .                                   iim*jjmp1*klev,ndex3d)
    7665c
    7766      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
    78       z4_tmp_3d=zx_tmp_3d
    79       CALL histwrite(nid_day,"vitu",itau_w,z4_tmp_3d,
     67      CALL histwrite(nid_day,"vitu",itau_w,zx_tmp_3d,
    8068     .                                   iim*jjmp1*klev,ndex3d)
    8169c
    8270      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
    83       z4_tmp_3d=zx_tmp_3d
    84       CALL histwrite(nid_day,"vitv",itau_w,z4_tmp_3d,
     71      CALL histwrite(nid_day,"vitv",itau_w,zx_tmp_3d,
    8572     .                                   iim*jjmp1*klev,ndex3d)
    8673c
    8774      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
    88       z4_tmp_3d=zx_tmp_3d
    89       CALL histwrite(nid_day,"vitw",itau_w,z4_tmp_3d,
     75      CALL histwrite(nid_day,"vitw",itau_w,zx_tmp_3d,
    9076     .                                   iim*jjmp1*klev,ndex3d)
    9177c
     
    10086c
    10187      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
    102       z4_tmp_2d=zx_tmp_2d
    103       CALL histwrite(nid_day,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     88      CALL histwrite(nid_day,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    10489c
    10590      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
    106       z4_tmp_2d=zx_tmp_2d
    107       CALL histwrite(nid_day,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     91      CALL histwrite(nid_day,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    10892c
    10993      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
    110       z4_tmp_2d=zx_tmp_2d
    111       CALL histwrite(nid_day,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     94      CALL histwrite(nid_day,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    11295c
    11396      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
    114       z4_tmp_2d=zx_tmp_2d
    115       CALL histwrite(nid_day,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     97      CALL histwrite(nid_day,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    11698c
    11799c 3D
     
    119101      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
    120102      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    121       z4_tmp_3d=zx_tmp_3d
    122       CALL histwrite(nid_day,"SWnet",itau_w,z4_tmp_3d,
     103      CALL histwrite(nid_day,"SWnet",itau_w,zx_tmp_3d,
    123104     .                                   iim*jjmp1*klev,ndex3d)
    124105c
    125106      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
    126107      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    127       z4_tmp_3d=zx_tmp_3d
    128       CALL histwrite(nid_day,"LWnet",itau_w,z4_tmp_3d,
     108      CALL histwrite(nid_day,"LWnet",itau_w,zx_tmp_3d,
    129109     .                                   iim*jjmp1*klev,ndex3d)
    130110c
     
    136116c en K/s     
    137117      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
    138       z4_tmp_3d=zx_tmp_3d
    139       CALL histwrite(nid_day,"dtdyn",itau_w,z4_tmp_3d,
     118      CALL histwrite(nid_day,"dtdyn",itau_w,zx_tmp_3d,
    140119     .                                   iim*jjmp1*klev,ndex3d)
    141120c
    142121c en K/s     
    143122c      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
    144 c      z4_tmp_3d=zx_tmp_3d
    145 c      CALL histwrite(nid_day,"dtphy",itau_w,z4_tmp_3d,
     123c      CALL histwrite(nid_day,"dtphy",itau_w,zx_tmp_3d,
    146124c     .                                   iim*jjmp1*klev,ndex3d)
    147125c
    148126c en K/s     
    149127      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_vdf,zx_tmp_3d)
    150       z4_tmp_3d=zx_tmp_3d
    151       CALL histwrite(nid_day,"dtvdf",itau_w,z4_tmp_3d,
     128      CALL histwrite(nid_day,"dtvdf",itau_w,zx_tmp_3d,
    152129     .                                   iim*jjmp1*klev,ndex3d)
    153130c
    154131c en K/s     
    155132      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_ajs,zx_tmp_3d)
    156       z4_tmp_3d=zx_tmp_3d
    157       CALL histwrite(nid_day,"dtajs",itau_w,z4_tmp_3d,
     133      CALL histwrite(nid_day,"dtajs",itau_w,zx_tmp_3d,
    158134     .                                   iim*jjmp1*klev,ndex3d)
    159135c
     
    161137      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
    162138      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    163       z4_tmp_3d=zx_tmp_3d
    164       CALL histwrite(nid_day,"dtswr",itau_w,z4_tmp_3d,
     139      CALL histwrite(nid_day,"dtswr",itau_w,zx_tmp_3d,
    165140     .                                   iim*jjmp1*klev,ndex3d)
    166141c
     
    168143      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
    169144      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    170       z4_tmp_3d=zx_tmp_3d
    171       CALL histwrite(nid_day,"dtlwr",itau_w,z4_tmp_3d,
     145      CALL histwrite(nid_day,"dtlwr",itau_w,zx_tmp_3d,
    172146     .                                   iim*jjmp1*klev,ndex3d)
    173147c en K/s     
    174148c     zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
    175149c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    176 c     z4_tmp_3d=zx_tmp_3d
    177 c     CALL histwrite(nid_day,"dtec",itau_w,z4_tmp_3d,
     150c     CALL histwrite(nid_day,"dtec",itau_w,zx_tmp_3d,
    178151c    .                                   iim*jjmp1*klev,ndex3d)
    179152c
    180153c en (m/s)/s     
    181154      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
    182       z4_tmp_3d=zx_tmp_3d
    183       CALL histwrite(nid_day,"dudyn",itau_w,z4_tmp_3d,
     155      CALL histwrite(nid_day,"dudyn",itau_w,zx_tmp_3d,
    184156     .                                   iim*jjmp1*klev,ndex3d)
    185157c
    186158c en (m/s)/s     
    187159      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
    188       z4_tmp_3d=zx_tmp_3d
    189       CALL histwrite(nid_day,"duvdf",itau_w,z4_tmp_3d,
     160      CALL histwrite(nid_day,"duvdf",itau_w,zx_tmp_3d,
    190161     .                                   iim*jjmp1*klev,ndex3d)
    191162c
    192163c en (m/s)/s     
    193164      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_ajs, zx_tmp_3d)
    194       z4_tmp_3d=zx_tmp_3d
    195       CALL histwrite(nid_day,"duajs",itau_w,z4_tmp_3d,
     165      CALL histwrite(nid_day,"duajs",itau_w,zx_tmp_3d,
    196166     .                                   iim*jjmp1*klev,ndex3d)
    197167c
    198168c en (m/s)/s     
    199169      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_oro, zx_tmp_3d)
    200       z4_tmp_3d=zx_tmp_3d
    201       CALL histwrite(nid_day,"dugwo",itau_w,z4_tmp_3d,
     170      CALL histwrite(nid_day,"dugwo",itau_w,zx_tmp_3d,
    202171     .                                   iim*jjmp1*klev,ndex3d)
    203172c
    204173c en (m/s)/s     
    205174      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_hin, zx_tmp_3d)
    206       z4_tmp_3d=zx_tmp_3d
    207       CALL histwrite(nid_day,"dugwno",itau_w,z4_tmp_3d,
     175      CALL histwrite(nid_day,"dugwno",itau_w,zx_tmp_3d,
    208176     .                                   iim*jjmp1*klev,ndex3d)
    209177c
     
    211179c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
    212180c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
    213 c     z4_tmp_3d=-1.*zx_tmp_3d
    214 c     CALL histwrite(nid_day,"dvvdf",itau_w,z4_tmp_3d,
     181c     zx_tmp_3d=-1.*zx_tmp_3d
     182c     CALL histwrite(nid_day,"dvvdf",itau_w,zx_tmp_3d,
    215183c    .                                   iim*jjmp1*klev,ndex3d)
    216184c
     
    224192         IF (iq.LE.99) THEN
    225193      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq+2), zx_tmp_3d)
    226       z4_tmp_3d=zx_tmp_3d
    227194      WRITE(str2,'(i2.2)') iq
    228       CALL histwrite(nid_day,"trac"//str2,itau_w,z4_tmp_3d,
     195      CALL histwrite(nid_day,"trac"//str2,itau_w,zx_tmp_3d,
    229196     .                                   iim*jjmp1*klev,ndex3d)
    230197         ELSE
     
    236203c
    237204c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
    238 c      z4_tmp_2d=zx_tmp_2d
    239205c      CALL histwrite(nid_day,"taux_",itau_w,
    240 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     206c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    241207c     
    242208c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
    243 c      z4_tmp_2d=zx_tmp_2d
    244209c      CALL histwrite(nid_day,"tauy_",itau_w,
    245 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     210c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    246211c
    247212c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    248 c      z4_tmp_2d=zx_tmp_2d
    249 c     CALL histwrite(nid_day,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     213c     CALL histwrite(nid_day,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    250214c
    251215c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    252 c      z4_tmp_2d=zx_tmp_2d
    253 c     CALL histwrite(nid_day,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     216c     CALL histwrite(nid_day,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    254217c
    255218      ENDIF !lev_histday.GE.5
  • trunk/libf/phyvenus/write_histins.h

    r3 r97  
    77      ndex3d = 0
    88      zx_tmp_2d = 0.
    9       z4_tmp_2d = 0.
    109      zx_tmp_3d = 0.
    11       z4_tmp_3d = 0.
    1210      zx_tmp_fi2d=0.
    1311      zx_tmp_fi3d=0.
  • trunk/libf/phyvenus/write_histmth.h

    r3 r97  
    77      ndex3d = 0
    88      zx_tmp_2d = 0.
    9       z4_tmp_2d = 0.
    109      zx_tmp_3d = 0.
    11       z4_tmp_3d = 0.
    1210      zx_tmp_fi2d=0.
    1311      zx_tmp_fi3d=0.
     
    2523      i = NINT(zout/zsto)
    2624      CALL gr_fi_ecrit(1,klon,iim,jjmp1,pphis,zx_tmp_2d)
    27       z4_tmp_2d=zx_tmp_2d
    28       CALL histwrite(nid_mth,"phis",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     25      CALL histwrite(nid_mth,"phis",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    2926C
    3027      i = NINT(zout/zsto)
    3128      CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
    32       z4_tmp_2d=zx_tmp_2d
    33       CALL histwrite(nid_mth,"aire",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     29      CALL histwrite(nid_mth,"aire",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3430c
    3531      CALL gr_fi_ecrit(1, klon,iim,jjmp1, ftsol,zx_tmp_2d)
    36       z4_tmp_2d=zx_tmp_2d
    37       CALL histwrite(nid_mth,"tsol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     32      CALL histwrite(nid_mth,"tsol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    3833c
    3934      DO i = 1, klon
     
    4136      ENDDO
    4237      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    43       z4_tmp_2d=zx_tmp_2d
    44       CALL histwrite(nid_mth,"psol",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     38      CALL histwrite(nid_mth,"psol",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4539c
    4640c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ue,zx_tmp_2d)
    47 c     z4_tmp_2d=zx_tmp_2d
    48 c     CALL histwrite(nid_mth,"ue",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     41c     CALL histwrite(nid_mth,"ue",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    4942c
    5043c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, ve,zx_tmp_2d)
    5144c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
    52 c     z4_tmp_2d=-1.*zx_tmp_2d
    53 c     CALL histwrite(nid_mth,"ve",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     45c     zx_tmp_2d=-1.*zx_tmp_2d
     46c     CALL histwrite(nid_mth,"ve",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5447c
    5548      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    56       z4_tmp_2d=zx_tmp_2d
    57       CALL histwrite(nid_mth,"cdragh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     49      CALL histwrite(nid_mth,"cdragh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    5850c
    5951      CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    60       z4_tmp_2d=zx_tmp_2d
    61       CALL histwrite(nid_mth,"cdragm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     52      CALL histwrite(nid_mth,"cdragm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    6253c
    6354      ENDIF !lev_histmth.GE.1
     
    6960c
    7061      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, t_seri, zx_tmp_3d)
    71       z4_tmp_3d=zx_tmp_3d
    72       CALL histwrite(nid_mth,"temp",itau_w,z4_tmp_3d,
     62      CALL histwrite(nid_mth,"temp",itau_w,zx_tmp_3d,
    7363     .                                   iim*jjmp1*klev,ndex3d)
    7464c
    7565      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, pplay, zx_tmp_3d)
    76       z4_tmp_3d=zx_tmp_3d
    77       CALL histwrite(nid_mth,"pres",itau_w,z4_tmp_3d,
     66      CALL histwrite(nid_mth,"pres",itau_w,zx_tmp_3d,
    7867     .                                   iim*jjmp1*klev,ndex3d)
    7968c
    8069      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, zphi, zx_tmp_3d)
    81       z4_tmp_3d=zx_tmp_3d
    82       CALL histwrite(nid_mth,"geop",itau_w,z4_tmp_3d,
     70      CALL histwrite(nid_mth,"geop",itau_w,zx_tmp_3d,
    8371     .                                   iim*jjmp1*klev,ndex3d)
    8472c
    8573      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, u_seri, zx_tmp_3d)
    86       z4_tmp_3d=zx_tmp_3d
    87       CALL histwrite(nid_mth,"vitu",itau_w,z4_tmp_3d,
     74      CALL histwrite(nid_mth,"vitu",itau_w,zx_tmp_3d,
    8875     .                                   iim*jjmp1*klev,ndex3d)
    8976c
    9077      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, v_seri, zx_tmp_3d)
    9178c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
    92       z4_tmp_3d=-1.*zx_tmp_3d
    93       CALL histwrite(nid_mth,"vitv",itau_w,z4_tmp_3d,
     79      zx_tmp_3d=-1.*zx_tmp_3d
     80      CALL histwrite(nid_mth,"vitv",itau_w,zx_tmp_3d,
    9481     .                                   iim*jjmp1*klev,ndex3d)
    9582c
    9683      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, omega, zx_tmp_3d)
    97       z4_tmp_3d=zx_tmp_3d
    98       CALL histwrite(nid_mth,"vitw",itau_w,z4_tmp_3d,
     84      CALL histwrite(nid_mth,"vitw",itau_w,zx_tmp_3d,
    9985     .                                   iim*jjmp1*klev,ndex3d)
    10086c
    10187c en (m/s)/s     
    10288      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_dyn, zx_tmp_3d)
    103       z4_tmp_3d=zx_tmp_3d
    104       CALL histwrite(nid_mth,"dudyn",itau_w,z4_tmp_3d,
     89      CALL histwrite(nid_mth,"dudyn",itau_w,zx_tmp_3d,
    10590     .                                   iim*jjmp1*klev,ndex3d)
    10691c
    10792c en (m/s)/s     
    10893      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_vdf, zx_tmp_3d)
    109       z4_tmp_3d=zx_tmp_3d
    110       CALL histwrite(nid_mth,"duvdf",itau_w,z4_tmp_3d,
     94      CALL histwrite(nid_mth,"duvdf",itau_w,zx_tmp_3d,
    11195     .                                   iim*jjmp1*klev,ndex3d)
    11296c
    11397c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, mang, zx_tmp_3d)
    114 c     z4_tmp_3d=zx_tmp_3d
    115 c     CALL histwrite(nid_mth,"mang",itau_w,z4_tmp_3d,
     98c     CALL histwrite(nid_mth,"mang",itau_w,zx_tmp_3d,
    11699c    .                                   iim*jjmp1*klev,ndex3d)
    117100c
    118101      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, ycoefh, zx_tmp_3d)
    119       z4_tmp_3d=zx_tmp_3d
    120       CALL histwrite(nid_mth,"Kz",itau_w,z4_tmp_3d,
     102      CALL histwrite(nid_mth,"Kz",itau_w,zx_tmp_3d,
    121103     .                                   iim*jjmp1*klev,ndex3d)
    122104c
     
    126108          IF (iq.LE.99) THEN
    127109       CALL gr_fi_ecrit(klev,klon,iim,jjmp1, qx(1,1,iq), zx_tmp_3d)
    128        z4_tmp_3d=zx_tmp_3d
    129110       WRITE(str2,'(i2.2)') iq
    130        CALL histwrite(nid_mth,tnom(iq),itau_w,z4_tmp_3d,
     111       CALL histwrite(nid_mth,tnom(iq),itau_w,zx_tmp_3d,
    131112     .                                   iim*jjmp1*klev,ndex3d)
    132113          ELSE
     
    138119c
    139120      CALL gr_fi_ecrit(1, klon,iim,jjmp1, topsw,zx_tmp_2d)
    140       z4_tmp_2d=zx_tmp_2d
    141       CALL histwrite(nid_mth,"tops",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     121      CALL histwrite(nid_mth,"tops",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    142122c
    143123      ENDIF !lev_histmth.GE.2
     
    151131c
    152132      CALL gr_fi_ecrit(1, klon,iim,jjmp1, toplw,zx_tmp_2d)
    153       z4_tmp_2d=zx_tmp_2d
    154       CALL histwrite(nid_mth,"topl",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     133      CALL histwrite(nid_mth,"topl",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    155134c
    156135      CALL gr_fi_ecrit(1, klon,iim,jjmp1, solsw,zx_tmp_2d)
    157       z4_tmp_2d=zx_tmp_2d
    158       CALL histwrite(nid_mth,"sols",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     136      CALL histwrite(nid_mth,"sols",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    159137c
    160138      CALL gr_fi_ecrit(1, klon,iim,jjmp1, sollw,zx_tmp_2d)
    161       z4_tmp_2d=zx_tmp_2d
    162       CALL histwrite(nid_mth,"soll",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     139      CALL histwrite(nid_mth,"soll",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    163140c
    164141c 3D
     
    166143      zx_tmp_fi3d(1:klon,1:klev)=swnet(1:klon,1:klev)
    167144      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    168       z4_tmp_3d=zx_tmp_3d
    169       CALL histwrite(nid_mth,"SWnet",itau_w,z4_tmp_3d,
     145      CALL histwrite(nid_mth,"SWnet",itau_w,zx_tmp_3d,
    170146     .                                   iim*jjmp1*klev,ndex3d)
    171147c
    172148      zx_tmp_fi3d(1:klon,1:klev)=lwnet(1:klon,1:klev)
    173149      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    174       z4_tmp_3d=zx_tmp_3d
    175       CALL histwrite(nid_mth,"LWnet",itau_w,z4_tmp_3d,
     150      CALL histwrite(nid_mth,"LWnet",itau_w,zx_tmp_3d,
    176151     .                                   iim*jjmp1*klev,ndex3d)
    177152c
    178153      zx_tmp_fi3d(1:klon,1:klev)=fluxt(1:klon,1:klev)
    179154      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    180       z4_tmp_3d=zx_tmp_3d
    181       CALL histwrite(nid_mth,"fluxvdf",itau_w,z4_tmp_3d,
     155      CALL histwrite(nid_mth,"fluxvdf",itau_w,zx_tmp_3d,
    182156     .                                   iim*jjmp1*klev,ndex3d)
    183157c
    184158      zx_tmp_fi3d(1:klon,1:klev)=flux_dyn(1:klon,1:klev)
    185159      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    186       z4_tmp_3d=zx_tmp_3d
    187       CALL histwrite(nid_mth,"fluxdyn",itau_w,z4_tmp_3d,
     160      CALL histwrite(nid_mth,"fluxdyn",itau_w,zx_tmp_3d,
    188161     .                                   iim*jjmp1*klev,ndex3d)
    189162c
    190163      zx_tmp_fi3d(1:klon,1:klev)=flux_ajs(1:klon,1:klev)
    191164      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    192       z4_tmp_3d=zx_tmp_3d
    193       CALL histwrite(nid_mth,"fluxajs",itau_w,z4_tmp_3d,
     165      CALL histwrite(nid_mth,"fluxajs",itau_w,zx_tmp_3d,
    194166     .                                   iim*jjmp1*klev,ndex3d)
    195167c
    196168c     zx_tmp_fi3d(1:klon,1:klev)=flux_ec(1:klon,1:klev)
    197169c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    198 c     z4_tmp_3d=zx_tmp_3d
    199 c     CALL histwrite(nid_mth,"fluxec",itau_w,z4_tmp_3d,
     170c     CALL histwrite(nid_mth,"fluxec",itau_w,zx_tmp_3d,
    200171c    .                                   iim*jjmp1*klev,ndex3d)
    201172c
     
    207178c en K/s     
    208179      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t_dyn, zx_tmp_3d)
    209       z4_tmp_3d=zx_tmp_3d
    210       CALL histwrite(nid_mth,"dtdyn",itau_w,z4_tmp_3d,
     180      CALL histwrite(nid_mth,"dtdyn",itau_w,zx_tmp_3d,
    211181     .                                   iim*jjmp1*klev,ndex3d)
    212182c
    213183c en K/s     
    214184c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_t, zx_tmp_3d)
    215 c     z4_tmp_3d=zx_tmp_3d
    216 c     CALL histwrite(nid_mth,"dtphy",itau_w,z4_tmp_3d,
     185c     CALL histwrite(nid_mth,"dtphy",itau_w,zx_tmp_3d,
    217186c    .                                   iim*jjmp1*klev,ndex3d)
    218187c
    219188c en K/s     
    220189      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_vdf,zx_tmp_3d)
    221       z4_tmp_3d=zx_tmp_3d
    222       CALL histwrite(nid_mth,"dtvdf",itau_w,z4_tmp_3d,
     190      CALL histwrite(nid_mth,"dtvdf",itau_w,zx_tmp_3d,
    223191     .                                   iim*jjmp1*klev,ndex3d)
    224192c
    225193c en K/s     
    226194      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,d_t_ajs,zx_tmp_3d)
    227       z4_tmp_3d=zx_tmp_3d
    228       CALL histwrite(nid_mth,"dtajs",itau_w,z4_tmp_3d,
     195      CALL histwrite(nid_mth,"dtajs",itau_w,zx_tmp_3d,
    229196     .                                   iim*jjmp1*klev,ndex3d)
    230197c
     
    232199      zx_tmp_fi3d(1:klon,1:klev)=heat(1:klon,1:klev)/RDAY
    233200      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    234       z4_tmp_3d=zx_tmp_3d
    235       CALL histwrite(nid_mth,"dtswr",itau_w,z4_tmp_3d,
     201      CALL histwrite(nid_mth,"dtswr",itau_w,zx_tmp_3d,
    236202     .                                   iim*jjmp1*klev,ndex3d)
    237203c
     
    239205      zx_tmp_fi3d(1:klon,1:klev)=-1.*cool(1:klon,1:klev)/RDAY
    240206      CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    241       z4_tmp_3d=zx_tmp_3d
    242       CALL histwrite(nid_mth,"dtlwr",itau_w,z4_tmp_3d,
     207      CALL histwrite(nid_mth,"dtlwr",itau_w,zx_tmp_3d,
    243208     .                                   iim*jjmp1*klev,ndex3d)
    244209c en K/s     
    245210c     zx_tmp_fi3d(1:klon,1:klev)=d_t_ec(1:klon,1:klev)
    246211c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    247 c     z4_tmp_3d=zx_tmp_3d
    248 c     CALL histwrite(nid_mth,"dtec",itau_w,z4_tmp_3d,
     212c     CALL histwrite(nid_mth,"dtec",itau_w,zx_tmp_3d,
    249213c    .                                   iim*jjmp1*klev,ndex3d)
    250214c
    251215c en (m/s)/s     
    252216      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_ajs, zx_tmp_3d)
    253       z4_tmp_3d=zx_tmp_3d
    254       CALL histwrite(nid_mth,"duajs",itau_w,z4_tmp_3d,
     217      CALL histwrite(nid_mth,"duajs",itau_w,zx_tmp_3d,
    255218     .                                   iim*jjmp1*klev,ndex3d)
    256219c
    257220c en (m/s)/s     
    258221      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_oro, zx_tmp_3d)
    259       z4_tmp_3d=zx_tmp_3d
    260       CALL histwrite(nid_mth,"dugwo",itau_w,z4_tmp_3d,
     222      CALL histwrite(nid_mth,"dugwo",itau_w,zx_tmp_3d,
    261223     .                                   iim*jjmp1*klev,ndex3d)
    262224c
    263225c en (m/s)/s     
    264226      CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_u_hin, zx_tmp_3d)
    265       z4_tmp_3d=zx_tmp_3d
    266       CALL histwrite(nid_mth,"dugwno",itau_w,z4_tmp_3d,
     227      CALL histwrite(nid_mth,"dugwno",itau_w,zx_tmp_3d,
    267228     .                                   iim*jjmp1*klev,ndex3d)
    268229c
     
    270231c     CALL gr_fi_ecrit(klev,klon,iim,jjmp1, d_v_vdf, zx_tmp_3d)
    271232c VENUS: regardee a l'envers!!!!!!!!!!!!!!!
    272 c     z4_tmp_3d=-1.*zx_tmp_3d
    273 c     CALL histwrite(nid_mth,"dvvdf",itau_w,z4_tmp_3d,
     233c     zx_tmp_3d=-1.*zx_tmp_3d
     234c     CALL histwrite(nid_mth,"dvvdf",itau_w,zx_tmp_3d,
    274235c    .                                   iim*jjmp1*klev,ndex3d)
    275236c
     
    281242c
    282243c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxu , zx_tmp_2d)
    283 c      z4_tmp_2d=zx_tmp_2d
    284244c      CALL histwrite(nid_mth,"taux_",itau_w,
    285 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     245c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    286246c     
    287247c      CALL gr_fi_ecrit(1, klon,iim,jjmp1, fluxv , zx_tmp_2d)
    288 c      z4_tmp_2d=zx_tmp_2d
    289248c      CALL histwrite(nid_mth,"tauy_",itau_w,
    290 c    $      z4_tmp_2d,iim*jjmp1,ndex2d)
     249c    $      zx_tmp_2d,iim*jjmp1,ndex2d)
    291250c
    292251c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragm,zx_tmp_2d)
    293 c      z4_tmp_2d=zx_tmp_2d
    294 c     CALL histwrite(nid_mth,"cdrm",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     252c     CALL histwrite(nid_mth,"cdrm",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    295253c
    296254c     CALL gr_fi_ecrit(1, klon,iim,jjmp1, cdragh,zx_tmp_2d)
    297 c      z4_tmp_2d=zx_tmp_2d
    298 c     CALL histwrite(nid_mth,"cdrh",itau_w,z4_tmp_2d,iim*jjmp1,ndex2d)
     255c     CALL histwrite(nid_mth,"cdrh",itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
    299256c
    300257      ENDIF !lev_histmth.GE.5
Note: See TracChangeset for help on using the changeset viewer.