/[MITgcm]/MITgcm/pkg/kpp/kpp_readparms.F
ViewVC logotype

Contents of /MITgcm/pkg/kpp/kpp_readparms.F

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


Revision 1.2 - (show annotations) (download)
Wed Sep 13 17:07:11 2000 UTC (23 years, 9 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint31
Changes since 1.1: +0 -2 lines
KPP package without flag kppPackageIsOn.

1 #include "KPP_OPTIONS.h"
2
3 SUBROUTINE KPP_READPARMS( myThid )
4 C /==========================================================\
5 C | SUBROUTINE KPP_READPARMS |
6 C | o Routine to read in file data.kpp |
7 C \==========================================================/
8 IMPLICIT NONE
9
10 C === Global variables ===
11 #include "SIZE.h"
12 #include "EEPARAMS.h"
13 #include "PARAMS.h"
14 #include "GRID.h"
15 #include "KPP_PARAMS.h"
16
17 C === Routine arguments ===
18 C myThid - Number of this instance of KPP_INIT
19 INTEGER myThid
20
21 #ifdef ALLOW_KPP
22
23 C === Local variables ===
24 C msgBuf - Informational/error meesage buffer
25 C errIO - IO error flag
26 C iUnit - Work variable for IO unit number
27 C k - Loop counter
28
29 CHARACTER*(MAX_LEN_MBUF) msgBuf
30 INTEGER errIO, iUnit, k
31
32 C-- KPP vertical mixing parameters
33 NAMELIST /KPP_PARM01/
34 & kpp_freq, kpp_dumpFreq, kpp_taveFreq,
35 & KPPmixingMaps, KPPwriteState,
36 & minKPPviscAz, maxKPPviscAz, minKPPghat, maxKPPghat,
37 & minKPPdiffKzT, maxKPPdiffKzT, minKPPdiffKzS, maxKPPdiffKzS,
38 & minKPPhbl,
39 & epsln, phepsi, epsilon, vonk, dB_dz,
40 & conc1, conam, concm, conc2, zetam,
41 & conas, concs, conc3, zetas,
42 & Ricr, cekman, cmonob, concv, hbf,
43 & zmin, zmax, umin, umax,
44 & num_v_smooth_Ri, num_v_smooth_BV,
45 & num_z_smooth_sh, num_m_smooth_sh,
46 & Riinfty, BVSQcon, difm0, difs0, dift0,
47 & difmcon, difscon, diftcon,
48 & cstar
49
50 _BEGIN_MASTER(myThid)
51
52 WRITE(msgBuf,'(A)') ' KPP_INIT: opening data.kpp'
53 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
54 & SQUEEZE_RIGHT , 1)
55
56
57 CALL OPEN_COPY_DATA_FILE(
58 I 'data.kpp', 'KPP_INIT',
59 O iUnit,
60 I myThid )
61
62 C-- set default KPP vertical mixing parameters
63 kpp_freq = deltaTClock
64 kpp_dumpFreq = 0.
65 kpp_taveFreq = 0.
66 KPPmixingMaps = .FALSE.
67 KPPwriteState = .FALSE.
68 minKPPghat = 0.
69 maxKPPghat = 1.e10
70 minKPPviscAz = 0.
71 DO k = 1,Nr
72 maxKPPviscAz(k) = 100.
73 ENDDO
74 minKPPdiffKzT = 0.
75 maxKPPdiffKzT = 100.
76 minKPPdiffKzS = 0.
77 maxKPPdiffKzS = 100.
78 minKPPhbl = delZ(1)*0.5
79
80 C-----------------------------------------------------------------------
81 C define some non-dimensional constants and
82 C the vertical mixing coefficients in m-k-s units
83 C-----------------------------------------------------------------------
84
85 epsln = 1.e-20
86 phepsi = 1.e-10
87 epsilon = 0.1
88 vonk = 0.40
89 dB_dz = 5.2e-5
90 conc1 = 5.0
91 conam = 1.257
92 concm = 8.380
93 conc2 = 16.0
94 zetam = -0.2
95 conas = -28.86
96 concs = 98.96
97 conc3 = 16.0
98 zetas = -1.0
99
100 c parameters for subroutine "bldepth"
101
102 Ricr = 0.30
103 cekman = 0.7
104 cmonob = 1.0
105 concv = 1.8
106 hbf = 1.0
107
108 c parameters and common arrays for subroutines
109 c "kmixinit" and "wscale"
110
111 zmin = -4.e-7
112 zmax = 0.0
113 umin = 0.0
114 umax = .04
115
116 c parameters for subroutine "Ri_iwmix"
117
118 num_v_smooth_Ri = 0
119 num_v_smooth_BV = 0
120 num_z_smooth_sh = 0
121 num_m_smooth_sh = 0
122 Riinfty = 0.7
123 BVSQcon = -0.2e-4
124
125 difm0 = 0.005
126 difs0 = 0.005
127 dift0 = 0.005
128
129 difmcon = 0.1
130 difscon = 0.1
131 diftcon = 0.1
132
133 C parameters for subroutine "blmix"
134
135 cstar = 10.
136
137 C-----------------------------------------------------------------------
138
139 C-- Read settings from model parameter file "data.kpp".
140 READ(UNIT=iUnit,NML=KPP_PARM01,IOSTAT=errIO)
141 IF ( errIO .LT. 0 ) THEN
142 WRITE(msgBuf,'(A)')
143 & 'S/R INI_PARMS'
144 CALL PRINT_ERROR( msgBuf , 1)
145 WRITE(msgBuf,'(A)')
146 & 'Error reading numerical model '
147 CALL PRINT_ERROR( msgBuf , 1)
148 WRITE(msgBuf,'(A)')
149 & 'parameter file "data.kpp"'
150 CALL PRINT_ERROR( msgBuf , 1)
151 WRITE(msgBuf,'(A)')
152 & 'Problem in namelist KPP_PARM01'
153 CALL PRINT_ERROR( msgBuf , 1)
154 C CALL MODELDATA_EXAMPLE( myThid )
155 STOP 'ABNORMAL END: S/R KPP_INIT'
156 ENDIF
157
158 CLOSE(iUnit)
159
160 WRITE(msgBuf,'(A)') ' KPP_INIT: finished reading data.kpp'
161 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
162 & SQUEEZE_RIGHT , 1)
163
164 _END_MASTER(myThid)
165
166 C-- Everyone else must wait for the parameters to be loaded
167 _BARRIER
168
169 #endif /* ALLOW_KPP */
170
171 return
172 end

  ViewVC Help
Powered by ViewVC 1.1.22