/[MITgcm]/MITgcm/pkg/cal/cal_printerror.F
ViewVC logotype

Annotation of /MITgcm/pkg/cal/cal_printerror.F

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


Revision 1.5 - (hide annotations) (download)
Thu Oct 26 01:22:00 2006 UTC (17 years, 7 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62c, checkpoint59, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint58y_post, checkpoint58t_post, checkpoint63g, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint58w_post, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint58r_post, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint62b, checkpoint58v_post, checkpoint61f, checkpoint58x_post, checkpoint61n, checkpoint59j, checkpoint61q, checkpoint61e, checkpoint58u_post, checkpoint58s_post, checkpoint61g, checkpoint61d, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.4: +127 -51 lines
Change error messaging to std. err/out.

1 heimbach 1.5 C $Header: /u/gcmpack/MITgcm/pkg/cal/cal_printerror.F,v 1.4 2004/04/19 23:25:15 mlosch Exp $
2 edhill 1.2 C $Name: $
3 heimbach 1.1
4 edhill 1.2 #include "CAL_OPTIONS.h"
5 heimbach 1.1
6     subroutine cal_PrintError(
7     I calerr,
8     I mythid
9     & )
10    
11     c ==================================================================
12     c SUBROUTINE cal_PrintError
13     c ==================================================================
14     c
15 heimbach 1.3 c Purpose: Use the MITgcmuvs print routines to document errors that
16 heimbach 1.1 c occured during the execution of the calendar tool.
17     c
18     c o Calling this routine allows to print out an error message for
19     c several errors that might occur.
20     c
21     c The error codes for the calendar tool are specified by a four
22     c digit integer:
23     c RRCC
24     c
25     c The RR digits identify the routine that detected the error.
26     c The CC digits identify the specific error in the routine that
27     c detected the error.
28     c
29     c RR translates to routines in the following way:
30     c
31     c cal_Init 0
32     c cal_Set 1
33     c cal_GetDate 2
34     c cal_FullDate 3
35     c cal_IsLeap 4
36     c cal_TimePassed 5
37     c cal_AddTime 6
38     c cal_TimeInterval 7
39     c cal_SubDates 8
40     c cal_ConvDate 9
41     c cal_ToSeconds 10
42     c cal_StepsPerDay 11
43     c cal_DaysPerMonth 12
44     c cal_MonthsPerYear 13
45     c cal_IntYears 14
46     c cal_IntMonths 15
47     c cal_IntDays 16
48     c cal_nStepDay 17
49     c cal_CheckDate 18
50     c cal_PrintError 19
51     c cal_PrintDate 20
52     c cal_NumInts 25
53     c
54     c
55     c started: Christian Eckert eckert@mit.edu 30-Jun-1999
56     c
57     c changed: Christian Eckert eckert@mit.edu 29-Dec-1999
58     c
59     c Christian Eckert eckert@mit.edu 10-Jan-2000
60     c
61     c - Corrected the print statement for error code 104.
62     c It contained more than 72 characters in one line.
63     c
64     c Christian Eckert eckert@mit.edu 03-Feb-2000
65     c
66     c - Introduced new routine and function names, cal_<NAME>,
67     c for verion 0.1.3.
68     c
69     c Christian Eckert eckert@mit.edu 24-Feb-2000
70     c
71     c - Included cal_NumInts error code.
72     c
73     c ==================================================================
74     c SUBROUTINE cal_PrintError
75     c ==================================================================
76    
77     implicit none
78    
79     c == global variables ==
80    
81     #include "EEPARAMS.h"
82 heimbach 1.5 #include "SIZE.h"
83     #include "PARAMS.h"
84 heimbach 1.1
85     c == routine arguments ==
86    
87     c mythid - thread number for this instance of the routine.
88     c calerr - error code
89    
90     integer mythid
91     integer calerr
92    
93     c == local variables ==
94    
95     integer nroutine
96     integer nerrcode
97     logical missingerrcode
98 heimbach 1.5 CHARACTER*(MAX_LEN_MBUF) msgBuf
99 heimbach 1.1
100     c == end of interface ==
101    
102     nerrcode = mod(calerr,100)
103     nroutine = (calerr - nerrcode)/100
104     missingerrcode = .false.
105    
106     if (nroutine .eq. 0) then
107     c Error in cal_Init
108    
109     if (nerrcode .eq. 1) then
110 heimbach 1.5 WRITE(msgBuf,'(A)')
111 heimbach 1.1 & ' cal_Init: Unable to open calendar parameter file'
112 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
113     CALL PRINT_ERROR( msgBuf , 1)
114     WRITE(msgBuf,'(A)')
115 heimbach 1.1 & ' file "data.calendar".'
116 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
117     CALL PRINT_ERROR( msgBuf , 1)
118 heimbach 1.1 endif
119    
120     else if (nroutine .eq. 1) then
121     c Error in cal_Set
122    
123     if (nerrcode .eq. 1) then
124 heimbach 1.5 WRITE(msgBuf,'(A)')
125 heimbach 1.1 & ' cal_Set: No appropriate calendar has been specified.'
126 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
127     CALL PRINT_ERROR( msgBuf , 1)
128 heimbach 1.1 else if (nerrcode .eq. 2) then
129 heimbach 1.5 WRITE(msgBuf,'(A)')
130 heimbach 1.1 & ' cal_Set: The time step specified is not valid.'
131 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
132     CALL PRINT_ERROR( msgBuf , 1)
133 heimbach 1.1 else if (nerrcode .eq. 3) then
134 heimbach 1.5 WRITE(msgBuf,'(A)')
135 heimbach 1.1 & ' cal_Set: The time step is less than a second.'
136 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
137     CALL PRINT_ERROR( msgBuf , 1)
138 heimbach 1.1 else if (nerrcode .eq. 4) then
139 heimbach 1.5 WRITE(msgBuf,'(A)')
140     & ' cal_Set: The time step contains fractions of a second.'
141     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
142     CALL PRINT_ERROR( msgBuf , 1)
143 heimbach 1.1 else if (nerrcode .eq. 5) then
144 heimbach 1.5 WRITE(msgBuf,'(A)')
145 heimbach 1.1 & ' cal_Set: Less than one time step per calendar day.'
146 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
147     CALL PRINT_ERROR( msgBuf , 1)
148 heimbach 1.1 else if (nerrcode .eq. 6) then
149 heimbach 1.5 WRITE(msgBuf,'(A)')
150 heimbach 1.1 & ' cal_Set: The specifications are incomplete. Please'
151 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
152     CALL PRINT_ERROR( msgBuf , 1)
153     WRITE(msgBuf,'(A)')
154 heimbach 1.1 & ' refer to the documentation.'
155 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
156     CALL PRINT_ERROR( msgBuf , 1)
157 heimbach 1.1 else if (nerrcode .eq. 7) then
158 heimbach 1.5 WRITE(msgBuf,'(A)')
159 heimbach 1.1 & ' cal_Set: The final date of integration is before its'
160 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
161     CALL PRINT_ERROR( msgBuf , 1)
162     WRITE(msgBuf,'(A)')
163 heimbach 1.1 & ' start date.'
164 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
165     CALL PRINT_ERROR( msgBuf , 1)
166 heimbach 1.1 else if (nerrcode .eq. 10) then
167 heimbach 1.5 WRITE(msgBuf,'(A)')
168 heimbach 1.1 & ' cal_Set: The Julian Calendar is not implemented yet.'
169 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
170     CALL PRINT_ERROR( msgBuf , 1)
171 heimbach 1.1 else if (nerrcode .eq. 11) then
172 heimbach 1.5 WRITE(msgBuf,'(A)')
173 heimbach 1.1 & ' cal_Set: The No Calendar case is not implemented yet.'
174 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
175     CALL PRINT_ERROR( msgBuf , 1)
176 heimbach 1.1 else if ( nerrcode .eq. 12) then
177 heimbach 1.5 WRITE(msgBuf,'(A)')
178 heimbach 1.1 & ' cal_Set: modelstart .ne. startTime ... please check.'
179 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
180     CALL PRINT_ERROR( msgBuf , 1)
181 heimbach 1.1 else if ( nerrcode .eq. 13 ) then
182 heimbach 1.5 WRITE(msgBuf,'(A)')
183 heimbach 1.1 & ' cal_Set: modelend .ne. endTime ... please check.'
184 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
185     CALL PRINT_ERROR( msgBuf , 1)
186 heimbach 1.1 else if ( nerrcode .eq. 14 ) then
187 heimbach 1.5 WRITE(msgBuf,'(A)')
188 heimbach 1.1 & ' cal_Set: modelstep .ne. deltaTclock ... please check.'
189 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
190     CALL PRINT_ERROR( msgBuf , 1)
191 heimbach 1.1 else if ( nerrcode .eq. 15 ) then
192 heimbach 1.5 WRITE(msgBuf,'(A)')
193 heimbach 1.1 & ' cal_Set: modeliter0 .ne. nIter0 ... please check.'
194     else if ( nerrcode .eq. 16 ) then
195 heimbach 1.5 WRITE(msgBuf,'(A)')
196 heimbach 1.1 & ' cal_Set: modeliterend .ne. nEndIter ... please check.'
197 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
198     CALL PRINT_ERROR( msgBuf , 1)
199 heimbach 1.1 else if ( nerrcode .eq. 17 ) then
200 heimbach 1.5 WRITE(msgBuf,'(A)')
201     & ' cal_Set: modelintsteps .ne. nTimeSteps'
202     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
203     CALL PRINT_ERROR( msgBuf , 1)
204 heimbach 1.1 else
205     missingerrcode = .true.
206     endif
207    
208     else if (nroutine .eq. 2) then
209     c Error in cal_GetDate
210    
211     missingerrcode = .true.
212    
213     else if (nroutine .eq. 3) then
214     c Error in cal_FullDate
215    
216     missingerrcode = .true.
217    
218     else if (nroutine .eq. 4) then
219     c Error in cal_IsLeap
220    
221     missingerrcode = .true.
222    
223     else if (nroutine .eq. 5) then
224     c Error in cal_TimePassed
225    
226     if (nerrcode .eq. 1) then
227 heimbach 1.5 WRITE(msgBuf,'(A)')
228     & 'cal_TimePassed: cal and timeinterval cannot be compared'
229     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
230     CALL PRINT_ERROR( msgBuf , 1)
231 heimbach 1.1 else
232     missingerrcode = .true.
233     endif
234    
235     else if (nroutine .eq. 6) then
236     c Error in cal_AddTime
237    
238     if (nerrcode .eq. 1) then
239 heimbach 1.5 WRITE(msgBuf,'(A)')
240 heimbach 1.1 & ' cal_AddTime: not a valid time interval.'
241 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
242     CALL PRINT_ERROR( msgBuf , 1)
243 heimbach 1.1 else
244     missingerrcode = .true.
245     endif
246    
247     else if (nroutine .eq. 7) then
248     c Error in cal_TimeInterval
249    
250     if (nerrcode .eq. 1) then
251 heimbach 1.5 WRITE(msgBuf,'(A)')
252 heimbach 1.1 & ' cal_TimeInterval: not a valid time unit.'
253 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
254     CALL PRINT_ERROR( msgBuf , 1)
255 heimbach 1.1 else
256     missingerrcode = .true.
257     endif
258    
259     else if (nroutine .eq. 8) then
260     c Error in cal_SubDates
261    
262     if (nerrcode .eq. 1) then
263 heimbach 1.5 WRITE(msgBuf,'(A)')
264 heimbach 1.1 & ' cal_SubDates: Not a valid combination of calendar dates'
265 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
266     CALL PRINT_ERROR( msgBuf , 1)
267     WRITE(msgBuf,'(A)')
268 heimbach 1.1 & ' or time intervals.'
269 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
270     CALL PRINT_ERROR( msgBuf , 1)
271 heimbach 1.1 else
272     missingerrcode = .true.
273     endif
274    
275     else if (nroutine .eq. 9) then
276     c Error in cal_ConvDate
277    
278     if (nerrcode .eq. 1) then
279 heimbach 1.5 WRITE(msgBuf,'(A)')
280 heimbach 1.1 & ' cal_ConvDate: date specification has mixed signs.'
281 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
282     CALL PRINT_ERROR( msgBuf , 1)
283 heimbach 1.1 else
284     missingerrcode = .true.
285     endif
286    
287     else if (nroutine .eq. 10) then
288     c Error in cal_ToSeconds
289    
290     if (nerrcode .eq. 1) then
291 heimbach 1.5 WRITE(msgBuf,'(A)')
292 heimbach 1.1 & ' cal_ToSeconds: input not a time interval array.'
293 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
294     CALL PRINT_ERROR( msgBuf , 1)
295 heimbach 1.1 else
296     missingerrcode = .true.
297     endif
298    
299     else if (nroutine .eq. 11) then
300     c Error in cal_StepsPerDay
301    
302     if (nerrcode .eq. 1) then
303 heimbach 1.5 WRITE(msgBuf,'(A)')
304 heimbach 1.1 & ' cal_StepsPerDay: nothing else to do.'
305 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
306     CALL PRINT_ERROR( msgBuf , 1)
307 heimbach 1.1 else
308     missingerrcode = .true.
309     endif
310    
311     else if (nroutine .eq. 12) then
312     c Error in cal_DaysPerMonth
313    
314     if (nerrcode .eq. 1) then
315 heimbach 1.5 WRITE(msgBuf,'(A)')
316 heimbach 1.1 & ' cal_DaysPerMonth: current year after final year.'
317 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
318     CALL PRINT_ERROR( msgBuf , 1)
319 heimbach 1.1 else
320     missingerrcode = .true.
321     endif
322    
323     else if (nroutine .eq. 13) then
324     c Error in cal_MonthsPerYear
325    
326     missingerrcode = .true.
327    
328     else if (nroutine .eq. 14) then
329     c Error in cal_IntYears
330    
331     missingerrcode = .true.
332    
333     else if (nroutine .eq. 15) then
334     c Error in cal_IntMonths
335    
336     missingerrcode = .true.
337    
338     else if (nroutine .eq. 16) then
339     c Error in cal_IntDays
340    
341     missingerrcode = .true.
342    
343     else if (nroutine .eq. 17) then
344     c Error in cal_nStepDay
345    
346     missingerrcode = .true.
347    
348     else if (nroutine .eq. 18) then
349     c Error in cal_CheckDate
350    
351     if (nerrcode .eq. 0) then
352 heimbach 1.5 WRITE(msgBuf,'(A)')
353 heimbach 1.1 & ' cal_CheckDate: A valid date specification!'
354 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
355     CALL PRINT_ERROR( msgBuf , 1)
356     WRITE(msgBuf,'(A)')
357 heimbach 1.1 & ' --> This only means that the format is ok!'
358 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
359     CALL PRINT_ERROR( msgBuf , 1)
360 heimbach 1.1 else if (nerrcode .eq. 1) then
361 heimbach 1.5 WRITE(msgBuf,'(A)')
362 heimbach 1.1 & ' cal_CheckDate: Last component of array not valid!'
363 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
364     CALL PRINT_ERROR( msgBuf , 1)
365 heimbach 1.1 else if (nerrcode .eq. 2) then
366 heimbach 1.5 WRITE(msgBuf,'(A)')
367     & ' cal_CheckDate: Third component of interval array not 0'
368     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
369     CALL PRINT_ERROR( msgBuf , 1)
370 heimbach 1.1 else if (nerrcode .eq. 3) then
371 heimbach 1.5 WRITE(msgBuf,'(A)')
372 heimbach 1.1 & ' cal_CheckDate: Signs of first two components unequal!'
373 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
374     CALL PRINT_ERROR( msgBuf , 1)
375 heimbach 1.1 else if (nerrcode .eq. 4) then
376 heimbach 1.5 WRITE(msgBuf,'(A)')
377 heimbach 1.1 & ' cal_CheckDate: Second component not in hhmmss format!'
378 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
379     CALL PRINT_ERROR( msgBuf , 1)
380 heimbach 1.1 else if (nerrcode .eq. 5) then
381 heimbach 1.5 WRITE(msgBuf,'(A)')
382 heimbach 1.1 & ' cal_CheckDate: Weekday indentifier not correct!'
383 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
384     CALL PRINT_ERROR( msgBuf , 1)
385 heimbach 1.1 else if (nerrcode .eq. 6) then
386 heimbach 1.5 WRITE(msgBuf,'(A)')
387 heimbach 1.1 & ' cal_CheckDate: Leap year identifier not correct!'
388 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
389     CALL PRINT_ERROR( msgBuf , 1)
390 heimbach 1.1 else if (nerrcode .eq. 7) then
391 heimbach 1.5 WRITE(msgBuf,'(A)')
392     & 'cal_CheckDate: Calendar date before predef. reference date'
393     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
394     CALL PRINT_ERROR( msgBuf , 1)
395 heimbach 1.1 else if (nerrcode .eq. 8) then
396 heimbach 1.5 WRITE(msgBuf,'(A)')
397 heimbach 1.1 & ' cal_CheckDate: First component not in yymmdd format!'
398 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
399     CALL PRINT_ERROR( msgBuf , 1)
400 heimbach 1.1 else
401     missingerrcode = .true.
402     endif
403    
404     else if (nroutine .eq. 19) then
405     c Error in cal_PrintError
406    
407     missingerrcode = .true.
408    
409     else if (nroutine .eq. 20) then
410     c Error in cal_PrintDate
411    
412     if (nerrcode .eq. 1) then
413 heimbach 1.5 WRITE(msgBuf,'(A)')
414 heimbach 1.1 & ' cal_PrintDate: date not a legal calendar array.'
415 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
416     CALL PRINT_ERROR( msgBuf , 1)
417 heimbach 1.1 else
418     missingerrcode = .true.
419     endif
420    
421     else if (nroutine .eq. 21) then
422     c Error in cal_PrintError
423    
424     missingerrcode = .true.
425    
426     else if (nroutine .eq. 25) then
427     c Error in cal_NumInts
428    
429     if (nerrcode .eq. 1) then
430 heimbach 1.5 WRITE(msgBuf,'(A)')
431 heimbach 1.1 & ' cal_NumInts: Expected a time interval as third argument.'
432 heimbach 1.5 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
433     CALL PRINT_ERROR( msgBuf , 1)
434 heimbach 1.1 else
435     missingerrcode = .true.
436     endif
437    
438     else
439     missingerrcode = .true.
440     endif
441    
442     if (missingerrcode) then
443     print*,' cal_PrintError: routine called by an undefined'
444     print*,' error code.'
445     print*,' cal_PrintError: error code = ',calerr
446     stop ' stopped in cal_PrintError.'
447     endif
448    
449     return
450     end
451    

  ViewVC Help
Powered by ViewVC 1.1.22