/[lmdze]/trunk/bibio/initdynav.f
ViewVC logotype

Diff of /trunk/bibio/initdynav.f

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

trunk/libf/bibio/initdynav.f90 revision 61 by guez, Fri Apr 20 14:58:43 2012 UTC trunk/bibio/initdynav.f revision 129 by guez, Fri Feb 13 18:22:38 2015 UTC
# Line 6  module initdynav_m Line 6  module initdynav_m
6    
7  contains  contains
8    
9    subroutine initdynav(day0, anne0, tstep, nq, t_ops, t_wrt)    subroutine initdynav(tstep, nq, t_ops, t_wrt)
10    
11      ! From initdynav.F, version 1.1.1.1, 2004/05/19 12:53:05      ! From initdynav.F, version 1.1.1.1, 2004/05/19 12:53:05
12      ! L. Fairhead, LMD      ! L. Fairhead, LMD
     ! Routine d'initialisation des écritures des fichiers histoires LMDZ  
     ! au format IOIPSL. Initialisation du fichier histoire moyenne.  
13    
14      use calendar, ONLY: ymds2ju      ! Routine d'initialisation des écritures des fichiers histoires au
15      USE comvert, ONLY : nivsigs      ! format IOIPSL. Initialisation du fichier histoire moyenne.
     USE comgeom, ONLY : rlatu, rlonv  
     USE dimens_m, ONLY : llm  
     USE histbeg_totreg_m, ONLY : histbeg_totreg  
     USE histdef_m, ONLY : histdef  
     USE histend_m, ONLY : histend  
     USE histvert_m, ONLY : histvert  
     USE iniadvtrac_m, ONLY : ttext  
     USE nr_util, ONLY : pi  
     USE paramet_m, ONLY : iip1, jjp1  
     USE temps, ONLY : itau_dyn  
16    
17      integer, intent(in):: day0, anne0 ! date de reference      USE comgeom, ONLY: rlatu, rlonv
18      real, intent(in):: tstep ! frequence d'ecriture      USE dimens_m, ONLY: llm
19        use dynetat0_m, only: day_ref, annee_ref
20        USE histbeg_totreg_m, ONLY: histbeg_totreg
21        USE histdef_m, ONLY: histdef
22        USE histend_m, ONLY: histend
23        USE histvert_m, ONLY: histvert
24        USE iniadvtrac_m, ONLY: ttext
25        USE nr_util, ONLY: pi
26        USE paramet_m, ONLY: iip1, jjp1
27        USE temps, ONLY: itau_dyn
28        use ymds2ju_m, ONLY: ymds2ju
29    
30        real, intent(in):: tstep ! fréquence d'écriture
31      integer, intent(in):: nq ! nombre de traceurs      integer, intent(in):: nq ! nombre de traceurs
32      real, intent(in):: t_ops ! frequence de l'operation pour IOIPSL      real, intent(in):: t_ops ! fréquence de l'opération pour IOIPSL
33      real, intent(in):: t_wrt ! frequence d'ecriture sur le fichier      real, intent(in):: t_wrt ! fréquence d'écriture sur le fichier
34    
35      ! Variables locales      ! Variables locales
36      integer thoriid, zvertiid      integer horiid, zvertiid
37      real zjulian      real julian
38      integer iq      integer iq, l
     real rlong(iip1, jjp1), rlat(iip1, jjp1)  
     integer ii, jj  
     integer zan, dayref  
