/[MITgcm]/MITgcm/pkg/ggl90/ggl90_check.F
ViewVC logotype

Contents of /MITgcm/pkg/ggl90/ggl90_check.F

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


Revision 1.2 - (show annotations) (download)
Thu Sep 23 12:02:54 2004 UTC (19 years, 9 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint58l_post, checkpoint57t_post, checkpoint57o_post, checkpoint58e_post, checkpoint57v_post, checkpoint58u_post, checkpoint58w_post, checkpoint57m_post, checkpoint55c_post, checkpoint57s_post, checkpoint57k_post, checkpoint55d_pre, checkpoint57d_post, checkpoint57g_post, checkpoint60, checkpoint61, checkpoint57b_post, checkpoint57c_pre, checkpoint58r_post, checkpoint55j_post, checkpoint56b_post, checkpoint57i_post, checkpoint57y_post, checkpoint57e_post, checkpoint55h_post, checkpoint58n_post, checkpoint58x_post, checkpoint57g_pre, checkpoint58t_post, checkpoint58h_post, checkpoint56c_post, checkpoint57y_pre, checkpoint57f_pre, checkpoint57a_post, checkpoint58q_post, checkpoint59q, checkpoint59p, checkpoint55g_post, checkpoint59r, checkpoint58j_post, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint55f_post, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint57r_post, checkpoint59, checkpoint58, checkpoint57a_pre, checkpoint55i_post, checkpoint57, checkpoint56, eckpoint57e_pre, checkpoint57h_done, checkpoint58f_post, checkpoint57x_post, checkpoint57n_post, checkpoint58d_post, checkpoint58c_post, checkpoint57w_post, checkpoint57p_post, checkpint57u_post, checkpoint57f_post, checkpoint58a_post, checkpoint58i_post, checkpoint57q_post, checkpoint58g_post, checkpoint58o_post, checkpoint57z_post, checkpoint57c_post, checkpoint58y_post, checkpoint55e_post, checkpoint58k_post, checkpoint58v_post, checkpoint58s_post, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint58p_post, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint57j_post, checkpoint61x, checkpoint58b_post, checkpoint57h_pre, checkpoint58m_post, checkpoint57l_post, checkpoint57h_post, checkpoint56a_post, checkpoint55d_post
Changes since 1.1: +9 -1 lines
o include a check for buoyancyRelation = 'OCEANIC'. GGL90, MY82, OPPS, PP81
  (and KPP) will not work for pressure coordinates, yet.

1 C $Header: /u/gcmpack/MITgcm/pkg/ggl90/ggl90_check.F,v 1.1 2004/09/16 11:27:18 mlosch Exp $
2 C $Name: $
3 #include "GGL90_OPTIONS.h"
4
5 SUBROUTINE GGL90_CHECK( myThid )
6 C /==========================================================\
7 C | SUBROUTINE GGL90_CHECK |
8 C | o Validate basic package setup and inter-package |
9 C | dependencies. |
10 C \==========================================================/
11 IMPLICIT NONE
12
13 C === Global variables ===
14 #include "SIZE.h"
15 #include "EEPARAMS.h"
16 #include "PARAMS.h"
17
18 C === Routine arguments ===
19 C myThid - Number of this instance of GGL90_CHECK
20 INTEGER myThid
21
22 #ifdef ALLOW_GGL90
23
24 C === Local variables ===
25 C msgBuf - Informational/error meesage buffer
26 CHARACTER*(MAX_LEN_MBUF) msgBuf
27
28 WRITE(msgBuf,'(A)') 'GGL90_CHECK: #define ALLOW_GGL90'
29 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
30 & SQUEEZE_RIGHT , 1)
31
32 C So far, GGL90 works only with oceanic z-coordinates
33 IF ( buoyancyRelation .NE. 'OCEANIC' ) THEN
34 WRITE(msgBuf,'(A)')
35 & 'GGL90 works only with buoyancyRelation = ''OCEANIC'''
36 CALL PRINT_ERROR( msgBuf , 1)
37 STOP 'ABNORMAL END: S/R GGL90_CHECK'
38 ENDIF
39
40 C GGL90 needs convection turned off (will be packaged later)
41 IF (cAdjFreq.NE.0. .OR.
42 & ivdc_kappa.NE.0. ) THEN
43 WRITE(msgBuf,'(A)') 'Some form of convection has been enabled'
44 CALL PRINT_ERROR( msgBuf , 1)
45 STOP 'ABNORMAL END: S/R GGL90_CHECK'
46 ENDIF
47
48 IF ( useKPP ) THEN
49 WRITE(msgBuf,'(A)')
50 & 'GGL90 and KPP cannot be turned on at the same time'
51 CALL PRINT_ERROR( msgBuf , 1)
52 STOP 'ABNORMAL END: S/R GGL90_CHECK'
53 ENDIF
54
55 IF ( usePP81 ) THEN
56 WRITE(msgBuf,'(A)')
57 & 'GGL90 and PP81 cannot be turned on at the same time'
58 CALL PRINT_ERROR( msgBuf , 1)
59 STOP 'ABNORMAL END: S/R GGL90_CHECK'
60 ENDIF
61
62 IF ( useMY82 ) THEN
63 WRITE(msgBuf,'(A)')
64 & 'GGL90 and MY82 cannot be turned on at the same time'
65 CALL PRINT_ERROR( msgBuf , 1)
66 STOP 'ABNORMAL END: S/R GGL90_CHECK'
67 ENDIF
68
69 C GGL90 needs implicit vertical diffusion and viscosity
70 IF (.NOT.implicitDiffusion ) THEN
71 WRITE(msgBuf,'(A)')
72 & 'GGL90 needs implicitDiffusion to be enabled'
73 CALL PRINT_ERROR( msgBuf , 1)
74 STOP 'ABNORMAL END: S/R GGL90_CHECK'
75 ENDIF
76 IF (.NOT.implicitViscosity) THEN
77 WRITE(msgBuf,'(A)')
78 & 'GGL90 needs implicitViscosity to be enabled'
79 CALL PRINT_ERROR( msgBuf , 1)
80 STOP 'ABNORMAL END: S/R GGL90_CHECK'
81 ENDIF
82
83 #endif /* ALLOW_GGL90 */
84
85 return
86 end

  ViewVC Help
Powered by ViewVC 1.1.22