/[MITgcm]/MITgcm/pkg/generic_advdiff/gad_init.F
ViewVC logotype

Contents of /MITgcm/pkg/generic_advdiff/gad_init.F

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


Revision 1.2 - (show annotations) (download)
Wed Jul 3 20:29:20 2002 UTC (21 years, 10 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint46b_post, checkpoint48f_post, checkpoint46k_post, checkpoint51k_post, checkpoint47j_post, checkpoint46c_pre, checkpoint48d_pre, checkpoint51l_post, checkpoint51j_post, branch-exfmods-tag, checkpoint47e_post, checkpoint47i_post, checkpoint52l_pre, checkpoint48i_post, checkpoint52e_pre, hrcube4, checkpoint52j_post, checkpoint46j_post, checkpoint47, checkpoint47f_post, checkpoint48d_post, checkpoint51o_pre, checkpoint47c_post, checkpoint50e_post, checkpoint52e_post, checkpoint50c_post, checkpoint51n_pre, checkpoint47d_post, checkpoint47a_post, checkpoint46c_post, checkpoint46f_post, checkpoint52d_pre, checkpoint46a_post, checkpoint48a_post, checkpoint46n_post, checkpoint51f_pre, checkpoint46d_pre, checkpoint48e_post, checkpoint46e_post, checkpoint48h_post, checkpoint50c_pre, branchpoint-genmake2, checkpoint46h_pre, checkpoint46l_post, checkpoint52j_pre, checkpoint46e_pre, checkpoint50h_post, branch-netcdf, checkpoint50d_pre, checkpoint51r_post, checkpoint52b_pre, checkpoint46l_pre, checkpoint46j_pre, checkpoint46b_pre, checkpoint51i_post, checkpoint45d_post, checkpoint47h_post, checkpoint48c_post, checkpoint50b_pre, checkpoint51e_post, checkpoint51b_post, checkpoint46, checkpoint51l_pre, checkpoint51c_post, hrcube5, checkpoint48, checkpoint49, checkpoint50i_post, checkpoint47b_post, checkpoint51o_post, checkpoint48g_post, checkpoint50, checkpoint51q_post, checkpoint52l_post, checkpoint52k_post, checkpoint51, checkpoint52, checkpoint50d_post, checkpoint52d_post, checkpoint46m_post, checkpoint46g_pre, checkpoint51b_pre, checkpoint52a_post, checkpoint47g_post, checkpoint52b_post, checkpoint52f_post, checkpoint52c_post, checkpoint51h_pre, checkpoint46a_pre, checkpoint50g_post, checkpoint51g_post, ecco_c52_e35, checkpoint51f_post, checkpoint46d_post, checkpoint48b_post, checkpoint50b_post, checkpoint46g_post, checkpoint50f_post, checkpoint50a_post, checkpoint50f_pre, checkpoint52a_pre, checkpoint47d_pre, checkpoint51d_post, checkpoint48c_pre, checkpoint46i_post, checkpoint51m_post, checkpoint51t_post, checkpoint52i_post, checkpoint51a_post, checkpoint46h_post, checkpoint50e_pre, checkpoint51p_post, checkpoint51n_post, checkpoint51i_pre, checkpoint52i_pre, checkpoint51u_post, checkpoint52h_pre, checkpoint52f_pre, hrcube_1, hrcube_2, hrcube_3, checkpoint51s_post
Branch point for: netcdf-sm0, branch-genmake2, branch-nonh, tg2-branch, ecco-branch, checkpoint51n_branch, branch-exfmods-curt
Changes since 1.1: +3 -3 lines
temp,salt_MultiDimAdvec flag set to F when no temp,salt_Advection

1 C $Header: /u/gcmpack/MITgcm/pkg/generic_advdiff/gad_init.F,v 1.1 2002/06/15 03:31:17 jmc Exp $
2 C $Name: $
3
4 #include "GAD_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: GAD_INIT
8 C !INTERFACE:
9 SUBROUTINE GAD_INIT( myThid )
10 C !DESCRIPTION: \bv
11 C *==========================================================*
12 C | SUBROUTINE GAD_INIT
13 C | o Routine to initialize Generic Advection / Diffusion
14 C | variables and constants.
15 C *==========================================================*
16 C \ev
17
18 C !USES:
19 IMPLICIT NONE
20
21 C === Global variables ===
22 #include "SIZE.h"
23 #include "EEPARAMS.h"
24 #include "PARAMS.h"
25 #include "GAD.h"
26
27 C !INPUT/OUTPUT PARAMETERS:
28 C === Routine arguments ===
29 C myThid - Number of this instance of GAD_INIT
30 INTEGER myThid
31
32 CEOP
33
34 C === Local variables ===
35 C msgBuf - Informational/error meesage buffer
36 CHARACTER*(MAX_LEN_MBUF) msgBuf
37
38 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
39
40 C-- Set Temp & Salt muti-Dim Advec. flag according to advection scheme used
41 tempMultiDimAdvec = multiDimAdvection .AND. tempAdvection
42 saltMultiDimAdvec = multiDimAdvection .AND. saltAdvection
43 IF ( tempAdvScheme.EQ.ENUM_CENTERED_2ND
44 & .OR.tempAdvScheme.EQ.ENUM_UPWIND_3RD
45 & .OR.tempAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
46 tempMultiDimAdvec = .FALSE.
47 ENDIF
48 IF ( saltAdvScheme.EQ.ENUM_CENTERED_2ND
49 & .OR.saltAdvScheme.EQ.ENUM_UPWIND_3RD
50 & .OR.saltAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
51 saltMultiDimAdvec = .FALSE.
52 ENDIF
53
54 C-- Set Temp & Salt Adams-Bashforth flag according to advection scheme used
55 tempAdamsBashforth = .FALSE.
56 saltAdamsBashforth = .FALSE.
57 IF ( tempAdvScheme.EQ.ENUM_CENTERED_2ND
58 & .OR.tempAdvScheme.EQ.ENUM_UPWIND_3RD
59 & .OR.tempAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
60 tempAdamsBashforth = .TRUE.
61 ENDIF
62 IF ( saltAdvScheme.EQ.ENUM_CENTERED_2ND
63 & .OR.saltAdvScheme.EQ.ENUM_UPWIND_3RD
64 & .OR.saltAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
65 saltAdamsBashforth = .TRUE.
66 ENDIF
67
68 #ifdef ALLOW_PASSIVE_TRACER
69 tr1_MultiDimAdvec = multiDimAdvection
70 tr1_AdamsBashforth = .FALSE.
71 IF ( tracerAdvScheme.EQ.ENUM_CENTERED_2ND
72 & .OR.tracerAdvScheme.EQ.ENUM_UPWIND_3RD
73 & .OR.tracerAdvScheme.EQ.ENUM_CENTERED_4TH ) THEN
74 tr1_MultiDimAdvec = .FALSE.
75 tr1_AdamsBashforth = .TRUE.
76 ENDIF
77 #endif
78
79 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
80
81 C-- Print out GAD parameters :
82 _BARRIER
83 _BEGIN_MASTER(myThid)
84
85 WRITE(msgBuf,'(A)') ' '
86 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
87 WRITE(msgBuf,'(A)') '// ==================================='
88 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
89 WRITE(msgBuf,'(A)')'// GAD parameters :'
90 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
91 WRITE(msgBuf,'(A)') '// ==================================='
92 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
93
94 CALL WRITE_0D_I( tempAdvScheme, INDEX_NONE,
95 & 'tempAdvScheme =',
96 & ' /* Temp. advection scheme selector */')
97 CALL WRITE_0D_L( tempMultiDimAdvec, INDEX_NONE,
98 & 'tempMultiDimAdvec =',
99 & ' /* use Muti-Dim Advec method for Temp */')
100 CALL WRITE_0D_L( tempAdamsBashforth, INDEX_NONE,
101 & 'tempAdamsBashforth =',
102 & ' /* use Adams-Bashforth time-stepping for Temp */')
103
104 CALL WRITE_0D_I( saltAdvScheme, INDEX_NONE,
105 & 'saltAdvScheme =',
106 & ' /* Salt. advection scheme selector */')
107 CALL WRITE_0D_L( saltMultiDimAdvec, INDEX_NONE,
108 & 'saltMultiDimAdvec =',
109 & ' /* use Muti-Dim Advec method for Salt */')
110 CALL WRITE_0D_L( saltAdamsBashforth, INDEX_NONE,
111 & 'saltAdamsBashforth =',
112 & ' /* use Adams-Bashforth time-stepping for Salt */')
113
114 WRITE(msgBuf,'(A)') '// ==================================='
115 CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,SQUEEZE_RIGHT,1)
116
117 _END_MASTER(myThid)
118 _BARRIER
119
120 RETURN
121 END

  ViewVC Help
Powered by ViewVC 1.1.22