/[MITgcm]/MITgcm/pkg/obcs/obcs_check.F
ViewVC logotype

Annotation of /MITgcm/pkg/obcs/obcs_check.F

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


Revision 1.4 - (hide annotations) (download)
Wed Sep 22 21:31:35 2004 UTC (19 years, 8 months ago) by heimbach
Branch: MAIN
Changes since 1.3: +21 -1 lines
updating obcs

1 heimbach 1.4 C $Header: /u/gcmpack/MITgcm/pkg/obcs/obcs_check.F,v 1.3 2002/01/30 23:03:29 jmc Exp $
2 jmc 1.3 C $Name: $
3 adcroft 1.2
4     #include "OBCS_OPTIONS.h"
5    
6     SUBROUTINE OBCS_CHECK( myThid )
7     C /==========================================================\
8     C | SUBROUTINE OBCS_CHECK |
9     C | o Check dependances with other packages |
10     C |==========================================================|
11     C \==========================================================/
12     IMPLICIT NONE
13    
14     C === Global variables ===
15     #include "SIZE.h"
16     #include "EEPARAMS.h"
17 jmc 1.3 #include "PARAMS.h"
18 adcroft 1.2 #include "OBCS.h"
19    
20     C === Routine arguments ===
21     C myThid - Number of this instances
22     INTEGER myThid
23    
24     #ifdef ALLOW_OBCS
25    
26     C === Local variables ===
27     C msgBuf - Informational/error meesage buffer
28     CHARACTER*(MAX_LEN_MBUF) msgBuf
29    
30     WRITE(msgBuf,'(A)') 'OBCS_CHECK: #define ALLOW_OBCS'
31     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
32     & SQUEEZE_RIGHT,myThid)
33    
34     #ifdef ALLOW_ORLANSKI
35     WRITE(msgBuf,'(A)') 'OBCS_CHECK: #define ALLOW_ORLANSKI'
36     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
37     & SQUEEZE_RIGHT,myThid)
38     #else
39     IF (useOrlanskiNorth.OR.useOrlanskiSouth.OR.
40     & useOrlanskiEast.OR.useOrlanskiWest) THEN
41     WRITE(msgBuf,'(A)')
42     & 'OBCS_CHECK: ERROR: #undef OBCS_RADIATE_ORLANSKI and'
43     CALL PRINT_ERROR( msgBuf , 1)
44     WRITE(msgBuf,'(A)')
45     & 'OBCS_CHECK: ERROR: one of useOrlanski* logicals is true'
46     CALL PRINT_ERROR( msgBuf , 1)
47     STOP 'ABNORMAL END: S/R OBCS_CHECK'
48     ENDIF
49     #endif /* ALLOW_ORLANSKI */
50 jmc 1.3
51     IF (useOrlanskiNorth.OR.useOrlanskiSouth.OR.
52     & useOrlanskiEast.OR.useOrlanskiWest) THEN
53     IF (nonlinFreeSurf.GT.0) THEN
54     WRITE(msgBuf,'(A)')
55     & 'OBCS_CHECK: ERROR: useOrlanski* Rad OBC with'
56     CALL PRINT_ERROR( msgBuf , 1)
57     WRITE(msgBuf,'(A)')
58     & 'OBCS_CHECK: ERROR: nonlinFreeSurf not yet implemented'
59     CALL PRINT_ERROR( msgBuf , 1)
60     STOP 'ABNORMAL END: S/R OBCS_CHECK'
61     ENDIF
62     ENDIF
63 adcroft 1.2
64 heimbach 1.4 #ifdef ALLOW_OBCS_PRESCRIBE
65     # ifndef ALLOW_EXF
66     WRITE(msgBuf,'(A)')
67     & 'OBCS_CHECK: ERROR: ALLOW_OBCS_PRESCRIBE'
68     CALL PRINT_ERROR( msgBuf , 1)
69     WRITE(msgBuf,'(A)')
70     & 'OBCS_CHECK: needs to ALLOW_EXF, ALLOW_CAL'
71     STOP 'ABNORMAL END: S/R OBCS_CHECK'
72     # endif
73     #else
74     IF (useOBCSprescribe) THEN
75     WRITE(msgBuf,'(A)')
76     & 'OBCS_CHECK: ERROR: useOBCSprescribe = .TRUE. for'
77     CALL PRINT_ERROR( msgBuf , 1)
78     WRITE(msgBuf,'(A)')
79     & 'OBCS_CHECK: undef ALLOW_OBCS_PRESCRIBE
80     STOP 'ABNORMAL END: S/R OBCS_CHECK'
81     ENDIF
82     #endif
83    
84 adcroft 1.2 WRITE(msgBuf,'(A)') 'OBCS_CHECK: OK'
85     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
86     & SQUEEZE_RIGHT,myThid)
87    
88     #endif /* ALLOW_OBCS */
89     return
90     end

  ViewVC Help
Powered by ViewVC 1.1.22