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

Diff of /MITgcm/model/src/config_check.F

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

revision 1.3 by jmc, Sun Feb 10 00:35:30 2002 UTC revision 1.4 by jmc, Tue Dec 10 02:55:47 2002 UTC
# Line 85  C-  check that CPP option is "defined" w Line 85  C-  check that CPP option is "defined" w
85          STOP 'ABNORMAL END: S/R CONFIG_CHECK'          STOP 'ABNORMAL END: S/R CONFIG_CHECK'
86  #endif  #endif
87    
88    C     o If pLoadFile is set, then we should make sure the corresponing
89    C       code is being compiled
90    #ifndef ATMOSPHERIC_LOADING
91          IF (pLoadFile.NE.' ') THEN
92            WRITE(msgBuf,'(A)')
93         &  'CONFIG_CHECK: pLoadFile is set but you have not'
94            CALL PRINT_ERROR( msgBuf , myThid)
95            WRITE(msgBuf,'(A)')
96         &  'compiled the model with the pressure loading code.'
97            CALL PRINT_ERROR( msgBuf , myThid)
98            WRITE(msgBuf,'(A,A)')
99         &  'Re-compile with:  #define ATMOSPHERIC_LOADING',
100         &  '              or  -DATMOSPHERIC_LOADING'
101            CALL PRINT_ERROR( msgBuf , myThid)
102            STOP 'ABNORMAL END: S/R CONFIG_CHECK'
103          ENDIF
104    #endif
105    
106    C     o If taveFreq is finite, then we must make sure the diagnostics
107    C       code is being compiled
108    #ifndef ALLOW_TIMEAVE
109          IF (taveFreq.NE.0.) THEN
110            WRITE(msgBuf,'(A)')
111         &  'CONFIG_CHECK: taveFreq <> 0  but you have'
112            CALL PRINT_ERROR( msgBuf , 1)
113            WRITE(msgBuf,'(A)')
114         &  'not compiled the model with the diagnostics routines.'
115            CALL PRINT_ERROR( msgBuf , 1)
116            WRITE(msgBuf,'(A,A)')
117         &  'Re-compile with:  #define ALLOW_TIMEAVE',
118         &  '              or  -DALLOW_TIMEAVE'
119            CALL PRINT_ERROR( msgBuf , 1)
120            STOP 'ABNORMAL END: S/R CONFIG_CHECK'
121          ENDIF
122    #endif
123    
124  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
125    
126  C-  check parameter consistency :  C-  check parameter consistency :
# Line 159  c     ENDIF Line 195  c     ENDIF
195          STOP 'ABNORMAL END: S/R CONFIG_CHECK'          STOP 'ABNORMAL END: S/R CONFIG_CHECK'
196        ENDIF        ENDIF
197    
198        IF (nonlinFreeSurf.NE.0 .AND. deltaTmom.NE.deltaTtracer) THEN        IF (nonlinFreeSurf.NE.0.AND.deltaTfreesurf.NE.deltaTtracer) THEN
199          WRITE(msgBuf,'(A)')          WRITE(msgBuf,'(A)')
200       &   'CONFIG_CHECK: WARNING: nonlinFreeSurf might cause'       &   'CONFIG_CHECK: WARNING: nonlinFreeSurf might cause problems'
201          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,          CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
202       &                    SQUEEZE_RIGHT , 1)                             &                    SQUEEZE_RIGHT , myThid)                      
203          WRITE(msgBuf,'(A)')          WRITE(msgBuf,'(A)')
204       &   'CONFIG_CHECK: problems with different time-steps'       &   'CONFIG_CHECK: with different FreeSurf & Tracer time-steps'
205          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,          CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
206       &                    SQUEEZE_RIGHT , 1)                             &                    SQUEEZE_RIGHT , myThid)                      
207        ENDIF        ENDIF
208    
209        IF (useRealFreshWaterFlux .AND. exactConserv        IF (useRealFreshWaterFlux .AND. exactConserv
# Line 181  c     ENDIF Line 217  c     ENDIF
217          STOP 'ABNORMAL END: S/R CONFIG_CHECK'          STOP 'ABNORMAL END: S/R CONFIG_CHECK'
218        ENDIF        ENDIF
219    
220  #ifndef NONLIN_FRSURF  #ifdef NONLIN_FRSURF
221          IF (useRealFreshWaterFlux .AND. .NOT.exactConserv
222         &            .AND. buoyancyRelation.EQ.'OCEANICP' ) THEN
223            WRITE(msgBuf,'(A)')
224         &   'CONFIG_CHECK: RealFreshWaterFlux with OCEANICP'
225            CALL PRINT_ERROR( msgBuf , myThid)
226            WRITE(msgBuf,'(A)')
227         &   'CONFIG_CHECK: requires exactConserv=T'
228            CALL PRINT_ERROR( msgBuf , myThid)
229            STOP 'ABNORMAL END: S/R CONFIG_CHECK'
230          ENDIF
231    #else
232        IF (useRealFreshWaterFlux .AND. exactConserv        IF (useRealFreshWaterFlux .AND. exactConserv
233       &            .AND. implicSurfPress.NE.1. _d 0 ) THEN       &            .AND. implicSurfPress.NE.1. _d 0 ) THEN
234          WRITE(msgBuf,'(A)')          WRITE(msgBuf,'(A)')
# Line 192  c     ENDIF Line 239  c     ENDIF
239          CALL PRINT_ERROR( msgBuf , myThid)          CALL PRINT_ERROR( msgBuf , myThid)
240          STOP 'ABNORMAL END: S/R CONFIG_CHECK'          STOP 'ABNORMAL END: S/R CONFIG_CHECK'
241        ENDIF        ENDIF
242  #endif  
243          IF (useRealFreshWaterFlux
244         &            .AND. buoyancyRelation.EQ.'OCEANICP' ) THEN
245            WRITE(msgBuf,'(A)')
246         &   'CONFIG_CHECK: E-P effects on wVel are not included'
247            CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
248         &                    SQUEEZE_RIGHT , myThid)                      
249            WRITE(msgBuf,'(A)')
250         &   'CONFIG_CHECK: ==> use #define NONLIN_FRSURF to fix it'
251            CALL PRINT_MESSAGE( msgBuf, errorMessageUnit,
252         &                    SQUEEZE_RIGHT , myThid)                      
253          ENDIF
254    #endif /* NONLIN_FRSURF */
255    
256        WRITE(msgBuf,'(A)') 'CONFIG_CHECK: OK'        WRITE(msgBuf,'(A)') 'CONFIG_CHECK: OK'
257        CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,        CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22