/[MITgcm]/MITgcm/model/src/ini_model_io.F
ViewVC logotype

Annotation of /MITgcm/model/src/ini_model_io.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.16 - (hide annotations) (download)
Wed Feb 23 05:17:36 2005 UTC (19 years, 3 months ago) by edhill
Branch: MAIN
CVS Tags: checkpoint57e_post, eckpoint57e_pre
Changes since 1.15: +15 -1 lines
 o add more "Z" dimensions and associated coordinate vars to MNC

1 edhill 1.16 C $Header: /u/gcmpack/MITgcm/model/src/ini_model_io.F,v 1.15 2005/02/22 17:25:20 jmc Exp $
2 jmc 1.2 C $Name: $
3 adcroft 1.1
4     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
5    
6     #include "PACKAGES_CONFIG.h"
7     #include "CPP_OPTIONS.h"
8    
9     CBOP
10     C !ROUTINE: INI_MODEL_IO
11 edhill 1.9
12 adcroft 1.1 C !INTERFACE:
13     SUBROUTINE INI_MODEL_IO( myThid )
14    
15 edhill 1.9 C !DESCRIPTION:
16     C Pass specific setup data to any I/O packages necessary for I/O of
17     C model state variables. This is specifically for setting up (once
18     C only!) information such as shape/size of variables, units,
19     C etc... and is primarily for state and snapshot variables.
20 adcroft 1.1
21 edhill 1.9 C !USES:
22 adcroft 1.1 IMPLICIT NONE
23     #include "SIZE.h"
24     #include "GRID.h"
25     #include "EEPARAMS.h"
26     #include "PARAMS.h"
27    
28     C !INPUT/OUTPUT PARAMETERS:
29     C myThid - Number of this instances
30     INTEGER myThid
31     CEOP
32    
33    
34     C Flags specific to RW and MDSIO
35     C Set globalFiles flag for READ_WRITE_FLD package
36     CALL SET_WRITE_GLOBAL_FLD( globalFiles )
37     C Set globalFiles flag for READ_WRITE_REC package
38     CALL SET_WRITE_GLOBAL_REC( globalFiles )
39     C Set globalFiles flag for READ_WRITE_REC package
40     CALL SET_WRITE_GLOBAL_PICKUP( globalFiles )
41    
42     #ifdef ALLOW_MNC
43     IF (useMNC) THEN
44    
45     C Define coordinates for all MNC files ---------------------------------
46     C XC
47     CALL MNC_CW_ADD_VNAME('XC', 'Cen_xy_Hn__-__-', 3,4, myThid)
48 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XC','description',
49 adcroft 1.1 & 'X coordinate of cell center (T-P point)',myThid)
50 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XC',
51 adcroft 1.1 & 'units', 'degree_east', myThid)
52    
53     C YC
54     CALL MNC_CW_ADD_VNAME('YC', 'Cen_xy_Hn__-__-', 3,4, myThid)
55 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YC','description',
56 adcroft 1.1 & 'Y coordinate of cell center (T-P point)',myThid)
57 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YC',
58 adcroft 1.1 & 'units', 'degree_north', myThid)
59    
60     C XU
61     CALL MNC_CW_ADD_VNAME('XU', 'U_xy_Hn__-__-', 3,4, myThid)
62 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XU','description',
63 adcroft 1.1 & 'X coordinate of U point',myThid)
64 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XU',
65 adcroft 1.1 & 'units', 'degree_east', myThid)
66    
67     C YU
68     CALL MNC_CW_ADD_VNAME('YU', 'U_xy_Hn__-__-', 3,4, myThid)
69 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YU','description',
70 adcroft 1.1 & 'Y coordinate of U point',myThid)
71 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YU',
72 adcroft 1.1 & 'units', 'degree_north', myThid)
73    
74     C XV
75     CALL MNC_CW_ADD_VNAME('XV', 'V_xy_Hn__-__-', 3,4, myThid)
76 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XV','description',
77 adcroft 1.1 & 'X coordinate of V point',myThid)
78 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XV',
79 adcroft 1.1 & 'units', 'degree_east', myThid)
80    
81     C YV
82     CALL MNC_CW_ADD_VNAME('YV', 'V_xy_Hn__-__-', 3,4, myThid)
83 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YV','description',
84 adcroft 1.1 & 'Y coordinate of V point',myThid)
85 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YV',
86 adcroft 1.1 & 'units', 'degree_north', myThid)
87    
88     C XG
89     CALL MNC_CW_ADD_VNAME('XG', 'Cor_xy_Hn__-__-', 3,4, myThid)
90 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XG','description',
91 adcroft 1.1 & 'X coordinate of cell corner (Vorticity point)',myThid)
92 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('XG',
93 adcroft 1.1 & 'units', 'degree_east', myThid)
94    
95     C YG
96     CALL MNC_CW_ADD_VNAME('YG', 'Cor_xy_Hn__-__-', 3,4, myThid)
97 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YG','description',
98 adcroft 1.1 & 'Y coordinate of cell corner (Vorticity point)',myThid)
99 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('YG',
100 adcroft 1.1 & 'units', 'degree_north', myThid)
101    
102     C RC
103     CALL MNC_CW_ADD_VNAME('RC', '-_-_--__C__-', 0,0, myThid)
104 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('RC','description',
105 adcroft 1.1 & 'R coordinate of cell center',myThid)
106 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('RC',
107 adcroft 1.1 & 'units', 'm', myThid)
108    
109     C RF
110     CALL MNC_CW_ADD_VNAME('RF', '-_-_--__I__-', 0,0, myThid)
111 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('RF','description',
112 adcroft 1.1 & 'R coordinate of cell interface',myThid)
113 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('RF',
114 adcroft 1.1 & 'units', 'm', myThid)
115 edhill 1.16
116     C RL
117     CALL MNC_CW_ADD_VNAME('RL', '-_-_--__L__-', 0,0, myThid)
118     CALL MNC_CW_ADD_VATTR_TEXT('RL','description',
119     & 'R coordinate of lower interface',myThid)
120     CALL MNC_CW_ADD_VATTR_TEXT('RL',
121     & 'units', 'm', myThid)
122    
123     C RU
124     CALL MNC_CW_ADD_VNAME('RU', '-_-_--__U__-', 0,0, myThid)
125     CALL MNC_CW_ADD_VATTR_TEXT('RU','description',
126     & 'R coordinate of upper interface',myThid)
127     CALL MNC_CW_ADD_VATTR_TEXT('RU',
128     & 'units', 'm', myThid)
129 adcroft 1.1 C End define coordinates for all MNC files ----------------------------
130    
131    
132     C Create MNC definitions for DYNVARS.h variables
133 edhill 1.14 CALL MNC_CW_ADD_VNAME('T', '-_-_--__-__t', 0,0, myThid)
134     CALL MNC_CW_ADD_VATTR_TEXT('T',
135 adcroft 1.1 & 'long_name','iteration_count', myThid)
136    
137     CALL MNC_CW_ADD_VNAME('model_time', '-_-_--__-__t', 0,0, myThid)
138 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('model_time',
139 adcroft 1.1 & 'long_name','Model Time', myThid)
140 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('model_time','units','s', myThid)
141 adcroft 1.1
142     CALL MNC_CW_ADD_VNAME('U', 'U_xy_Hn__C__t', 4,5, myThid)
143 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('U','units','m/s', myThid)
144     CALL MNC_CW_ADD_VATTR_TEXT('U',
145 adcroft 1.1 & 'coordinates','XU YU RC iter', myThid)
146    
147     CALL MNC_CW_ADD_VNAME('V', 'V_xy_Hn__C__t', 4,5, myThid)
148 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('V','units','m/s', myThid)
149     CALL MNC_CW_ADD_VATTR_TEXT('V',
150 adcroft 1.1 & 'coordinates','XV YV RC iter', myThid)
151    
152 edhill 1.7 CALL MNC_CW_ADD_VNAME('Temp', 'Cen_xy_Hn__C__t', 4,5, myThid)
153     CALL MNC_CW_ADD_VATTR_TEXT('Temp','units','degC', myThid)
154     CALL MNC_CW_ADD_VATTR_TEXT('Temp','long_name',
155 adcroft 1.1 & 'potential_temperature', myThid)
156 edhill 1.7 CALL MNC_CW_ADD_VATTR_TEXT('Temp',
157 adcroft 1.1 & 'coordinates','XC YC RC iter', myThid)
158    
159     CALL MNC_CW_ADD_VNAME('S', 'Cen_xy_Hn__C__t', 4,5, myThid)
160 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('S','long_name',
161 adcroft 1.1 & 'salinity', myThid)
162 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('S',
163 adcroft 1.1 & 'coordinates','XC YC RC iter', myThid)
164    
165 jmc 1.2 CALL MNC_CW_ADD_VNAME('gUnm1', 'U_xy_Hn__C__t', 4,5, myThid)
166     CALL MNC_CW_ADD_VNAME('gVnm1', 'V_xy_Hn__C__t', 4,5, myThid)
167     CALL MNC_CW_ADD_VNAME('gTnm1', 'Cen_xy_Hn__C__t', 4,5, myThid)
168     CALL MNC_CW_ADD_VNAME('gSnm1', 'Cen_xy_Hn__C__t', 4,5, myThid)
169 adcroft 1.1
170     CALL MNC_CW_ADD_VNAME('Eta', 'Cen_xy_Hn__-__t', 3,4, myThid)
171 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('Eta','long_name',
172 adcroft 1.1 & 'free-surface_r-anomaly', myThid)
173 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('Eta','units','m', myThid)
174     CALL MNC_CW_ADD_VATTR_TEXT('Eta',
175 jmc 1.15 & 'coordinates','XC YC iter', myThid)
176 adcroft 1.1
177 jmc 1.2 CALL MNC_CW_ADD_VNAME('EtaH', 'Cen_xy_Hn__-__t', 3,4, myThid)
178 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('EtaH','long_name',
179 jmc 1.2 & 'column-thickness_r-anomaly', myThid)
180 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('EtaH','units','m', myThid)
181     CALL MNC_CW_ADD_VATTR_TEXT('EtaH',
182 jmc 1.15 & 'coordinates','XC YC iter', myThid)
183 jmc 1.3 CALL MNC_CW_ADD_VNAME('dEtaHdt', 'Cen_xy_Hn__-__t', 3,4, myThid)
184 adcroft 1.1
185     CALL MNC_CW_ADD_VNAME('W', 'Cen_xy_Hn__C__t', 4,5, myThid)
186 edhill 1.6 CALL MNC_CW_ADD_VATTR_TEXT('W','units','m/s', myThid)
187     CALL MNC_CW_ADD_VATTR_TEXT('W',
188 adcroft 1.1 & 'coordinates','XC YC RC iter', myThid)
189    
190 jmc 1.2 CALL MNC_CW_ADD_VNAME('phiHyd', 'Cen_xy_Hn__C__t', 4,5, myThid)
191 adcroft 1.1 CALL MNC_CW_ADD_VNAME('phiHydLow', 'Cen_xy_Hn__-__t', 3,4, myThid)
192     CALL MNC_CW_ADD_VNAME('phi_nh', 'Cen_xy_Hn__C__t', 4,5, myThid)
193     CALL MNC_CW_ADD_VNAME('gW', 'Cen_xy_Hn__C__t', 4,5, myThid)
194    
195     C Write coordinates to "state" file
196 edhill 1.13 C CALL MNC_CW_SET_UDIM('state', 0, myThid)
197     C CALL MNC_CW_RS_W('R','state',0,0,'XC',xC, myThid)
198     C CALL MNC_CW_RS_W('R','state',0,0,'YC',yC, myThid)
199     C CALL MNC_CW_RS_W('R','state',0,0,'XU',xG, myThid)
200     C CALL MNC_CW_RS_W('R','state',0,0,'YU',yC, myThid)
201     C CALL MNC_CW_RS_W('R','state',0,0,'XV',xC, myThid)
202     C CALL MNC_CW_RS_W('R','state',0,0,'YV',yG, myThid)
203     C CALL MNC_CW_RS_W('R','state',0,0,'XG',xG, myThid)
204     C CALL MNC_CW_RS_W('R','state',0,0,'YG',yG, myThid)
205     C CALL MNC_CW_RS_W('R','state',0,0,'RC',rC, myThid)
206     C CALL MNC_CW_RS_W('R','state',0,0,'RF',rF, myThid)
207 adcroft 1.1
208 edhill 1.9 C Define variables used in mom_vecinv
209     C CALL MNC_CW_ADD_VNAME('fV', 'Cen_xy_Hn__-__t', 0,0, myThid)
210     C CALL MNC_CW_ADD_VATTR_TEXT('','units','', myThid)
211     C CALL MNC_CW_ADD_VATTR_TEXT('','long_name',
212     C & 'potential_temperature', myThid)
213    
214 edhill 1.11 CALL MNC_CW_ADD_VNAME('fV', 'Cen_xy_Hn__C__t', 0,0, myThid)
215     CALL MNC_CW_ADD_VNAME('fU', 'Cen_xy_Hn__C__t', 0,0, myThid)
216     CALL MNC_CW_ADD_VNAME('zV', 'Cen_xy_Hn__C__t', 0,0, myThid)
217     CALL MNC_CW_ADD_VNAME('zU', 'Cen_xy_Hn__C__t', 0,0, myThid)
218     CALL MNC_CW_ADD_VNAME('KEx','Cen_xy_Hn__C__t', 0,0, myThid)
219     CALL MNC_CW_ADD_VNAME('KEy','Cen_xy_Hn__C__t', 0,0, myThid)
220     CALL MNC_CW_ADD_VNAME('Ds', 'Cen_xy_Hn__C__t', 0,0, myThid)
221     CALL MNC_CW_ADD_VNAME('Dt', 'Cen_xy_Hn__C__t', 0,0, myThid)
222     CALL MNC_CW_ADD_VNAME('Du', 'Cen_xy_Hn__C__t', 0,0, myThid)
223     CALL MNC_CW_ADD_VNAME('Dv', 'Cen_xy_Hn__C__t', 0,0, myThid)
224     CALL MNC_CW_ADD_VNAME('Z3', 'Cen_xy_Hn__C__t', 0,0, myThid)
225     CALL MNC_CW_ADD_VNAME('W3', 'Cen_xy_Hn__C__t', 0,0, myThid)
226     CALL MNC_CW_ADD_VNAME('KE', 'Cen_xy_Hn__C__t', 0,0, myThid)
227     CALL MNC_CW_ADD_VNAME('D', 'Cen_xy_Hn__C__t', 0,0, myThid)
228 edhill 1.9
229 heimbach 1.8 #ifdef ALLOW_AUTODIFF_MONITOR
230     CALL AUTODIFF_INI_MODEL_IO( myThid )
231     #endif
232    
233 adcroft 1.1 ENDIF
234     #endif
235    
236     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
237    
238     RETURN
239     END

  ViewVC Help
Powered by ViewVC 1.1.22