Ignore:
Timestamp:
Apr 14, 2010, 4:03:19 PM (14 years ago)
Author:
Ehouarn Millour
Message:

Some cleanup and fixing the possibility to output fields in the dynamics, on the dynamical grids.

CLEANUPS:

  • arch-PW6_VARGAS.fcm : add potentially benefic compiling options
  • removed obsolete "control.h" in dyn3d/dyn3dpar (module control_mod.F90 is used instead)

OUTPUTS in the dynamics (3 sets of files, one for each grid: scalar, u, v):

  • removed "com_io_dyn.h" common; use module "com_io_dyn_mod.F90" instead
  • updated "initdynav.F","inithist.F","writehist.F" and "writedynav.F" in bibio: which field will be written is hard coded there.
  • flags "ok_dyn_ins" and "ok_dyn_ave" (loaded via conf_gcm.F) trigger output of fields in the dynamics: if ok_dyn_ins is true, then files "dyn_hist.nc", "dyn_histu.nc" and "dyn_histv.nc" are written (the frequency of the outputs is given by 'iecri' in run.def; values are written every 'iecri' dynamical step). if ok_dyn_ave is true then files "dyn_hist_ave.nc", "dyn_histu_ave.nc" and "dyn_histv_ave.nc" are written (the rate at which averages and made/written, in days, is given by 'periodav' in run.def).

EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4V5.0-dev/libf/bibio/writehist.F

    r1279 r1357  
    22! $Id$
    33!
    4       subroutine writehist( histid, histvid, time, vcov,
    5      ,                          ucov,teta,phi,q,masse,ps,phis)
     4      subroutine writehist(time,vcov,ucov,teta,phi,q,masse,ps,phis)
    65
    76#ifdef CPP_IOIPSL
     
    98#endif
    109      USE infotrac, ONLY : nqtot, ttext
     10      use com_io_dyn_mod, only : histid,histvid,histuid
    1111      implicit none
    1212
     
    1717C
    1818C   Entree:
    19 C      histid: ID du fichier histoire
    20 C      histvid:ID du fichier histoire pour les vents V (appele a disparaitre)
    2119C      time: temps de l'ecriture
    2220C      vcov: vents v covariants
     
    2927C      phis : geopotentiel au sol
    3028C     
    31 C
    32 C   Sortie:
    33 C      fileid: ID du fichier netcdf cree
    3429C
    3530C   L. Fairhead, LMD, 03/99
     
    5449C
    5550
    56       INTEGER histid, histvid
    5751      REAL vcov(ip1jm,llm),ucov(ip1jmp1,llm)
    5852      REAL teta(ip1jmp1,llm),phi(ip1jmp1,llm)                   
     
    7165      logical ok_sync
    7266      integer itau_w
     67      REAL vnat(ip1jm,llm),unat(ip1jmp1,llm)
     68
    7369C
    7470C  Initialisations
     
    7975      ok_sync =.TRUE.
    8076      itau_w = itau_dyn + time
     77!  Passage aux composantes naturelles du vent
     78      call covnat(llm, ucov, vcov, unat, vnat)
    8179C
    8280C  Appels a histwrite pour l'ecriture des variables a sauvegarder
     
    8482C  Vents U
    8583C
    86       call histwrite(histid, 'ucov', itau_w, ucov,
     84      call histwrite(histuid, 'u', itau_w, unat,
    8785     .               iip1*jjp1*llm, ndexu)
    88 
    8986C
    9087C  Vents V
    9188C
    92       call histwrite(histvid, 'vcov', itau_w, vcov,
     89      call histwrite(histvid, 'v', itau_w, vnat,
    9390     .               iip1*jjm*llm, ndexv)
    9491
     
    106103C  Traceurs
    107104C
    108         DO iq=1,nqtot
    109           call histwrite(histid, ttext(iq), itau_w, q(:,:,iq),
    110      .                   iip1*jjp1*llm, ndexu)
    111         enddo
    112 C
     105!        DO iq=1,nqtot
     106!          call histwrite(histid, ttext(iq), itau_w, q(:,:,iq),
     107!     .                   iip1*jjp1*llm, ndexu)
     108!        enddo
     109!C
    113110C  Masse
    114111C
    115       call histwrite(histid, 'masse', itau_w, masse, iip1*jjp1, ndex2d)
     112      call histwrite(histid,'masse',itau_w, masse,iip1*jjp1*llm,ndexu)
    116113C
    117114C  Pression au sol
     
    121118C  Geopotentiel au sol
    122119C
    123       call histwrite(histid, 'phis', itau_w, phis, iip1*jjp1, ndex2d)
     120!      call histwrite(histid, 'phis', itau_w, phis, iip1*jjp1, ndex2d)
    124121C
    125122C  Fin
     
    128125        call histsync(histid)
    129126        call histsync(histvid)
     127        call histsync(histuid)
    130128      endif
    131129#else
Note: See TracChangeset for help on using the changeset viewer.