/[lmdze]/trunk/phylmd/initphysto.f
ViewVC logotype

Contents of /trunk/phylmd/initphysto.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 108 - (show annotations)
Tue Sep 16 14:00:41 2014 UTC (9 years, 7 months ago) by guez
File size: 5859 byte(s)
Imported writefield from LMDZ. Close at the end of gcm the files which
were created by writefiled (not done in LMDZ).

Removed procedures for the output of Grads files. Removed calls to
dump2d. In guide, replaced calls to wrgrads by calls to writefield.

In vlspltqs, removed redundant programming of saturation
pressure. Call foeew from module FCTTRE instead.

Bug fix in interpre: size of w exceeding size of correponding actual
argument wg in advtrac.

In leapfrog, call guide until the end of the run, instead of six hours
before the end.

Bug fix in readsulfate_preind: type of arguments.

1 SUBROUTINE initphysto(infile,rlon,rlat,tstep,t_ops,t_wrt,nq,fileid)
2
3 ! From phylmd/initphysto.F,v 1.2 2004/06/22 11:45:32
4 ! Routine d'initialisation des ecritures des fichiers histoires LMDZ
5 ! au format IOIPSL
6
7 ! Appels succesifs des routines: histbeg
8 ! histhori
9 ! histver
10 ! histdef
11 ! histend
12
13 ! Entree:
14
15 ! infile: nom du fichier histoire a creer
16 ! day0,anne0: date de reference
17 ! tstep: duree du pas de temps en seconde
18 ! t_ops: frequence de l'operation pour IOIPSL
19 ! t_wrt: frequence d'ecriture sur le fichier
20 ! nq: nombre de traceurs
21
22 ! Sortie:
23 ! fileid: ID du fichier netcdf cree
24 ! filevid:ID du fichier netcdf pour la grille v
25
26 ! L. Fairhead, 03/99
27
28 USE histbeg_totreg_m, ONLY : histbeg_totreg
29 USE histdef_m, ONLY : histdef
30 USE histend_m, ONLY : histend
31 use histsync_m, only: histsync
32 USE histvert_m, ONLY : histvert
33 USE dimens_m
34 USE paramet_m
35 USE comconst
36 USE indicesol
37 USE dimphy
38 use conf_gcm_m
39 USE comgeom
40 USE serre
41 USE temps
42 USE nr_util, ONLY : pi
43 USE ymds2ju_m
44
45 IMPLICIT NONE
46
47 ! Arguments
48 CHARACTER(len=*) infile
49 INTEGER nhoriid, i
50 REAL, INTENT (IN) :: tstep
51 REAL t_ops, t_wrt
52 INTEGER fileid, filevid
53 INTEGER nq, l
54 REAL nivsigs(llm)
55
56 ! Variables locales
57
58 INTEGER tau0
59 REAL zjulian
60 CHARACTER(len=3) str
61 CHARACTER(len=10) ctrac
62 INTEGER iq
63 INTEGER uhoriid, vhoriid, thoriid, zvertiid
64 INTEGER ii, jj
65 INTEGER zan, idayref
66 LOGICAL ok_sync
67 REAL zx_lon(iim,jjm+1), zx_lat(iim,jjm+1)
68
69 REAL, INTENT (IN) :: rlon(klon), rlat(klon)
70
71 !-----------------------------------------------------
72
73 ! Initialisations
74 str = 'q '
75 ctrac = 'traceur '
76 ok_sync = .TRUE.
77
78 ! Appel a histbeg: creation du fichier netcdf et initialisations
79 ! diverses
80
81 zan = annee_ref
82 idayref = day_ref
83 CALL ymds2ju(zan,1,idayref,0.0,zjulian)
84 tau0 = 0
85
86 CALL gr_fi_ecrit(1,klon,iim,jjm+1,rlon,zx_lon)
87 DO i = 1, iim
88 zx_lon(i,1) = rlon(i+1)
89 zx_lon(i,jjm+1) = rlon(i+1)
90 END DO
91 CALL gr_fi_ecrit(1,klon,iim,jjm+1,rlat,zx_lat)
92
93
94 CALL histbeg_totreg(infile,zx_lon(:,1),zx_lat(1,:),1,iim,1,jjm+1,tau0, &
95 zjulian,tstep,nhoriid,fileid)
96
97 ! Appel a histvert pour la grille verticale
98
99 DO l = 1, llm
100 nivsigs(l) = float(l)
101 END DO
102
103 CALL histvert(fileid,'sig_s','Niveaux sigma','sigma_level',nivsigs, &
104 zvertiid)
105
106 ! Appels a histdef pour la definition des variables a sauvegarder
107
108 CALL histdef(fileid,'phis','Surface geop. height','-',iim,jjm+1,nhoriid, &
109 1,1,1,-99,'once',t_ops,t_wrt)
110
111 CALL histdef(fileid,'aire','Grid area','-',iim,jjm+1,nhoriid,1,1,1,-99, &
112 'once',t_ops,t_wrt)
113
114 CALL histdef(fileid,'dtime','tps phys ','s',1,1,nhoriid,1,1,1,-99, &
115 'once',t_ops,t_wrt)
116
117 CALL histdef(fileid,'istphy','tps stock','s',1,1,nhoriid,1,1,1,-99, &
118 'once',t_ops,t_wrt)
119
120 ! T
121
122 CALL histdef(fileid,'t','Temperature','K',iim,jjm+1,nhoriid,llm,1,llm, &
123 zvertiid,'inst(X)',t_ops,t_wrt)
124
125 CALL histdef(fileid,'mfu','flx m. pan. mt','kg m/s',iim,jjm+1,nhoriid, &
126 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
127
128 CALL histdef(fileid,'mfd','flx m. pan. des','kg m/s',iim,jjm+1,nhoriid, &
129 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
130
131
132 ! en_u
133
134 CALL histdef(fileid,'en_u','flx ent pan mt','kg m/s',iim,jjm+1,nhoriid, &
135 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
136
137 CALL histdef(fileid,'de_u','flx det pan mt','kg m/s',iim,jjm+1,nhoriid, &
138 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
139
140
141 ! en_d
142
143 CALL histdef(fileid,'en_d','flx ent pan dt','kg m/s',iim,jjm+1,nhoriid, &
144 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
145
146
147
148 ! de_d
149
150 CALL histdef(fileid,'de_d','flx det pan dt','kg m/s',iim,jjm+1,nhoriid, &
151 llm,1,llm,zvertiid,'inst(X)',t_ops,t_wrt)
152
153 ! coefh frac_impa,frac_nucl
154
155 CALL histdef(fileid,'coefh',' ',' ',iim,jjm+1,nhoriid,llm,1,llm, &
156 zvertiid,'inst(X)',t_ops,t_wrt)
157
158 ! abderrahmane le 16 09 02
159 CALL histdef(fileid,'fm_th',' ',' ',iim,jjm+1,nhoriid,llm,1,llm, &
160 zvertiid,'inst(X)',t_ops,t_wrt)
161
162 CALL histdef(fileid,'en_th',' ',' ',iim,jjm+1,nhoriid,llm,1,llm, &
163 zvertiid,'inst(X)',t_ops,t_wrt)
164 ! fin aj
165
166 CALL histdef(fileid,'frac_impa',' ',' ',iim,jjm+1,nhoriid,llm,1,llm, &
167 zvertiid,'inst(X)',t_ops,t_wrt)
168
169 CALL histdef(fileid,'frac_nucl',' ',' ',iim,jjm+1,nhoriid,llm,1,llm, &
170 zvertiid,'inst(X)',t_ops,t_wrt)
171
172
173 ! pyu1
174
175 CALL histdef(fileid,'pyu1',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
176 'inst(X)',t_ops,t_wrt)
177
178
179 ! pyv1
180
181 CALL histdef(fileid,'pyv1',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
182 'inst(X)',t_ops,t_wrt)
183
184 CALL histdef(fileid,'ftsol1',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
185 'inst(X)',t_ops,t_wrt)
186
187
188 ! ftsol2
189
190 CALL histdef(fileid,'ftsol2',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
191 'inst(X)',t_ops,t_wrt)
192
193
194 ! ftsol3
195
196 CALL histdef(fileid,'ftsol3',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
197 'inst(X)',t_ops,t_wrt)
198
199
200 ! ftsol4
201
202 CALL histdef(fileid,'ftsol4',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
203 'inst(X)',t_ops,t_wrt)
204
205
206 ! rain
207
208 CALL histdef(fileid,'rain',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
209 'inst(X)',t_ops,t_wrt)
210
211
212 ! psrf1
213
214 CALL histdef(fileid,'psrf1',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
215 'inst(X)',t_ops,t_wrt)
216
217
218 ! psrf2
219
220 CALL histdef(fileid,'psrf2',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
221 'inst(X)',t_ops,t_wrt)
222
223
224 ! psrf3
225
226 CALL histdef(fileid,'psrf3',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
227 'inst(X)',t_ops,t_wrt)
228
229
230 ! psrf4
231
232 CALL histdef(fileid,'psrf4',' ',' ',iim,jjm+1,nhoriid,1,1,1,-99, &
233 'inst(X)',t_ops,t_wrt)
234
235 CALL histend(fileid)
236 IF (ok_sync) CALL histsync
237
238 END SUBROUTINE initphysto

  ViewVC Help
Powered by ViewVC 1.1.21