39    
40      !----------------------------------------------------      !----------------------------------------------------
41    
42      print *, "Call sequence information: initdynav"      print *, "Call sequence information: initdynav"
43    
44      zan = anne0      CALL ymds2ju(annee_ref, 1, day_ref, 0., julian)
45      dayref = day0      call histbeg_totreg('dyn_hist_ave.nc', rlonv * 180. / pi, &
46      CALL ymds2ju(zan, 1, dayref, 0.0, zjulian)           rlatu * 180. / pi, 1, iip1, 1, jjp1, itau_dyn, julian, tstep, &
47             horiid, histaveid)
48      do jj = 1, jjp1      call histvert(histaveid, 'sigss', 'Niveaux sigma', '', &
49         do ii = 1, iip1           (/(real(l), l = 1, llm)/), zvertiid)
50            rlong(ii, jj) = rlonv(ii) * 180. / pi  
51            rlat(ii, jj) = rlatu(jj) * 180. / pi      call histdef(histaveid, 'u', 'vents u scalaires moyennes', 'm/s', iip1, &
52         enddo           jjp1, horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
53      enddo      call histdef(histaveid, 'v', 'vents v scalaires moyennes', 'm/s', iip1, &
54             jjp1, horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
55      call histbeg_totreg('dyn_hist_ave.nc', rlong(:, 1), rlat(1, :), 1, iip1, &      call histdef(histaveid, 'temp', 'temperature moyennee', 'K', iip1, jjp1, &
56           1, jjp1, itau_dyn, zjulian, tstep, thoriid, histaveid)           horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
57      call histvert(histaveid, 'sigss', 'Niveaux sigma', 'Pa', llm, nivsigs, &      call histdef(histaveid, 'theta', 'temperature potentielle', 'K', iip1, &
58           zvertiid)           jjp1, horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
59        call histdef(histaveid, 'phi', 'geopotentiel moyenne', '-', iip1, jjp1, &
60      call histdef(histaveid, 'u', 'vents u scalaires moyennes', &           horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
          'm/s', iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &  
          'ave(X)', t_ops, t_wrt)  
     call histdef(histaveid, 'v', 'vents v scalaires moyennes', &  
          'm/s', iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &  
          'ave(X)', t_ops, t_wrt)  
     call histdef(histaveid, 'temp', 'temperature moyennee', 'K', &  
          iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &  
          'ave(X)', t_ops, t_wrt)  
     call histdef(histaveid, 'theta', 'temperature potentielle', 'K', &  
          iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &  
          'ave(X)', t_ops, t_wrt)  
     call histdef(histaveid, 'phi', 'geopotentiel moyenne', '-', &  
          iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &  
          'ave(X)', t_ops, t_wrt)  
61    
62      ! Traceurs      ! Traceurs
63      DO iq = 1, nq      DO iq = 1, nq
64         call histdef(histaveid, ttext(iq), ttext(iq), '-', &         call histdef(histaveid, ttext(iq), ttext(iq), '-', iip1, jjp1, &
65              iip1, jjp1, thoriid, llm, 1, llm, zvertiid, &              horiid, llm, 1, llm, zvertiid, 'ave(X)', t_ops, t_wrt)
             'ave(X)', t_ops, t_wrt)  
66      enddo      enddo
67    
68      call histdef(histaveid, 'masse', 'masse', 'kg', &      call histdef(histaveid, 'masse', 'masse', 'kg', iip1, jjp1, horiid, 1, &
69           iip1, jjp1, thoriid, 1, 1, 1, -99, &           1, 1, -99, 'ave(X)', t_ops, t_wrt)
70           'ave(X)', t_ops, t_wrt)      call histdef(histaveid, 'ps', 'pression naturelle au sol', 'Pa', iip1, &
71      call histdef(histaveid, 'ps', 'pression naturelle au sol', 'Pa', &           jjp1, horiid, 1, 1, 1, -99, 'ave(X)', t_ops, t_wrt)
72           iip1, jjp1, thoriid, 1, 1, 1, -99, &      call histdef(histaveid, 'phis', 'geopotentiel au sol', '-', iip1, jjp1, &
73           'ave(X)', t_ops, t_wrt)           horiid, 1, 1, 1, -99, 'ave(X)', t_ops, t_wrt)
     call histdef(histaveid, 'phis', 'geopotentiel au sol', '-', &  
          iip1, jjp1, thoriid, 1, 1, 1, -99, &  
          'ave(X)', t_ops, t_wrt)  
74    
75      call histend(histaveid)      call histend(histaveid)
76    

Legend:
Removed from v.61  
changed lines
  Added in v.129

  ViewVC Help
Powered by ViewVC 1.1.21