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

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

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


Revision 1.2 - (hide 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 heimbach 1.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