/[lmdze]/trunk/dyn3d/dynredem0.f
ViewVC logotype

Diff of /trunk/dyn3d/dynredem0.f

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

revision 5 by guez, Mon Mar 3 16:32:04 2008 UTC revision 15 by guez, Fri Aug 1 15:24:12 2008 UTC
# Line 1  Line 1 
1  SUBROUTINE dynredem0(fichnom, iday_end, phis)  module dynredem0_m
2    
3    ! From dyn3d/dynredem.F, v 1.2 2004/06/22 11:45:30    IMPLICIT NONE
4    
5    ! Ecriture du fichier de redémarrage au format NetCDF (initialisation)  contains
6    
7    USE IOIPSL, only: ymds2ju, ju2ymds    SUBROUTINE dynredem0(fichnom, iday_end, phis)
   use dimens_m, only: iim, jjm, llm, nqmx  
   use paramet_m, only: ip1jmp1, iip1, jjp1, llmp1  
   use comconst, only: rad, cpp, daysec, dtvr, kappa, g, omeg  
   use comvert, only: pa, bp, ap, nivsigs, preff, presnivs, nivsig  
   use logic  
   use comgeom  
   use serre  
   use temps, only: annee_ref, day_ref, itaufin, itau_dyn  
   use ener  
   use advtrac_m, only: tname, ttext  
   use netcdf95, only: nf95_create, NF90_CLOBBER, nf95_put_att, NF90_GLOBAL, &  
        nf95_def_dim, NF90_UNLIMITED  
