/[MITgcm]/MITgcm/pkg/gchem/gchem_readparms.F
ViewVC logotype

Contents of /MITgcm/pkg/gchem/gchem_readparms.F

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


Revision 1.16 - (show annotations) (download)
Wed Apr 9 20:10:04 2008 UTC (16 years, 2 months ago) by dfer
Branch: MAIN
CVS Tags: checkpoint60, checkpoint61, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q
Changes since 1.15: +9 -15 lines
Read in useDIC and useCFC

1 C $Header: /u/gcmpack/MITgcm/pkg/gchem/gchem_readparms.F,v 1.15 2008/04/09 17:55:12 jmc Exp $
2 C $Name: $
3
4 #include "GCHEM_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: GCHEM_READPARMS
8
9 C !INTERFACE: ==========================================================
10 SUBROUTINE GCHEM_READPARMS( myThid )
11
12 C !DESCRIPTION:
13 C Initialize GCHEM parameters, read in data.gchem
14
15 C !USES: ===============================================================
16 IMPLICIT NONE
17 #include "SIZE.h"
18 #include "EEPARAMS.h"
19 #include "PARAMS.h"
20 #include "GCHEM.h"
21
22 C !INPUT PARAMETERS: ===================================================
23 C myThid :: thread number
24 INTEGER myThid
25
26 C !OUTPUT PARAMETERS: ==================================================
27 C none
28
29 #ifdef ALLOW_GCHEM
30
31 C !LOCAL VARIABLES: ====================================================
32 C tIter0 :: retired parameter
33 C iTracer :: loop indices
34 C iUnit :: unit number for I/O
35 C msgBuf :: message buffer
36 INTEGER tIter0
37 INTEGER iTracer
38 INTEGER iUnit
39 CHARACTER*(MAX_LEN_MBUF) msgBuf
40 c PARAMETER ( UNSET_I = 123456789 )
41 CEOP
42
43 C- Sub-package on/off flags: not fully implemented, requires
44 C to test the flag before any corresponding pkg S/R call
45
46 NAMELIST /GCHEM_PARM01/
47 & nsubtime,
48 & useDIC,
49 & useCFC,
50 & Filename1,
51 & Filename2,
52 & Filename3,
53 & Filename4,
54 & Filename5,
55 & gchem_int1, gchem_int2, gchem_int3,
56 & gchem_int4, gchem_int5,
57 & gchem_rl1, gchem_rl2, gchem_rl3,
58 & gchem_rl4, gchem_rl5,
59 & gchem_ForcingPeriod, gchem_ForcingCycle,
60 & tIter0
61
62 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
63
64 _BEGIN_MASTER(myThid)
65
66 C Set defaults values for parameters in GCHEM.h
67 useDIC = .FALSE.
68 useCFC = .FALSE.
69 tIter0 = UNSET_I
70 nsubtime=1
71 Filename1=' '
72 Filename2=' '
73 Filename3=' '
74 Filename4=' '
75 Filename5=' '
76 gchem_int1=0
77 gchem_int2=0
78 gchem_int3=0
79 gchem_int4=0
80 gchem_int5=0
81 gchem_rl1=0. _d 0
82 gchem_rl2=0. _d 0
83 gchem_rl3=0. _d 0
84 gchem_rl4=0. _d 0
85 gchem_rl5=0. _d 0
86 c default periodic forcing to same as for physics
87 gchem_ForcingPeriod=externForcingPeriod
88 gchem_ForcingCycle=externForcingCycle
89 C Open and read the data.gchem file
90 WRITE(msgBuf,'(A)') ' GCHEM_READPARMS: opening data.gchem'
91 CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,
92 & SQUEEZE_RIGHT , 1)
93 CALL OPEN_COPY_DATA_FILE(
94 I 'data.gchem', 'GCHEM_PARM01',
95 O iUnit,
96 I myThid )
97 READ(UNIT=iUnit,NML=GCHEM_PARM01)
98 WRITE(msgBuf,'(A)')
99 & ' GCHEM_READPARMS: finished reading data.gchem'
100 CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,
101 & SQUEEZE_RIGHT , 1)
102
103 C Close the open data file
104 CLOSE(iUnit)
105
106 C- Check for retired parameters:
107 IF ( tIter0 .NE. UNSET_I ) THEN
108 c nRetired = nRetired+1
109 WRITE(msgBuf,'(A,A)')
110 & 'S/R GCHEM_READPARMS: Paramater "tIter0" is',
111 & ' no longer allowed in file "data.gchem"'
112 CALL PRINT_ERROR( msgBuf , myThid)
113 WRITE(msgBuf,'(A,A)')
114 & 'S/R GCHEM_READPARMS: "tIter0" has been moved to',
115 & ' PTRACERS_Iter0 in file "data.ptracers".'
116 CALL PRINT_ERROR( msgBuf , myThid)
117 STOP 'ABNORMAL END: S/R GCHEM_READPARMS'
118 ENDIF
119
120 _END_MASTER(myThid)
121
122 C Everyone else must wait for the parameters to be loaded
123 _BARRIER
124
125 #ifdef ALLOW_DIC
126 IF ( useDIC ) THEN
127 CALL DIC_READPARMS(myThid)
128 ENDIF
129 #endif
130
131 #ifdef ALLOW_CFC
132 IF ( useCFC ) THEN
133 CALL CFC_READPARMS(myThid)
134 ENDIF
135 #endif
136
137 #endif /* ALLOW_GCHEM */
138
139 RETURN
140 END

  ViewVC Help
Powered by ViewVC 1.1.22