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

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

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


Revision 1.6 - (show annotations) (download)
Fri Sep 24 12:32:09 2004 UTC (19 years, 8 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint57m_post, checkpoint57g_pre, checkpoint57s_post, checkpoint57b_post, checkpoint57g_post, checkpoint56b_post, checkpoint57r_post, checkpoint57d_post, checkpoint57i_post, checkpoint57, checkpoint56, checkpoint57n_post, checkpoint55i_post, checkpoint57l_post, checkpoint57t_post, checkpoint57f_post, checkpoint57a_post, checkpoint57h_pre, checkpoint57h_post, checkpoint55g_post, checkpoint57c_post, checkpoint55d_post, checkpoint55d_pre, checkpoint57c_pre, checkpoint55j_post, checkpoint55h_post, checkpoint57e_post, checkpoint55f_post, checkpoint57p_post, checkpoint57q_post, eckpoint57e_pre, checkpoint56a_post, checkpoint57h_done, checkpoint57j_post, checkpoint57f_pre, checkpoint56c_post, checkpoint57a_pre, checkpoint57o_post, checkpoint57k_post, checkpoint55e_post
Changes since 1.5: +2 -11 lines
o initial check-in of alternative to reading open boundary values
  with EXF, for those who like the old external_fields_load
o works for me, gives the same results as with EXF, but use at own risk (:

1 C $Header: /u/gcmpack/MITgcm/pkg/obcs/obcs_check.F,v 1.5 2004/09/23 01:28:31 jmc Exp $
2 C $Name: $
3
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 #include "PARAMS.h"
18 #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
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
64 #ifndef ALLOW_OBCS_PRESCRIBE
65 IF (useOBCSprescribe) THEN
66 WRITE(msgBuf,'(A)')
67 & 'OBCS_CHECK: ERROR: useOBCSprescribe = .TRUE. for'
68 CALL PRINT_ERROR( msgBuf , 1)
69 WRITE(msgBuf,'(A)')
70 & 'OBCS_CHECK: undef ALLOW_OBCS_PRESCRIBE'
71 STOP 'ABNORMAL END: S/R OBCS_CHECK'
72 ENDIF
73 #endif
74
75 WRITE(msgBuf,'(A)') 'OBCS_CHECK: OK'
76 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
77 & SQUEEZE_RIGHT,myThid)
78
79 #endif /* ALLOW_OBCS */
80 return
81 end

  ViewVC Help
Powered by ViewVC 1.1.22