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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 151 - (hide annotations)
Tue Jun 23 15:14:20 2015 UTC (8 years, 11 months ago) by guez
File size: 5784 byte(s)
In procedure inifilr, only a part of the arrays modfrstu and modfrstv
were defined. Split these into 4 arrays that are fully defined and
used: modfrst[ns][uv].

Clarified the logic for the computation of jfilt[ns][uv]. Changed the
initial value of the search so that the initial values for northern
hemisphere and southern hemisphere cannot be the same.

Clarified the logic for the computation of modfrst[ns][uv]: removed
the cycle and exit instructions.

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

  ViewVC Help
Powered by ViewVC 1.1.21