8    
9    IMPLICIT NONE      ! From dyn3d/dynredem.F, v 1.2 2004/06/22 11:45:30
10        ! Ecriture du fichier de redémarrage au format NetCDF (initialisation)
11    
12    CHARACTER(len=*), intent(in):: fichnom      USE IOIPSL, only: ymds2ju, ju2ymds
13    INTEGER, intent(in):: iday_end      use dimens_m, only: iim, jjm, llm, nqmx
14    REAL, intent(in):: phis(ip1jmp1)      use paramet_m, only: iip1, jjp1, llmp1
15        use comconst, only: rad, cpp, daysec, dtvr, kappa, g, omeg
16    !   Local:      use comvert, only: pa, bp, ap, nivsigs, preff, presnivs, nivsig
17        use logic
18    include "netcdf.inc"      use comgeom
19        use serre
20    INTEGER iq, l      use temps, only: annee_ref, day_ref, itaufin, itau_dyn
21    INTEGER length      use ener
22    PARAMETER (length = 100)      use advtrac_m, only: tname, ttext
23    REAL tab_cntrl(length) ! tableau des parametres du run      use netcdf95, only: nf95_create, nf95_put_att, nf95_def_dim, &
24    INTEGER ierr           nf95_def_var, NF95_ENDDEF, NF95_PUT_VAR
25        use netcdf, only: NF90_CLOBBER, NF90_GLOBAL, NF90_UNLIMITED, nf90_float
26    !   Variables locales pour NetCDF:  
27        CHARACTER(len=*), intent(in):: fichnom
28    INTEGER dims2(2), dims3(3), dims4(4)      INTEGER, intent(in):: iday_end
29    INTEGER idim_index      REAL, intent(in):: phis(:, :)
30    INTEGER idim_rlonu, idim_rlonv, idim_rlatu, idim_rlatv  
31    INTEGER idim_s, idim_sig      !   Local:
32    INTEGER idim_tim  
33    INTEGER nid, nvarid      include "netcdf.inc"
34    
35    REAL zjulian, hours      INTEGER iq, l
36    INTEGER yyears0, jjour0, mmois0      INTEGER length
37    character(len=30) unites      PARAMETER (length = 100)
38        REAL tab_cntrl(length) ! tableau des parametres du run
39    !-----------------------------------------------------------------------      INTEGER ierr
40    
41    print *, "Call sequence information: dynredem0"      !   Variables locales pour NetCDF:
42    
43    call ymds2ju(annee_ref, 1, iday_end, 0.0, zjulian)      INTEGER dims2(2), dims3(3), dims4(4)
44    call ju2ymds(zjulian, yyears0, mmois0, jjour0, hours)      INTEGER idim_index
45        INTEGER idim_rlonu, idim_rlonv, idim_rlatu, idim_rlatv
46    DO l=1, length      INTEGER idim_s, idim_sig
47       tab_cntrl(l) = 0.      INTEGER idim_tim
48    ENDDO      INTEGER nid, nvarid
49    tab_cntrl(1)  = REAL(iim)  
50    tab_cntrl(2)  = REAL(jjm)      REAL zjulian, hours
51    tab_cntrl(3)  = REAL(llm)      INTEGER yyears0, jjour0, mmois0
52    tab_cntrl(4)  = REAL(day_ref)      character(len=30) unites
53    tab_cntrl(5)  = REAL(annee_ref)  
54    tab_cntrl(6)  = rad      !-----------------------------------------------------------------------
55    tab_cntrl(7)  = omeg  
56    tab_cntrl(8)  = g      print *, "Call sequence information: dynredem0"
57    tab_cntrl(9)  = cpp  
58    tab_cntrl(10) = kappa      call ymds2ju(annee_ref, 1, iday_end, 0.0, zjulian)
59    tab_cntrl(11) = daysec      call ju2ymds(zjulian, yyears0, mmois0, jjour0, hours)
60    tab_cntrl(12) = dtvr  
61    tab_cntrl(13) = etot0      DO l=1, length
62    tab_cntrl(14) = ptot0         tab_cntrl(l) = 0.
63    tab_cntrl(15) = ztot0      ENDDO
64    tab_cntrl(16) = stot0      tab_cntrl(1)  = REAL(iim)
65    tab_cntrl(17) = ang0      tab_cntrl(2)  = REAL(jjm)
66    tab_cntrl(18) = pa      tab_cntrl(3)  = REAL(llm)
67    tab_cntrl(19) = preff      tab_cntrl(4)  = REAL(day_ref)
68        tab_cntrl(5)  = REAL(annee_ref)
69    ! Paramètres  pour le zoom :      tab_cntrl(6)  = rad
70        tab_cntrl(7)  = omeg
71    tab_cntrl(20)  = clon      tab_cntrl(8)  = g
72    tab_cntrl(21)  = clat      tab_cntrl(9)  = cpp
73    tab_cntrl(22)  = grossismx      tab_cntrl(10) = kappa
74    tab_cntrl(23)  = grossismy      tab_cntrl(11) = daysec
75        tab_cntrl(12) = dtvr
76    IF ( fxyhypb )   THEN      tab_cntrl(13) = etot0
77       tab_cntrl(24) = 1.      tab_cntrl(14) = ptot0
78       tab_cntrl(25) = dzoomx      tab_cntrl(15) = ztot0
79       tab_cntrl(26) = dzoomy      tab_cntrl(16) = stot0
80       tab_cntrl(27) = 0.      tab_cntrl(17) = ang0
81       tab_cntrl(28) = taux      tab_cntrl(18) = pa
82       tab_cntrl(29) = tauy      tab_cntrl(19) = preff
83    ELSE  
84       tab_cntrl(24) = 0.      ! Paramètres  pour le zoom :
85       tab_cntrl(25) = dzoomx  
86       tab_cntrl(26) = dzoomy      tab_cntrl(20)  = clon
87       tab_cntrl(27) = 0.      tab_cntrl(21)  = clat
88       tab_cntrl(28) = 0.      tab_cntrl(22)  = grossismx
89       tab_cntrl(29) = 0.      tab_cntrl(23)  = grossismy
90       IF( ysinus )  tab_cntrl(27) = 1.  
91    ENDIF      IF ( fxyhypb )   THEN
92           tab_cntrl(24) = 1.
93    tab_cntrl(30) = REAL(iday_end)         tab_cntrl(25) = dzoomx
94    tab_cntrl(31) = REAL(itau_dyn + itaufin)         tab_cntrl(26) = dzoomy
95           tab_cntrl(27) = 0.
96    call nf95_create(fichnom, NF90_CLOBBER, nid)         tab_cntrl(28) = taux
97    call nf95_put_att(nid, NF90_GLOBAL, "title", &         tab_cntrl(29) = tauy
98         "Fichier de démarrage dynamique")      ELSE
99           tab_cntrl(24) = 0.
100    ! Definir les dimensions du fichiers:         tab_cntrl(25) = dzoomx
101           tab_cntrl(26) = dzoomy
102    call nf95_def_dim(nid, "index", length, idim_index)         tab_cntrl(27) = 0.
103    call NF95_DEF_DIM(nid, "rlonu", iip1, idim_rlonu)         tab_cntrl(28) = 0.
104    call NF95_DEF_DIM(nid, "rlatu", jjp1, idim_rlatu)         tab_cntrl(29) = 0.
105    call NF95_DEF_DIM(nid, "rlonv", iip1, idim_rlonv)         IF( ysinus )  tab_cntrl(27) = 1.
106    call NF95_DEF_DIM(nid, "rlatv", jjm, idim_rlatv)      ENDIF
107    call NF95_DEF_DIM(nid, "sigs", llm, idim_s)  
108    call NF95_DEF_DIM(nid, "sig", llmp1, idim_sig)      tab_cntrl(30) = REAL(iday_end)
109    call NF95_DEF_DIM(nid, "temps", NF90_UNLIMITED, idim_tim)      tab_cntrl(31) = REAL(itau_dyn + itaufin)
110    
111    ierr = NF_ENDDEF(nid) ! sortir du mode de definition      call nf95_create(fichnom, NF90_CLOBBER, nid)
112        call nf95_put_att(nid, NF90_GLOBAL, "title", &
113    ! Definir et enregistrer certains champs invariants:           "Fichier de démarrage dynamique")
114    
115    ierr = NF_REDEF (nid)      ! Definir les dimensions du fichiers:
116    ierr = NF_DEF_VAR (nid, "controle", NF_FLOAT, 1, idim_index, nvarid)  
117    call nf95_put_att(nid, nvarid, "title", "Parametres de controle")      call nf95_def_dim(nid, "index", length, idim_index)
118    ierr = NF_ENDDEF(nid)      call NF95_DEF_DIM(nid, "rlonu", iip1, idim_rlonu)
119    ierr = NF_PUT_VAR_REAL (nid, nvarid, tab_cntrl)      call NF95_DEF_DIM(nid, "rlatu", jjp1, idim_rlatu)
120        call NF95_DEF_DIM(nid, "rlonv", iip1, idim_rlonv)
121    ierr = NF_REDEF (nid)      call NF95_DEF_DIM(nid, "rlatv", jjm, idim_rlatv)
122    ierr = NF_DEF_VAR (nid, "rlonu", NF_FLOAT, 1, idim_rlonu, nvarid)      call NF95_DEF_DIM(nid, "sigs", llm, idim_s)
123    call nf95_put_att(nid, nvarid, "title", "Longitudes des points U")      call NF95_DEF_DIM(nid, "sig", llmp1, idim_sig)
124    ierr = NF_ENDDEF(nid)      call NF95_DEF_DIM(nid, "temps", NF90_UNLIMITED, idim_tim)
125    ierr = NF_PUT_VAR_REAL (nid, nvarid, rlonu)  
126        ! Definir et enregistrer certains champs invariants:
127    ierr = NF_REDEF (nid)  
128    ierr = NF_DEF_VAR (nid, "rlatu", NF_FLOAT, 1, idim_rlatu, nvarid)      call nf95_def_var(nid, "controle", NF90_FLOAT, idim_index, nvarid)
129    call nf95_put_att(nid, nvarid, "title", "Latitudes des points U")      call nf95_put_att(nid, nvarid, "title", "Parametres de controle")
130    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
131    ierr = NF_PUT_VAR_REAL (nid, nvarid, rlatu)      call NF95_PUT_VAR(nid, nvarid, tab_cntrl)
132    
133    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
134    ierr = NF_DEF_VAR (nid, "rlonv", NF_FLOAT, 1, idim_rlonv, nvarid)      call nf95_def_var(nid, "rlonu", NF90_FLOAT, idim_rlonu, nvarid)
135    call nf95_put_att(nid, nvarid, "title", "Longitudes des points V")      call nf95_put_att(nid, nvarid, "title", "Longitudes des points U")
136    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
137    ierr = NF_PUT_VAR_REAL (nid, nvarid, rlonv)      call NF95_PUT_VAR(nid, nvarid, rlonu)
138    
139    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
140    ierr = NF_DEF_VAR (nid, "rlatv", NF_FLOAT, 1, idim_rlatv, nvarid)      call nf95_def_var(nid, "rlatu", NF90_FLOAT, idim_rlatu, nvarid)
141    call nf95_put_att(nid, nvarid, "title", "Latitudes des points V")      call nf95_put_att(nid, nvarid, "title", "Latitudes des points U")
142    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
143    ierr = NF_PUT_VAR_REAL (nid, nvarid, rlatv)      call NF95_PUT_VAR(nid, nvarid, rlatu)
144    
145    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
146    ierr = NF_DEF_VAR (nid, "nivsigs", NF_FLOAT, 1, idim_s, nvarid)      call nf95_def_var(nid, "rlonv", NF90_FLOAT, idim_rlonv, nvarid)
147    call nf95_put_att(nid, nvarid, "title", "Numero naturel des couches s")      call nf95_put_att(nid, nvarid, "title", "Longitudes des points V")
148    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
149    ierr = NF_PUT_VAR_REAL (nid, nvarid, nivsigs)      call NF95_PUT_VAR(nid, nvarid, rlonv)
150    
151    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
152    ierr = NF_DEF_VAR (nid, "nivsig", NF_FLOAT, 1, idim_sig, nvarid)      call nf95_def_var(nid, "rlatv", NF90_FLOAT, idim_rlatv, nvarid)
153    call nf95_put_att(nid, nvarid, "title", "Numero naturel des couches sigma")      call nf95_put_att(nid, nvarid, "title", "Latitudes des points V")
154    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
155    ierr = NF_PUT_VAR_REAL (nid, nvarid, nivsig)      call NF95_PUT_VAR(nid, nvarid, rlatv)
156    
157    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
158    ierr = NF_DEF_VAR (nid, "ap", NF_FLOAT, 1, idim_sig, nvarid)      call nf95_def_var(nid, "nivsigs", NF90_FLOAT, idim_s, nvarid)
159    call nf95_put_att(nid, nvarid, "title", "Coefficient A pour hybride")      call nf95_put_att(nid, nvarid, "title", "Numero naturel des couches s")
160    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
161    ierr = NF_PUT_VAR_REAL (nid, nvarid, ap)      call NF95_PUT_VAR(nid, nvarid, nivsigs)
162    
163    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
164    ierr = NF_DEF_VAR (nid, "bp", NF_FLOAT, 1, idim_sig, nvarid)      call nf95_def_var(nid, "nivsig", NF90_FLOAT, idim_sig, nvarid)
165    call nf95_put_att(nid, nvarid, "title", "Coefficient B pour hybride")      call nf95_put_att(nid, nvarid, "title", "Numero naturel des couches sigma")
166    ierr = NF_ENDDEF(nid)      call NF95_ENDDEF(nid)
167    ierr = NF_PUT_VAR_REAL (nid, nvarid, bp)      call NF95_PUT_VAR(nid, nvarid, nivsig)
168    
169    ierr = NF_REDEF (nid)      ierr = NF_REDEF (nid)
170    ierr = NF_DEF_VAR (nid, "presnivs", NF_FLOAT, 1, idim_s, nvarid)      call nf95_def_var(nid, "ap", NF90_FLOAT, idim_sig, nvarid)
171    ierr = NF_ENDDEF(nid)      call nf95_put_att(nid, nvarid, "title", "Coefficient A pour hybride")
172    ierr = NF_PUT_VAR_REAL (nid, nvarid, presnivs)      call NF95_ENDDEF(nid)
173        call NF95_PUT_VAR(nid, nvarid, ap)
174    ! Coefficients de passage cov. <-> contra. <--> naturel  
175        ierr = NF_REDEF (nid)
176    ierr = NF_REDEF (nid)      call nf95_def_var(nid, "bp", NF90_FLOAT, idim_sig, nvarid)
177    dims2(1) = idim_rlonu      call nf95_put_att(nid, nvarid, "title", "Coefficient B pour hybride")
178    dims2(2) = idim_rlatu      call NF95_ENDDEF(nid)
179    ierr = NF_DEF_VAR (nid, "cu", NF_FLOAT, 2, dims2, nvarid)      call NF95_PUT_VAR(nid, nvarid, bp)
180    call nf95_put_att(nid, nvarid, "title", "Coefficient de passage pour U")  
181    ierr = NF_ENDDEF(nid)      ierr = NF_REDEF (nid)
182    ierr = NF_PUT_VAR_REAL (nid, nvarid, cu)      call nf95_def_var(nid, "presnivs", NF90_FLOAT, idim_s, nvarid)
183        call NF95_ENDDEF(nid)
184    ierr = NF_REDEF (nid)      call NF95_PUT_VAR(nid, nvarid, presnivs)
185    dims2(1) = idim_rlonv  
186    dims2(2) = idim_rlatv      ! Coefficients de passage cov. <-> contra. <--> naturel
187    ierr = NF_DEF_VAR (nid, "cv", NF_FLOAT, 2, dims2, nvarid)  
188    call nf95_put_att(nid, nvarid, "title", "Coefficient de passage pour V")      ierr = NF_REDEF (nid)
189    ierr = NF_ENDDEF(nid)      dims2(1) = idim_rlonu
190    ierr = NF_PUT_VAR_REAL (nid, nvarid, cv)      dims2(2) = idim_rlatu
191        call nf95_def_var(nid, "cu", NF90_FLOAT, dims2, nvarid)
192    ! Aire de chaque maille:      call nf95_put_att(nid, nvarid, "title", "Coefficient de passage pour U")
193        call NF95_ENDDEF(nid)
194    ierr = NF_REDEF (nid)      call NF95_PUT_VAR(nid, nvarid, cu_2d)
195    dims2(1) = idim_rlonv  
196    dims2(2) = idim_rlatu      ierr = NF_REDEF (nid)
197    ierr = NF_DEF_VAR (nid, "aire", NF_FLOAT, 2, dims2, nvarid)      dims2(1) = idim_rlonv
198    call nf95_put_att(nid, nvarid, "title", "Aires de chaque maille")      dims2(2) = idim_rlatv
199    ierr = NF_ENDDEF(nid)      call nf95_def_var(nid, "cv", NF90_FLOAT, dims2, nvarid)
200    ierr = NF_PUT_VAR_REAL (nid, nvarid, aire)      call nf95_put_att(nid, nvarid, "title", "Coefficient de passage pour V")
201        call NF95_ENDDEF(nid)
202    ! Geopentiel au sol:      call NF95_PUT_VAR(nid, nvarid, cv_2d)
203    
204    ierr = NF_REDEF (nid)      ! Aire de chaque maille:
205    dims2(1) = idim_rlonv  
206    dims2(2) = idim_rlatu      ierr = NF_REDEF (nid)
207    ierr = NF_DEF_VAR (nid, "phisinit", NF_FLOAT, 2, dims2, nvarid)      dims2(1) = idim_rlonv
208    call nf95_put_att(nid, nvarid, "title", "Geopotentiel au sol")      dims2(2) = idim_rlatu
209    ierr = NF_ENDDEF(nid)      call nf95_def_var(nid, "aire", NF90_FLOAT, dims2, nvarid)
210    ierr = NF_PUT_VAR_REAL (nid, nvarid, phis)      call nf95_put_att(nid, nvarid, "title", "Aires de chaque maille")
211        call NF95_ENDDEF(nid)
212    ! Definir les variables pour pouvoir les enregistrer plus tard:      call NF95_PUT_VAR(nid, nvarid, aire_2d)
213    
214    ierr = NF_REDEF (nid) ! entrer dans le mode de definition      ! Geopentiel au sol:
215    
216    ierr = NF_DEF_VAR (nid, "temps", NF_FLOAT, 1, idim_tim, nvarid)      ierr = NF_REDEF (nid)
217    call nf95_put_att(nid, nvarid, "title", "Temps de simulation")      dims2(1) = idim_rlonv
218    write(unites, 200)yyears0, mmois0, jjour0      dims2(2) = idim_rlatu
219        call nf95_def_var(nid, "phisinit", NF90_FLOAT, dims2, nvarid)
220        call nf95_put_att(nid, nvarid, "title", "Geopotentiel au sol")
221        call NF95_ENDDEF(nid)
222        call NF95_PUT_VAR(nid, nvarid, phis)
223    
224        ! Definir les variables pour pouvoir les enregistrer plus tard:
225    
226        ierr = NF_REDEF (nid) ! entrer dans le mode de definition
227    
228        call nf95_def_var(nid, "temps", NF90_FLOAT, idim_tim, nvarid)
229        call nf95_put_att(nid, nvarid, "title", "Temps de simulation")
230        write(unites, 200)yyears0, mmois0, jjour0
231  200 format('days since ', i4, '-', i2.2, '-', i2.2, ' 00:00:00')  200 format('days since ', i4, '-', i2.2, '-', i2.2, ' 00:00:00')
232    call nf95_put_att(nid, nvarid, "units", unites)      call nf95_put_att(nid, nvarid, "units", unites)
233    
234    
235    dims4(1) = idim_rlonu      dims4(1) = idim_rlonu
236    dims4(2) = idim_rlatu      dims4(2) = idim_rlatu
237    dims4(3) = idim_s      dims4(3) = idim_s
238    dims4(4) = idim_tim      dims4(4) = idim_tim
239    ierr = NF_DEF_VAR (nid, "ucov", NF_FLOAT, 4, dims4, nvarid)      call nf95_def_var(nid, "ucov", NF90_FLOAT, dims4, nvarid)
240    call nf95_put_att(nid, nvarid, "title", "Vitesse U")      call nf95_put_att(nid, nvarid, "title", "Vitesse U")
241    
242    dims4(1) = idim_rlonv      dims4(1) = idim_rlonv
243    dims4(2) = idim_rlatv      dims4(2) = idim_rlatv
244    dims4(3) = idim_s      dims4(3) = idim_s
245    dims4(4) = idim_tim      dims4(4) = idim_tim
246    ierr = NF_DEF_VAR (nid, "vcov", NF_FLOAT, 4, dims4, nvarid)      call nf95_def_var(nid, "vcov", NF90_FLOAT, dims4, nvarid)
247    call nf95_put_att(nid, nvarid, "title", "Vitesse V")      call nf95_put_att(nid, nvarid, "title", "Vitesse V")
248    
249    dims4(1) = idim_rlonv      dims4(1) = idim_rlonv
250    dims4(2) = idim_rlatu      dims4(2) = idim_rlatu
251    dims4(3) = idim_s      dims4(3) = idim_s
252    dims4(4) = idim_tim      dims4(4) = idim_tim
253    ierr = NF_DEF_VAR (nid, "teta", NF_FLOAT, 4, dims4, nvarid)      call nf95_def_var(nid, "teta", NF90_FLOAT, dims4, nvarid)
254    call nf95_put_att(nid, nvarid, "title", "Temperature")      call nf95_put_att(nid, nvarid, "title", "Temperature")
255    
256    dims4(1) = idim_rlonv      dims4(1) = idim_rlonv
257    dims4(2) = idim_rlatu      dims4(2) = idim_rlatu
258    dims4(3) = idim_s      dims4(3) = idim_s
259    dims4(4) = idim_tim      dims4(4) = idim_tim
260    DO iq=1, nqmx      DO iq=1, nqmx
261       ierr = NF_DEF_VAR (nid, tname(iq), NF_FLOAT, 4, dims4, nvarid)         call nf95_def_var(nid, tname(iq), NF90_FLOAT, dims4, nvarid)
262       call nf95_put_att(nid, nvarid, "title", ttext(iq))         call nf95_put_att(nid, nvarid, "title", ttext(iq))
263    ENDDO      ENDDO
264    
265    dims4(1) = idim_rlonv      dims4(1) = idim_rlonv
266    dims4(2) = idim_rlatu      dims4(2) = idim_rlatu
267    dims4(3) = idim_s      dims4(3) = idim_s
268    dims4(4) = idim_tim      dims4(4) = idim_tim
269    ierr = NF_DEF_VAR (nid, "masse", NF_FLOAT, 4, dims4, nvarid)      call nf95_def_var(nid, "masse", NF90_FLOAT, dims4, nvarid)
270    call nf95_put_att(nid, nvarid, "title", "C est quoi ?")      call nf95_put_att(nid, nvarid, "title", "C est quoi ?")
271    
272    dims3(1) = idim_rlonv      dims3(1) = idim_rlonv
273    dims3(2) = idim_rlatu      dims3(2) = idim_rlatu
274    dims3(3) = idim_tim      dims3(3) = idim_tim
275    ierr = NF_DEF_VAR (nid, "ps", NF_FLOAT, 3, dims3, nvarid)      call nf95_def_var(nid, "ps", NF90_FLOAT, dims3, nvarid)
276    call nf95_put_att(nid, nvarid, "title", "Pression au sol")      call nf95_put_att(nid, nvarid, "title", "Pression au sol")
277    
278        ierr = NF_ENDDEF(nid) ! sortir du mode de definition
279        ierr = NF_CLOSE(nid) ! fermer le fichier
280    
281    ierr = NF_ENDDEF(nid) ! sortir du mode de definition      PRINT*, 'iim, jjm, llm, iday_end', iim, jjm, llm, iday_end
282    ierr = NF_CLOSE(nid) ! fermer le fichier      PRINT*, 'rad, omeg, g, cpp, kappa', rad, omeg, g, cpp, kappa
283    
284    PRINT*, 'iim, jjm, llm, iday_end', iim, jjm, llm, iday_end    END SUBROUTINE dynredem0
   PRINT*, 'rad, omeg, g, cpp, kappa', rad, omeg, g, cpp, kappa  
285    
286  END SUBROUTINE dynredem0  end module dynredem0_m

Legend:
Removed from v.5  
changed lines
  Added in v.15

  ViewVC Help
Powered by ViewVC 1.1.21