/[MITgcm]/MITgcm/model/src/packages_boot.F
ViewVC logotype

Annotation of /MITgcm/model/src/packages_boot.F

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


Revision 1.47 - (hide annotations) (download)
Wed Sep 16 21:36:11 2009 UTC (14 years, 8 months ago) by rpa
Branch: MAIN
CVS Tags: checkpoint61v, checkpoint61w, checkpoint61x, checkpoint61y
Changes since 1.46: +3 -1 lines
Added calls to layers package

1 rpa 1.47 C $Header: /u/gcmpack/MITgcm_contrib/rpa_layers/modsrc/packages_boot.F,v 1.2 2009/09/16 18:06:39 jmc Exp $
2 adcroft 1.6 C $Name: $
3 heimbach 1.1
4 jmc 1.33 #include "PACKAGES_CONFIG.h"
5 heimbach 1.1 #include "CPP_OPTIONS.h"
6    
7 cnh 1.7 CBOP
8     C !ROUTINE: PACKAGES_BOOT
9     C !INTERFACE:
10 heimbach 1.1 SUBROUTINE PACKAGES_BOOT( myThid )
11 cnh 1.7
12     C !DESCRIPTION: \bv
13     C *==========================================================*
14 jmc 1.46 C | SUBROUTINE PACKAGES_BOOT
15     C | o Routine to parse runtime package selection file
16 cnh 1.7 C *==========================================================*
17 jmc 1.46 C | Routine reads a flat file which contains a single flag
18     C | for each known "package". Flag can enables runtime
19     C | activation or deactivation of a package. The data is read
20     C | from a file called data.pkg.
21     C | Note - If a runtime activation flag is set on but the
22     C | package code was not included in the build then
23     C | the default behavior is to stop with an error.
24 cnh 1.7 C *==========================================================*
25     C \ev
26    
27     C !USES:
28 heimbach 1.1 IMPLICIT NONE
29     C === Global variables ===
30     #include "SIZE.h"
31     #include "EEPARAMS.h"
32     #include "PARAMS.h"
33    
34 cnh 1.7 C !INPUT/OUTPUT PARAMETERS:
35 heimbach 1.1 C === Routine arguments ===
36     C myThid - Number of this instances
37     INTEGER myThid
38    
39 cnh 1.7 C !LOCAL VARIABLES:
40     C === Local variables ===
41     C msgBuf - Informational/error meesage buffer
42     C iUnit - Work variable for IO unit number
43     CHARACTER*(MAX_LEN_MBUF) msgBuf
44     INTEGER iUnit
45    
46 cheisey 1.11 C data.pkg namelists
47 heimbach 1.1 NAMELIST /PACKAGES/
48 jmc 1.46 & useOBCS,
49     & useSHAP_FILT,
50     & useZONAL_FILT,
51 mlosch 1.24 & useOPPS,
52 mlosch 1.23 & usePP81,
53     & useMY82,
54 mlosch 1.24 & useGGL90,
55 heimbach 1.1 & useKPP,
56     & useGMRedi,
57 jmc 1.46 & useDOWN_SLOPE,
58     c & useCAL,
59     & useEXF,
60     & useBulkForce,
61     & useEBM,
62     & useCheapAML,
63 heimbach 1.5 & useGrdchk,
64 adcroft 1.4 & useECCO,
65 jmc 1.46 & useSBO,
66 adcroft 1.9 & useFLT,
67 heimbach 1.10 & usePTRACERS,
68 mlosch 1.26 & useGCHEM,
69 stephd 1.29 & useRBCS,
70 jmc 1.32 & useOffLine,
71 jmc 1.46 & useMATRIX,
72 cheisey 1.11 & useSEAICE,
73 jmc 1.46 & useSALT_PLUME,
74 mlosch 1.31 & useShelfIce,
75 jmc 1.33 & useThSIce,
76 jscott 1.36 & useATM2D,
77 jmc 1.46 & useAIM,
78     & useLand,
79     & useFizhi,
80     & useGridAlt,
81 jmc 1.32 & useDiagnostics,
82 jmc 1.46 & useREGRID,
83 rpa 1.47 & useLayers,
84 spk 1.27 & useMNC,
85 adcroft 1.28 & useRunClock,
86 heimbach 1.34 & useEMBED_FILES,
87 jmc 1.45 & useMYPACKAGE
88 cnh 1.7 CEOP
89 heimbach 1.1
90     _BEGIN_MASTER(myThid)
91    
92 cnh 1.7 WRITE(msgBuf,'(A)') ' PACKAGES_BOOT: opening data.pkg'
93 heimbach 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
94 jmc 1.37 & SQUEEZE_RIGHT , myThid )
95 jmc 1.38
96 heimbach 1.1
97     CALL OPEN_COPY_DATA_FILE(
98     I 'data.pkg', 'PACKAGES_BOOT',
99     O iUnit,
100     I myThid )
101    
102     C-- Default package configuration
103 jmc 1.46 c useGAD =.FALSE.
104     useOBCS =.FALSE.
105     useSHAP_FILT =.FALSE.
106     useZONAL_FILT =.FALSE.
107 jmc 1.33 useOPPS =.FALSE.
108     usePP81 =.FALSE.
109     useMY82 =.FALSE.
110     useGGL90 =.FALSE.
111     useKPP =.FALSE.
112     useGMRedi =.FALSE.
113 jmc 1.46 useDOWN_SLOPE =.FALSE.
114 jmc 1.33 useCAL =.FALSE.
115     useEXF =.FALSE.
116 jmc 1.46 useBulkForce =.FALSE.
117 jmc 1.33 useEBM =.FALSE.
118 jmc 1.46 useCheapAML =.FALSE.
119 jmc 1.33 useGrdchk =.FALSE.
120     useECCO =.FALSE.
121 jmc 1.46 useSBO =.FALSE.
122 jmc 1.33 useFLT =.FALSE.
123     usePTRACERS =.FALSE.
124     useGCHEM =.FALSE.
125     useRBCS =.FALSE.
126     useOffLine =.FALSE.
127     useMATRIX =.FALSE.
128     useSEAICE =.FALSE.
129 jmc 1.46 useSALT_PLUME =.FALSE.
130 jmc 1.33 useShelfIce =.FALSE.
131     useThSIce =.FALSE.
132 jscott 1.36 useATM2D =.FALSE.
133 jmc 1.46 useAIM =.FALSE.
134     useLand =.FALSE.
135     useFizhi =.FALSE.
136     useGridAlt =.FALSE.
137 jmc 1.33 useDiagnostics =.FALSE.
138 jmc 1.46 useREGRID =.FALSE.
139 rpa 1.47 useLayers =.FALSE.
140 jmc 1.33 useMNC =.FALSE.
141     useRunClock =.FALSE.
142 heimbach 1.34 useMYPACKAGE =.FALSE.
143 heimbach 1.1
144     C-- Read parameters from open data file
145     READ(UNIT=iUnit,NML=PACKAGES)
146    
147    
148 cnh 1.7 WRITE(msgBuf,'(A)') ' PACKAGES_BOOT: finished reading data.pkg'
149 heimbach 1.1 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
150 jmc 1.37 & SQUEEZE_RIGHT , myThid )
151 heimbach 1.1
152     C-- Close the open data file
153     CLOSE(iUnit)
154 jmc 1.38
155 jmc 1.33 C-- packages with hard-coded switch
156     #ifdef ALLOW_CAL
157 heimbach 1.40 IF (useEXF) useCAL = .TRUE.
158 jmc 1.33 #endif
159    
160 gforget 1.41 #ifdef ALLOW_PROFILES
161     useCAL = .TRUE.
162     #endif
163    
164 jmc 1.38 C-- packages with an implied switch
165     useGAD = tempStepping .OR. saltStepping .OR. usePTRACERS
166    
167 jmc 1.37 _END_MASTER(myThid)
168    
169 heimbach 1.1 C-- Everyone else must wait for the parameters to be loaded
170     _BARRIER
171    
172 jmc 1.15 RETURN
173     END

  ViewVC Help
Powered by ViewVC 1.1.22