/[MITgcm]/MITgcm/pkg/ptracers/ptracers_init_fixed.F
ViewVC logotype

Annotation of /MITgcm/pkg/ptracers/ptracers_init_fixed.F

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


Revision 1.1 - (hide annotations) (download)
Wed May 24 00:47:05 2006 UTC (18 years ago) by jmc
Branch: MAIN
CVS Tags: checkpoint58l_post, checkpoint58u_post, checkpoint58w_post, checkpoint58r_post, checkpoint58n_post, checkpoint58x_post, checkpoint58t_post, checkpoint58h_post, checkpoint58q_post, checkpoint58j_post, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59i, checkpoint59h, checkpoint59, checkpoint58f_post, checkpoint58i_post, checkpoint58g_post, checkpoint58o_post, checkpoint58y_post, checkpoint58k_post, checkpoint58v_post, checkpoint58s_post, checkpoint58p_post, checkpoint58m_post
use standard names for initialization S/R (init_fixed, init_varia):
rename: ptracers_initialise.F -> ptracers_init_fixed.F
   and: ptracers_init.F ->  ptracers_init_varia.F

1 jmc 1.1 C $Header: /u/gcmpack/MITgcm/pkg/ptracers/ptracers_initialise.F,v 1.6 2005/10/22 20:20:37 jmc Exp $
2     C $Name: $
3    
4     #include "PTRACERS_OPTIONS.h"
5    
6     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
7     CBOP
8     C !ROUTINE: PTRACERS_INIT_FIXED
9    
10     C !INTERFACE:
11     SUBROUTINE PTRACERS_INIT_FIXED( myThid )
12    
13     C !DESCRIPTION:
14     C Initialize PTRACERS constant
15    
16     C !USES:
17     IMPLICIT NONE
18     #include "SIZE.h"
19     #include "EEPARAMS.h"
20     #include "PARAMS.h"
21     #include "PTRACERS_SIZE.h"
22     #include "PTRACERS.h"
23     #include "GAD.h"
24    
25     C !INPUT PARAMETERS:
26     INTEGER myThid
27     CEOP
28    
29     #ifdef ALLOW_PTRACERS
30    
31     C !LOCAL VARIABLES:
32     C iTracer :: tracer index
33     C msgBuf - Informational/error meesage buffer
34     INTEGER iTracer
35     INTEGER minOlSize
36     CHARACTER*(MAX_LEN_MBUF) msgBuf
37    
38     C Loop over tracers
39     DO iTracer = 1, PTRACERS_numInUse
40    
41     IF (
42     & multiDimAdvection .AND.
43     & PTRACERS_advScheme(iTracer).NE.ENUM_CENTERED_2ND .AND.
44     & PTRACERS_advScheme(iTracer).NE.ENUM_UPWIND_3RD .AND.
45     & PTRACERS_advScheme(iTracer).NE.ENUM_CENTERED_4TH ) THEN
46     c PTRACERS_multiDimAdv(iTracer) = .TRUE.
47     useMultiDimAdvec = .TRUE.
48     ENDIF
49    
50     C end of Tracer loop
51     ENDDO
52    
53     C-- Check size of the overlap :
54     IF ( useCubedSphereExchange .AND. useMultiDimAdvec ) THEN
55     C- multi-dim-advection on CS-grid requires to double the size of Olx,Oly
56     minOlSize = 2
57     DO iTracer = 1, PTRACERS_numInUse
58     IF ( PTRACERS_advScheme(iTracer).EQ.ENUM_FLUX_LIMIT .OR.
59     & PTRACERS_advScheme(iTracer).EQ.ENUM_DST3_FLUX_LIMIT .OR.
60     & PTRACERS_advScheme(iTracer).EQ.ENUM_DST3 ) minOlSize = 4
61     ENDDO
62     IF ( Olx.LT.minOlSize .OR. Oly.LT.minOlSize ) THEN
63     WRITE(msgBuf,'(2A)') 'PTRACERS_INIT_FIXED: ',
64     & 'Multi-Dim Advection with 5-points stencil'
65     CALL PRINT_ERROR( msgBuf , myThid)
66     WRITE(msgBuf,'(2A,I2)') 'PTRACERS_INIT_FIXED: ',
67     & 'advection scheme needs at least Olx,Oly=', minOlSize
68     CALL PRINT_ERROR( msgBuf , myThid)
69     STOP 'ABNORMAL END: S/R PTRACERS_INIT_FIXED'
70     ENDIF
71     ENDIF
72    
73     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
74    
75     #ifdef ALLOW_MNC
76     IF (useMNC) THEN
77     C Initialize the MNC variable types for PTRACERS
78     CALL PTRACERS_MNC_INIT( myThid )
79     ENDIF
80     #endif
81    
82     #ifdef ALLOW_DIAGNOSTICS
83     IF ( useDiagnostics ) THEN
84     CALL PTRACERS_DIAGNOSTICS_INIT( myThid )
85     ENDIF
86     #endif
87    
88     #endif /* ALLOW_PTRACERS */
89    
90     RETURN
91     END

  ViewVC Help
Powered by ViewVC 1.1.22