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

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

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


Revision 1.4 - (show annotations) (download)
Mon Sep 29 19:24:31 2003 UTC (21 years ago) by edhill
Branch: MAIN
CVS Tags: checkpoint51k_post, checkpoint51l_post, checkpoint51f_post, checkpoint51j_post, checkpoint51l_pre, checkpoint51h_pre, checkpoint51i_post, checkpoint51i_pre, checkpoint51g_post, checkpoint51m_post
Branch point for: tg2-branch
Changes since 1.3: +1 -1 lines
 o convert all comments with single quotes (such as "can't", "don't", etc.)
     to unabbreviated form (eg. "do not") since these unmatched quotes
     tend to break the Fortran parser used to generate the HTML-ified
     code browser (see: http://mitgcm.org/dev_docs/code_reference/)

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 not 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 & 'Cannot 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 & 'Cannot 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 & 'Cannot 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 & 'Cannot 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