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

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

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


Revision 1.2 - (hide annotations) (download)
Mon Jun 23 22:29:05 2003 UTC (20 years, 11 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint51, checkpoint51d_post, checkpoint51b_pre, checkpoint51b_post, checkpoint51c_post, checkpoint50i_post, checkpoint51a_post
Changes since 1.1: +111 -0 lines
Preparing next differentiable checkpoint and sync
of MAIN vs. ecco-branch

1 heimbach 1.2
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

  ViewVC Help
Powered by ViewVC 1.1.22