File indexing completed on 2024-11-09 06:11:08 UTC
view on githubraw file Latest commit 9edc0e3a on 2024-11-08 15:50:10 UTC
c0d1c06c15 Matt*0001 #include "BLING_OPTIONS.h"
041f4605e9 Jean*0002 #ifdef ALLOW_EXF
0003 # include "EXF_OPTIONS.h"
0004 #endif
c0d1c06c15 Matt*0005
0006
be72e7ae9e Jean*0007 SUBROUTINE BLING_READPARMS( myThid )
c0d1c06c15 Matt*0008
be72e7ae9e Jean*0009
c0d1c06c15 Matt*0010
0011
be72e7ae9e Jean*0012
c0d1c06c15 Matt*0013
e0f9a7ba0b Matt*0014 IMPLICIT NONE
c0d1c06c15 Matt*0015
0016
0017 #include "SIZE.h"
0018 #include "EEPARAMS.h"
0019 #include "PARAMS.h"
e0f9a7ba0b Matt*0020 #ifdef ALLOW_EXF
041f4605e9 Jean*0021 # include "EXF_PARAM.h"
9f0da36f91 Jean*0022 # include "EXF_INTERP_SIZE.h"
0023 # include "EXF_INTERP_PARAM.h"
e0f9a7ba0b Matt*0024 #endif /* ALLOW_EXF */
c0d1c06c15 Matt*0025 #include "BLING_VARS.h"
0026
0027
0028
0029 INTEGER myThid
0030
0031
0032 #ifdef ALLOW_BLING
0033
0034
0035
530382a175 Jean*0036
c0d1c06c15 Matt*0037
0038 CHARACTER*(MAX_LEN_MBUF) msgBuf
530382a175 Jean*0039 INTEGER errCount
c0d1c06c15 Matt*0040 INTEGER iUnit
0041
0042
0043
e0f9a7ba0b Matt*0044
0045
0046
0047
0048
0049
0050
0051
0052
0053
0054
0055
0056
0057
0058
0059
0060
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072
0073
0074
c0d1c06c15 Matt*0075
0076
be72e7ae9e Jean*0077 NAMELIST /ABIOTIC_PARMS/
e0f9a7ba0b Matt*0078 & permil,
0079 & Pa2Atm,
0080 & epsln
0081 #ifdef CARBONCHEM_SOLVESAPHE
0082 & ,selectBTconst,selectFTconst,
0083 & selectHFconst,selectK1K2const,
0084 & selectPHsolver
0085 #endif
c0d1c06c15 Matt*0086
0087
0088
0089
0090
0091 NAMELIST /BIOTIC_PARMS/
0092 & CtoN,
e0f9a7ba0b Matt*0093 & CtoP,
0094 & NtoP,
c0d1c06c15 Matt*0095 & HtoC,
e0f9a7ba0b Matt*0096 & NO3toN,
c0d1c06c15 Matt*0097 & O2toN,
e0f9a7ba0b Matt*0098 & O2toP,
c0d1c06c15 Matt*0099 & CatoN,
e0f9a7ba0b Matt*0100 & CatoP,
c0d1c06c15 Matt*0101 & masstoN,
e0f9a7ba0b Matt*0102 #ifndef USE_BLING_V1
0103 & Pc_0_diaz,
c0d1c06c15 Matt*0104 & alpha_photo,
e0f9a7ba0b Matt*0105 & gamma_DON,
0106 & k_Fe_diaz,
0107 & k_NO3,
0108 & k_PtoN,
0109 & k_FetoN,
9edc0e3a85 aver*0110 & k_NO3_sm,
0111 & k_NO3_lg,
0112 & k_PO4_sm,
0113 & k_PO4_lg,
0114 & k_Fe_sm,
0115 & k_Fe_lg,
e0f9a7ba0b Matt*0116 & PtoN_min,
0117 & PtoN_max,
0118 & FetoN_min,
0119 & FetoN_max,
0120 & kappa_eppley_diaz,
0121 & phi_dvm,
0122 & sigma_dvm,
0123 #ifdef USE_SIBLING
0124 & k_Si,
0125 & gamma_Si_0,
0126 & kappa_remin_Si,
0127 & wsink_Si,
00fa2d4ddd mmaz*0128 & SitoN_uptake_min,
0129 & SitoN_uptake_max,
0130 & SitoN_uptake_scale,
0131 & SitoN_uptake_exp,
e0f9a7ba0b Matt*0132 & q_SitoN_diss,
0133 #endif
0134 #else
0135 & alpha_max,
0136 & alpha_min,
0137 & gamma_biomass,
0138 & k_FetoP,
0139 & FetoP_max,
0140 & Fe_lim_min,
0141 #endif
0142 & pivotal,
0143 & Pc_0,
0144 & lambda_0,
0145 & resp_frac,
0146 & chl_min,
c0d1c06c15 Matt*0147 & theta_Fe_max_hi,
0148 & theta_Fe_max_lo,
0149 & gamma_irr_mem,
0150 & gamma_DOP,
0151 & gamma_POM,
0152 & k_Fe,
0153 & k_O2,
0154 & k_PO4,
0155 & kFe_eq_lig_max,
0156 & kFe_eq_lig_min,
0157 & kFe_eq_lig_Femin,
be72e7ae9e Jean*0158 & kFe_eq_lig_irr,
c0d1c06c15 Matt*0159 & kFe_org,
0160 & kFe_inorg,
0161 & FetoC_sed,
0162 & remin_min,
0163 & oxic_min,
0164 & ligand,
0165 & kappa_eppley,
0166 & kappa_remin,
0167 & ca_remin_depth,
0168 & phi_DOM,
0169 & phi_sm,
0170 & phi_lg,
0171 & wsink0z,
0172 & wsink0,
0173 & wsinkacc,
0174 & parfrac,
0175 & alpfe,
0176 & k0,
e0f9a7ba0b Matt*0177 & MLmix_max,
82e538d851 aver*0178 & chlsat_locTimWindow,
e0f9a7ba0b Matt*0179 & river_conc_po4,
0180 & river_dom_to_nut
c0d1c06c15 Matt*0181
0182
0183
0184
0185
0186 NAMELIST /BLING_FORCING/
0187 & bling_windFile, bling_atmospFile, bling_iceFile,
54b6d6aa91 Matt*0188 & bling_ironFile, bling_silicaFile,
0189 & bling_psmFile, bling_plgFile, bling_PdiazFile,
c0d1c06c15 Matt*0190 & bling_forcingPeriod, bling_forcingCycle,
47de7c1e0e Matt*0191 & bling_Pc_2dFile, bling_Pc_2d_diazFile,
af8f3b9ffc Matt*0192 & bling_alpha_photo2dFile,bling_phi_DOM2dFile,
0193 & bling_k_Fe2dFile, bling_k_Fe_diaz2dFile,
0194 & bling_gamma_POM2dFile, bling_wsink0_2dFile,
e0f9a7ba0b Matt*0195 & bling_phi_sm2dFile,bling_phi_lg2dFile,
0196 & bling_pCO2,
0197 & river_conc_po4, river_dom_to_nut
0198 #ifdef ALLOW_EXF
0199 & ,apco2file, apco2startdate1, apco2startdate2,
041f4605e9 Jean*0200 & apco2RepCycle, apco2period, apco2StartTime,
530382a175 Jean*0201 & exf_inscal_apco2, exf_outscal_apco2, apco2const,
079948e6a6 Matt*0202 & apco2_exfremo_intercept, apco2_exfremo_slope
0203 #ifdef USE_EXF_INTERPOLATION
e0f9a7ba0b Matt*0204 & ,apco2_lon0, apco2_lon_inc, apco2_lat0, apco2_lat_inc,
079948e6a6 Matt*0205 & apco2_nlon, apco2_nlat, apco2_interpMethod
0206 #endif /* USE_EXF_INTERPOLATION */
e0f9a7ba0b Matt*0207 #endif /* ALLOW_EXF */
c0d1c06c15 Matt*0208
0209
e0f9a7ba0b Matt*0210
0211
0212
0213
cab777d667 Matt*0214
e0f9a7ba0b Matt*0215
0216
0217
0218
0219
0220
0221
0222
0223
0224
0225
0226
0227
cab777d667 Matt*0228
0229
e0f9a7ba0b Matt*0230
0231
0232
0233
0234
0235
0236
0237
0238
0239
0240
0241
0242
0243
0244
0245
0246
0247
0248
0249
0250
0251
0252
0253
0254
0255
0256
0257
0258
0259
0260
0261
0262
0263
0264
0265
0266
00fa2d4ddd mmaz*0267
0268
0269
0270
e0f9a7ba0b Matt*0271
0272
0273
0274
cab777d667 Matt*0275
e0f9a7ba0b Matt*0276
0277
0278
0279
0280
cab777d667 Matt*0281
0282
e0f9a7ba0b Matt*0283
0284
0285
0286
0287
0288
0289
0290
0291
0292
0293
0294
82e538d851 aver*0295
0296
e0f9a7ba0b Matt*0297
c0d1c06c15 Matt*0298 _RL secperday
e0f9a7ba0b Matt*0299 #ifdef ALLOW_EXF
0300 #ifdef USE_EXF_INTERPOLATION
079948e6a6 Matt*0301 INTEGER j
e0f9a7ba0b Matt*0302 #endif /* USE_EXF_INTERPOLATION */
0303 #endif /* ALLOW_EXF */
c0d1c06c15 Matt*0304
0305 _BEGIN_MASTER(myThid)
530382a175 Jean*0306 errCount = 0
c0d1c06c15 Matt*0307
0308
0309
0310
0311 secperday = 86400. _d 0
0312 permil = 1. _d 0 / 1024.5 _d 0
0313 Pa2Atm = 1.01325 _d 5
e0f9a7ba0b Matt*0314 epsln = 1. _d -30
0315 #ifdef CARBONCHEM_SOLVESAPHE
0316 selectBTconst = 1
0317 selectFTconst = 1
0318 selectHFconst = 1
0319 selectK1K2const = 1
0320 selectPHsolver = 0
0321 #endif
0322
c0d1c06c15 Matt*0323 CtoN = 6.75 _d 0
e0f9a7ba0b Matt*0324 CtoP = 106. _d 0
0325 NtoP = 16. _d 0
c0d1c06c15 Matt*0326 HtoC = 48. _d 0 / 106. _d 0
be72e7ae9e Jean*0327 NO3toN = CtoN * (1. _d 0 + 0.25 _d 0 * HtoC)
c0d1c06c15 Matt*0328 & * 0.8 _d 0 + 0.6 _d 0
e0f9a7ba0b Matt*0329 O2toN = CtoN * (1. _d 0 + 0.25 _d 0 * HtoC)
0330 & + 2. _d 0
0331 O2toP = 150. _d 0
c0d1c06c15 Matt*0332 CatoN = CtoN * 0.015 _d 0
e0f9a7ba0b Matt*0333 CatoP = 106.0 _d 0 * 0.015 _d 0
c0d1c06c15 Matt*0334 masstoN = CtoN * 12.001 _d 0
e0f9a7ba0b Matt*0335 #ifndef USE_BLING_V1
c0d1c06c15 Matt*0336 pivotal = 1.9 _d -3 / 1028. _d 0 / CtoN / permil
0337 Pc_0 = 1.7 _d -5
0338 Pc_0_diaz = 0.01 _d -5
be72e7ae9e Jean*0339 alpha_photo = 0.7 _d -5 * 2.77 _d 18 / 6.022 _d 17
c0d1c06c15 Matt*0340 gamma_DON = 0.25 _d 0 / (365.25 _d 0 * secperday)
0341 gamma_DOP = 0.5 _d 0 / (365.25 _d 0 * secperday)
e0f9a7ba0b Matt*0342 PtoN_min = 1. / 28.
0343 PtoN_max = 1. / 9.
0344 FetoN_min = 2. _d -6 * 6.75
0345 FetoN_max = 25. _d -6 * 6.75
cab777d667 Matt*0346 k_Fe = 1.6 _d -10 / permil
c0d1c06c15 Matt*0347 k_Fe_diaz = 7. _d -10 / permil
0348 k_NO3 = 2. _d -6 / permil
cab777d667 Matt*0349 k_PO4 = 1. _d -8 / permil
9edc0e3a85 aver*0350 k_NO3_sm = 2.0 _d -6 / permil
0351 k_NO3_lg = 6.0 _d -6 / permil
0352 k_PO4_sm = 1.0 _d -8 / permil
0353 k_PO4_lg = 3.0 _d -8 / permil
0354 k_Fe_sm = 1.6 _d -10 / permil
0355 k_Fe_lg = 4.8 _d -10 / permil
be72e7ae9e Jean*0356 k_PtoN = 1.5 _d -6 / permil
0357 k_FetoN = 8. _d -10 / permil
e0f9a7ba0b Matt*0358 remin_min = 0.15 _d 0
0359 kappa_eppley_diaz = 0.18 _d 0
0360 sigma_dvm = 40.0 _d 0
0361 phi_dvm = 0.2 _d 0
0362 #ifdef USE_SIBLING
0363 k_Si = 2.0 _d -6 / permil
0364 gamma_Si_0 = 0.05 / secperday
0365 kappa_remin_Si = 0.075
0366 wsink_Si = 100. / secperday
6ffd1aa797 Jean*0367 SitoN_uptake_min = 4
0368 SitoN_uptake_max = 1
00fa2d4ddd mmaz*0369 SitoN_uptake_scale = 0.6
0370 SitoN_uptake_exp = 3.887
e0f9a7ba0b Matt*0371 q_SitoN_diss = 1.0 _d 0
0372 #endif
0373 #else
0374 pivotal = 1.9 _d -3 / 1028. _d 0 / CtoP / permil
0375 Pc_0 = 1 _d -5
0376 alpha_max = 1.6 _d -5 * 2.77 _d 18 / 6.022 _d 17
0377 alpha_min = 0.4 _d -5 * 2.77 _d 18 / 6.022 _d 17
0378 gamma_biomass = 0.5 _d 0 / secperday
0379 gamma_DOP = 0.25 _d 0 / (365.25 _d 0 * secperday)
0380 k_Fe = 8. _d -10 / permil
0381 k_PO4 = 1. _d -7 / permil
0382 k_FetoP = 7. _d -6 * CtoP
0383 FetoP_max = 28. _d -6 * CtoP
0384 Fe_lim_min = 0. _d 0
0385 remin_min = 0.3 _d 0
0386 #endif
0387 lambda_0 = 0.19 _d 0 / secperday
0388 resp_frac = 0. _d 0
0389 chl_min = 1. _d -5
0390 theta_Fe_max_hi = 0.04 _d 0
0391 theta_Fe_max_lo = 0.01 _d 0
0392 gamma_irr_mem = 1. _d 0 / secperday
0393 gamma_POM = 0.12 _d 0 / secperday
0394 k_O2 = 20. _d -6 / permil
c0d1c06c15 Matt*0395 kFe_eq_lig_max = 8.0 _d 10 * permil
0396 kFe_eq_lig_min = 8.0 _d 9 * permil
0397 kFe_eq_lig_Femin = 0.05 _d -9 / permil
0398 kFe_eq_lig_irr = 0.1 _d 0
0399 kFe_org = 0.5 _d 0 / secperday * permil**(0.58)
0400 kFe_inorg = 1. _d 3 / secperday * permil**(0.5)
e0f9a7ba0b Matt*0401 FetoC_sed = 1. _d -4
c0d1c06c15 Matt*0402 oxic_min = 1. _d -6 / permil
0403 Ligand = 1. _d -9 / permil
0404 kappa_eppley = 0.063 _d 0
be72e7ae9e Jean*0405 kappa_remin = -0.032 _d 0
c0d1c06c15 Matt*0406 ca_remin_depth = 1343. _d 0
0407 phi_DOM = 0.1 _d 0
0408 phi_sm = 0.18 _d 0
0409 phi_lg = 1. _d 0
0410 wsink0 = 16. _d 0 / secperday
e0f9a7ba0b Matt*0411 wsink0z = 80. _d 0
c0d1c06c15 Matt*0412 wsinkacc = 0.05 _d 0 / secperday
0413 parfrac = 0.4 _d 0
0414 alpfe = 0.01 _d 0
0415 k0 = 0.04 _d 0
e0f9a7ba0b Matt*0416 MLmix_max = 200.0 _d 0
82e538d851 aver*0417 chlsat_locTimWindow(1) = 12.0 _d 0
0418 chlsat_locTimWindow(2) = 13.5 _d 0
e0f9a7ba0b Matt*0419
0420 bling_windFile = ' '
0421 bling_atmospFile = ' '
0422 bling_iceFile = ' '
0423 bling_ironFile = ' '
0424 bling_silicaFile = ' '
0425 bling_psmFile = ' '
0426 bling_plgFile = ' '
0427 bling_pdiazFile = ' '
47de7c1e0e Matt*0428 bling_Pc_2dFile = ' '
0429 bling_Pc_2d_diazFile = ' '
0430 bling_alpha_photo2dFile= ' '
0431 bling_k_Fe2dFile = ' '
0432 bling_k_Fe_diaz2dFile = ' '
af8f3b9ffc Matt*0433 bling_gamma_POM2dFile = ' '
0434 bling_wsink0_2dFile = ' '
0435 bling_phi_DOM2dFile = ' '
0436 bling_phi_sm2dFile = ' '
0437 bling_phi_lg2dFile = ' '
c0d1c06c15 Matt*0438
e0f9a7ba0b Matt*0439 bling_pCO2 = 278. _d -6
0440 river_conc_po4 = 0.007 _d 0
0441 river_dom_to_nut = 0. _d 0
0442
0443 #ifdef ALLOW_EXF
0444 apco2startdate1 = 0
0445 apco2startdate2 = 0
0446 apco2StartTime = UNSET_RL
0447 apco2period = 0.0 _d 0
0448 apco2RepCycle = repeatPeriod
0449 apco2const = 0.0 _d 0
079948e6a6 Matt*0450 apco2_exfremo_intercept = 0.0 _d 0
e0f9a7ba0b Matt*0451 apco2_exfremo_slope = 0.0 _d 0
0452 apco2file = ' '
0453 exf_inscal_apco2 = 1. _d 0
0454 exf_outscal_apco2 = 1. _d 0
079948e6a6 Matt*0455 #ifdef USE_EXF_INTERPOLATION
530382a175 Jean*0456
079948e6a6 Matt*0457
e0f9a7ba0b Matt*0458 apco2_lon0 = inp_lon0
0459 apco2_lat0 = inp_lat0
9f0da36f91 Jean*0460 apco2_nlon = inp_gNx
0461 apco2_nlat = inp_gNy
e0f9a7ba0b Matt*0462 apco2_lon_inc = inp_dLon
079948e6a6 Matt*0463 DO j=1,MAX_LAT_INC
9f0da36f91 Jean*0464 apco2_lat_inc(j) = inp_dLat(j)
079948e6a6 Matt*0465 ENDDO
8125504ce6 Matt*0466 apco2_interpMethod = 1
079948e6a6 Matt*0467 #endif /* USE_EXF_INTERPOLATION */
e0f9a7ba0b Matt*0468 #endif /* ALLOW_EXF */
c0d1c06c15 Matt*0469
be72e7ae9e Jean*0470
e0f9a7ba0b Matt*0471 bling_forcingPeriod = externForcingPeriod
0472 bling_forcingCycle = externForcingCycle
c0d1c06c15 Matt*0473
0474 WRITE(msgBuf,'(A)') ' BLING_READPARMS: opening data.bling'
0475 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0476 I SQUEEZE_RIGHT, myThid )
0477
0478 CALL OPEN_COPY_DATA_FILE( 'data.bling', 'BLING_READPARMS',
0479 O iUnit, myThid )
0480
0481
0482
0483
0484 READ(UNIT=iUnit,NML=ABIOTIC_PARMS)
0485
0486
0487 READ(UNIT=iUnit,NML=BIOTIC_PARMS)
0488
0489
0490 READ(UNIT=iUnit,NML=BLING_FORCING)
0491
0492 WRITE(msgBuf,'(A)')
0493 & ' BLING_READPARMS: finished reading data.BLING'
0494 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
0495 I SQUEEZE_RIGHT, myThid )
0496
0497
7a77863887 Mart*0498 #ifdef SINGLE_DISK_IO
c0d1c06c15 Matt*0499 CLOSE(iUnit)
7a77863887 Mart*0500 #else
0501 CLOSE(iUnit,STATUS='DELETE')
0502 #endif /* SINGLE_DISK_IO */
c0d1c06c15 Matt*0503
e0f9a7ba0b Matt*0504 iUnit = standardMessageUnit
0505
0506 #ifdef CARBONCHEM_SOLVESAPHE
0507 IF ( selectPHsolver.GT.0 ) THEN
0508 WRITE(msgBuf,'(A)')
0509 & 'Using Munhoven (2013) Solvesaphe for pH/pCO2'
0510 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0511 ELSEIF ( selectPHsolver.EQ.0 ) THEN
0512 WRITE(msgBuf,'(A)')
0513 & 'Using Follows et al. (2006) for pH/pCO2'
0514 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0515 ENDIF
0516 #endif
c0d1c06c15 Matt*0517
e0f9a7ba0b Matt*0518
0519 #ifdef CARBONCHEM_SOLVESAPHE
0520 WRITE(msgBuf,'(A)')
0521 & 'Using Munhoven (2013) Solvesaphe carbon coefficients'
0522 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0523
0524 IF ( selectK1K2const.EQ.1 ) THEN
0525 WRITE(msgBuf,'(A)')
0526 & 'Using Millero (1995)/Mehrbach K1 and K2 coefficients'
0527 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0528 ELSEIF ( selectK1K2const.EQ.2 ) THEN
0529 WRITE(msgBuf,'(A)')
0530 & 'Using Roy et al. (1993) K1 and K2 coefficients'
0531 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0532 ELSEIF ( selectK1K2const.EQ.3 ) THEN
0533 WRITE(msgBuf,'(A)')
0534 & 'Using Millero (1995) "consensus" K1 and K2 coefficients'
0535 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0536 ELSEIF ( selectK1K2const.EQ.4 ) THEN
0537 WRITE(msgBuf,'(A)')
0538 & 'Using Luecker et al. (2000) K1 and K2 coefficients'
0539 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0540 ELSEIF ( selectK1K2const.EQ.5 ) THEN
0541 WRITE(msgBuf,'(A)')
0542 & 'Using Millero et al. (2010) K1 and K2 coefficients'
0543 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0544 ELSEIF ( selectK1K2const.EQ.6 ) THEN
0545 WRITE(msgBuf,'(A)')
0546 & 'Using Waters et al. (2014) K1 and K2 coefficients'
0547 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0548 ENDIF
0549 IF ( selectHFconst.EQ.1 ) THEN
0550 WRITE(msgBuf,'(A)')
0551 & 'Using Dickson and Riley (1979) KF coefficient'
0552 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0553 ELSEIF ( selectHFconst.EQ.2 ) THEN
0554 WRITE(msgBuf,'(A)')
0555 & 'Using Perez and Fraga (1987) KF coefficient'
0556 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0557 ENDIF
0558 IF ( selectBTconst.EQ.1 ) THEN
0559 WRITE(msgBuf,'(A)')
0560 & 'Using Uppstrom (1974) BT estimation from salinity'
0561 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0562 ELSEIF ( selectBTconst.EQ.2 ) THEN
0563 WRITE(msgBuf,'(A)')
0564 & 'Using Lee et al (2010) BT estimation from salinity'
0565 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0566 ENDIF
0567 IF ( selectFTconst.EQ.1 ) THEN
0568 WRITE(msgBuf,'(A)')
0569 & 'Using Riley (1965) FT estimation from salinity'
0570 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0571 ELSEIF ( selectBTconst.EQ.2 ) THEN
0572 WRITE(msgBuf,'(A)')
0573 & 'Using Culkin (1965) FT estimation from salinity'
0574 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0575 ENDIF
0576 #else
0577
0578 WRITE(msgBuf,'(A)')
0579 & 'Using Millero (1995)/Mehrbach K1 and K2 coefficients'
0580 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0581 WRITE(msgBuf,'(A)')
0582 & 'Using Dickson and Riley (1979) KF coefficient'
0583 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0584 WRITE(msgBuf,'(A)')
0585 & 'Using Uppstrom (1974) BT estimation from salinity'
0586 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
0587 WRITE(msgBuf,'(A)')
0588 & 'Using Riley (1965) FT estimation from salinity'
0589 CALL PRINT_MESSAGE(msgBuf,iUnit,SQUEEZE_RIGHT,myThid)
c0d1c06c15 Matt*0590 #endif
0591
530382a175 Jean*0592 IF ( errCount.GE.1 ) THEN
0593 WRITE(msgBuf,'(A,I3,A)')
0594 & 'BLING_READPARMS: detected', errCount,' fatal error(s)'
0595 CALL PRINT_ERROR( msgBuf, myThid )
0596 CALL ALL_PROC_DIE( 0 )
0597 STOP 'ABNORMAL END: S/R BLING_READPARMS'
0598 ENDIF
0599
e0f9a7ba0b Matt*0600 #ifdef CARBONCHEM_SOLVESAPHE
0601 IF ( selectHFconst.GT.2 .OR. selectBTconst.GT.2
0602 & .OR. selectFTconst.GT.2 ) THEN
0603 WRITE(msgBuf,'(A)')
0604 & 'BLING_READPARMS: selectHF, selectBT or selectFT > 2'
0605 CALL PRINT_ERROR( msgBuf, myThid )
0606 STOP 'ABNORMAL END: S/R BLING_READPARMS: solvesaphe_const error'
0607 ELSEIF ( selectK1K2const.GT.6 ) THEN
0608 WRITE(msgBuf,'(A)')
0609 & 'BLING_READPARMS: selectK1K2const > 6 '
0610 CALL PRINT_ERROR( msgBuf, myThid )
0611 STOP 'ABNORMAL END: S/R BLING_READPARMS: solvesaphe_const error'
0612 ELSEIF ( selectPHsolver.GT.3 ) THEN
0613 WRITE(msgBuf,'(A)')
0614 & 'BLING_READPARMS: selectPHsolver > 3 '
0615 CALL PRINT_ERROR( msgBuf, myThid )
0616 STOP 'ABNORMAL END: S/R BLING_READPARMS: select pH solver error'
0617 ENDIF
0618 #endif
0619
c0d1c06c15 Matt*0620 _END_MASTER(myThid)
0621
0622
0623 _BARRIER
0624
0625 #endif /* ALLOW_BLING */
0626
0627 RETURN
0628 END