/[lmdze]/trunk/dyn3d/infotrac_init.f90
ViewVC logotype

Diff of /trunk/dyn3d/infotrac_init.f90

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

revision 265 by guez, Tue Mar 20 09:35:59 2018 UTC revision 320 by guez, Tue Dec 11 16:49:32 2018 UTC
# Line 12  module iniadvtrac_m Line 12  module iniadvtrac_m
12    
13    private nqmx    private nqmx
14    
15    INTEGER iadv(nqmx) ! indice du sch\'ema d'advection pour l'eau et les traceurs    INTEGER, protected:: iadv(nqmx)
16      ! indice du sch\'ema d'advection pour l'eau et les traceurs
17    
18    character(len=10) tname(nqmx)    character(len = 10), protected:: tname(nqmx)
19    ! nom du traceur pour fichiers restart et historiques    ! nom du traceur pour fichiers restart et historiques
20    
21    character(len=13) ttext(nqmx) ! nom long du traceur pour sorties    character(len = 13), protected:: ttext(nqmx)
22      ! nom long du traceur pour sorties
23    
24  contains  contains
25    
# Line 35  contains Line 37  contains
37      use jumble, only: new_unit      use jumble, only: new_unit
38    
39      ! Local:      ! Local:
40      character(len=3) descrq(0:14)      character(len = 3) descrq(0:14)
41      integer iq, iostat, nq_local, unit      integer iq, iostat, nq_local, unit
42    
43      integer, parameter:: allowed_adv(5) = (/0, 10, 12, 13, 14/)      integer, parameter:: allowed_adv(5) = (/0, 10, 12, 13, 14/)
# Line 50  contains Line 52  contains
52      print *, "Call sequence information: iniadvtrac"      print *, "Call sequence information: iniadvtrac"
53    
54      ! Initializations:      ! Initializations:
55      descrq(0)=''      descrq(0) = ''
56      descrq(10)='VL1'      descrq(10) = 'VL1'
57      descrq(12)='FH1'      descrq(12) = 'FH1'
58      descrq(13)='FH2'      descrq(13) = 'FH2'
59      descrq(14)='VLH'      descrq(14) = 'VLH'
60    
61      ! Choix du sch\'ema pour l'advection dans fichier "traceur.def"      ! Choix du sch\'ema pour l'advection dans fichier "traceur.def"
62      call new_unit(unit)      call new_unit(unit)
63      open(unit, file='traceur.def', status='old', action="read", &      open(unit, file = 'traceur.def', status = 'old', action = "read", &
64           position="rewind", iostat=iostat)           position = "rewind", iostat = iostat)
65      if (iostat == 0) then      if (iostat == 0) then
66         print *, 'Ouverture de "traceur.def" ok'         print *, 'Ouverture de "traceur.def" ok'
67         read(unit, fmt=*) nq_local         read(unit, fmt = *) nq_local
68         print *, 'nombre de traceurs ', nq_local         print *, 'nombre de traceurs ', nq_local
69         call assert(nq_local == nqmx, "iniadvtrac nq_local")         call assert(nq_local == nqmx, "iniadvtrac nq_local")
70    
71         do iq=1, nqmx         do iq = 1, nqmx
72            read(unit, fmt=*) iadv(iq), tname(iq)            read(unit, fmt = *) iadv(iq), tname(iq)
73            if (.not. any(iadv(iq) == allowed_adv)) then            if (.not. any(iadv(iq) == allowed_adv)) then
74               print *, "bad number for advection scheme"               print *, "bad number for advection scheme"
75               stop 1               stop 1
# Line 91  contains Line 93  contains
93      ! \`A partir du nom court du traceur et du sch\'ema d'advection, on      ! \`A partir du nom court du traceur et du sch\'ema d'advection, on
94      ! d\'etermine le nom long :      ! d\'etermine le nom long :
95      do iq = 1, nqmx      do iq = 1, nqmx
96         ttext(iq)=trim(tname(iq)) // descrq(iadv(iq))         ttext(iq) = trim(tname(iq)) // descrq(iadv(iq))
97      end do      end do
98    
99    END subroutine iniadvtrac    END subroutine iniadvtrac

Legend:
Removed from v.265  
changed lines
  Added in v.320

  ViewVC Help
Powered by ViewVC 1.1.21