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

Contents of /trunk/Sources/phylmd/initphysto.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 186 - (show annotations)
Mon Mar 21 15:36:26 2016 UTC (8 years, 1 month ago) by guez
File size: 5992 byte(s)
Removed variables nlm and nlp of module cv30_param_m. We do not
believe much in the benefit of these intermediary variables so we go
for clarity.

Removed variable noff of module cv30_param_m. Never used anywhere
else. Just set the value of nl explicitly in cv30_param.

Removed argument nd of cv30_param. Only called with nd = klev.

Replaced calls to zilch by array assignments. There was a strange
double call to zilch with the same arguments in cv30_mixing.

Removed procedure cv_flag. Just set the value of variable cvflag_grav
of module cvflag at declaration.

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

  ViewVC Help
Powered by ViewVC 1.1.21