/[MITgcm]/MITgcm/pkg/ctrl/ctrl_check.F
ViewVC logotype

Diff of /MITgcm/pkg/ctrl/ctrl_check.F

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

revision 1.1 by heimbach, Tue Feb 5 20:23:58 2002 UTC revision 1.2 by heimbach, Mon Jun 23 22:29:05 2003 UTC
# Line 0  Line 1 
1    
2    #include "CTRL_CPPOPTIONS.h"
3    
4          SUBROUTINE CTRL_CHECK( myThid )
5    C     /==========================================================\
6    C     | SUBROUTINE CTRK_CHECK                                    |
7    C     | o Validate basic package setup and inter-package         |
8    C     | dependencies.                                            |
9    C     \==========================================================/
10          IMPLICIT NONE
11    
12    C     === Global variables ===
13    #include "SIZE.h"
14    #include "EEPARAMS.h"
15    #include "PARAMS.h"
16    
17    #include "ctrl.h"
18    
19    C     === Routine arguments ===
20    C     myThid -  Number of this instance
21          INTEGER myThid
22    
23    C     === Local variables ===
24    C     msgBuf      - Informational/error meesage buffer
25          CHARACTER*(MAX_LEN_MBUF) msgBuf
26    
27          WRITE(msgBuf,'(A)') 'CTRL_CHECK: ctrl package'
28          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
29         &     SQUEEZE_RIGHT , 1)
30    
31    C     KPP needs convection turned off (will be packaged later)
32    C     Can't have both atmos. state and flux field as control
33    
34    #ifdef ALLOW_TANGENTLINEAR_RUN
35          if ( yadmark .NE. 'g_' ) then
36             WRITE(msgBuf,'(A)')
37         &        'yadmark very likely wrong in data.ctrl for case '
38             CALL PRINT_ERROR( msgBuf , 1)
39             WRITE(msgBuf,'(A)')
40         &        'ALLOW_TANGENTLINEAR_RUN; should be g_ '
41             CALL PRINT_ERROR( msgBuf , 1)
42             STOP 'ABNORMAL END: S/R CTRL_CHECK'
43          end if
44    #endif
45    
46    #if (defined (ALLOW_HFLUX_CONTROL) && defined (ALLOW_ATEMP_CONTROL))
47          WRITE(msgBuf,'(A)')
48         &     'Can't have both ALLOW_HFLUX_CONTROL & ALLOW_ATEMP_CONTROL'
49          CALL PRINT_ERROR( msgBuf , 1)
50          STOP 'ABNORMAL END: S/R CTRL_CHECK'
51    #endif
52    
53    #if (defined (ALLOW_SFLUX_CONTROL) && defined (ALLOW_AQH_CONTROL))
54          WRITE(msgBuf,'(A)')
55         &     'Can't have both ALLOW_SFLUX_CONTROL & ALLOW_AQH_CONTROL'
56          CALL PRINT_ERROR( msgBuf , 1)
57          STOP 'ABNORMAL END: S/R CTRL_CHECK'
58    #endif
59    
60    #if (defined (ALLOW_USTRESS_CONTROL) && defined (ALLOW_UWIND_CONTROL))
61          WRITE(msgBuf,'(A)')
62         &     'Can't have both ALLOW_USTRESS_CONTROL & ALLOW_UWIND_CONTROL'
63          CALL PRINT_ERROR( msgBuf , 1)
64          STOP 'ABNORMAL END: S/R CTRL_CHECK'
65    #endif
66    
67    #if (defined (ALLOW_VSTRESS_CONTROL) && defined (ALLOW_VWIND_CONTROL))
68          WRITE(msgBuf,'(A)')
69         &     'Can't have both ALLOW_VSTRESS_CONTROL & ALLOW_VWIND_CONTROL'
70          CALL PRINT_ERROR( msgBuf , 1)
71          STOP 'ABNORMAL END: S/R CTRL_CHECK'
72    #endif
73    
74    #ifdef  ALLOW_ATEMP_CONTROL
75    #ifndef ALLOW_ATM_TEMP
76          WRITE(msgBuf,'(A)')
77         &     'ALLOW_ATEMP_CONTROL used without ALLOW_ATM_TEMP'
78          CALL PRINT_ERROR( msgBuf , 1)
79          STOP 'ABNORMAL END: S/R CTRL_CHECK'
80    #endif
81    #endif
82    
83    #ifdef  ALLOW_AQH_CONTROL
84    #ifndef ALLOW_ATM_TEMP
85          WRITE(msgBuf,'(A)')
86         &     'ALLOW_AQH_CONTROL used without ALLOW_ATM_TEMP'
87          CALL PRINT_ERROR( msgBuf , 1)
88          STOP 'ABNORMAL END: S/R CTRL_CHECK'
89    #endif
90    #endif
91    
92    #ifdef  ALLOW_UWIND_CONTROL
93    #ifndef ALLOW_ATM_WIND
94          WRITE(msgBuf,'(A)')
95         &     'ALLOW_UWIND_CONTROL used without ALLOW_ATM_WIND'
96          CALL PRINT_ERROR( msgBuf , 1)
97          STOP 'ABNORMAL END: S/R CTRL_CHECK'
98    #endif
99    #endif
100    
101    #ifdef  ALLOW_VWIND_CONTROL
102    #ifndef ALLOW_ATM_WIND
103          WRITE(msgBuf,'(A)')
104         &     'ALLOW_VWIND_CONTROL used without ALLOW_ATM_WIND'
105          CALL PRINT_ERROR( msgBuf , 1)
106          STOP 'ABNORMAL END: S/R CTRL_CHECK'
107    #endif
108    #endif
109    
110          return
111          end

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

  ViewVC Help
Powered by ViewVC 1.1.22