!!---------------------------------------------------------------------- !! *** trclsm.pisces.h90 *** !!---------------------------------------------------------------------- CONTAINS SUBROUTINE trc_lsm !!---------------------------------------------------------------------- !! !! trclsm.pisces.h !! **************** !! !! PURPOSE : !! --------- !! READs and PRINT options for PISCES namelist !! !! MODIFICATIONS: !! -------------- !! original : 99-10 (M.A. Foujols, M. Levy) passive tracer !! addition : 00-01 (L. Bopp) hamocc3,p3zd !! !!---------------------------------------------------------------------- !!---------------------------------------------------------------------- !! local declarations !! ================== CHARACTER (len=32) clname !!--------------------------------------------------------------------- !! TOP 1.0 , LOCEAN-IPSL (2005) !! $Header: /home/opalod/NEMOCVSROOT/NEMO/TOP_SRC/SMS/trclsm.pisces.h90,v 1.7 2007/10/17 14:50:13 opalod Exp $ !! This software is governed by the CeCILL licence see modipsl/doc/NEMO_CeCILL.txt !!--------------------------------------------------------------------- ! 0. initializations ! ------------------ ! NAMELIST/natext/ atcco2 NAMELIST/natbio/caco3r, kdca, nca, part, & & dispo0,conc0,oxymin,grosip, nrdttrc, & & pislope, excret,wsbio,wchl,wchld,resrat,mprat,mzrat, & & grazrat,xprefc,xprefp,unass,xkgraz,xkmort,xksi1, & & xksi2,xremip,xremik,xsirem,xkdoc1,xkdoc2, & & excret2,resrat2,mprat2,mpratm,mzrat2,grazrat2, & & xprefz,xprefpoc,unass2,xkgraz2,xlam1, & & ferat3,conc1,conc2,conc3,concnnh4,concdnh4, & & nitrif,epsher,epsher2,pislope2,wsbio2,sigma1, & & sigma2, zprefc, zprefp, zprefd,fecnm,fecdm, & & chlcnm,chlcdm, sedfeinput NAMELIST/natsms/bdustfer, briver, bndepo, bsedinput #if defined key_trc_kriest NAMELIST/natkriest/xkr_eta,xkr_zeta,xkr_sfact,xkr_mass_min,xkr_mass_max,& & xkr_dnano,xkr_ddiat,xkr_dmeso,xkr_daggr,xkr_stick #endif ! initialize the number of LOGICAL UNIT used ! ------------------------------------------ IF(lwp) THEN WRITE(numout,*) ' ' WRITE(numout,*) ' ROUTINE trclec' WRITE(numout,*) ' **************' WRITE(numout,*) ' ' WRITE(numout,*) ' namelist for PISCES model' WRITE(numout,*) ' ***********************' WRITE(numout,*) ' ' ENDIF clname ='namelist.trc.sms' CALL ctlopn( numnat, clname, 'OLD', 'FORMATTED', 'SEQUENTIAL', & & 1, numout, .FALSE., 1 ) ! 1 Namelist natext : ! ------------------- READ(numnat,natext) IF(lwp) THEN WRITE(numout,*) ' ' WRITE(numout,*) 'natext' WRITE(numout,*) ' ' WRITE(numout,*) 'atmospheric pCO2= ',atcco2 WRITE(numout,*) ' ' ENDIF READ(numnat,natbio) IF(lwp) THEN WRITE(numout,*) 'natbio' WRITE(numout,*) ' ' WRITE(numout,*) & & ' mean rainratio =', caco3r WRITE(numout,*) & & ' diss. rate constant calcite (per month) =', kdca WRITE(numout,*) & & ' order of reaction for calcite dissolution =', nca WRITE(numout,*) & & ' part of calcite not dissolved in guts =', part WRITE(numout,*) & & ' mean Si/C ratio =', grosip WRITE(numout,*) & & ' Calcite dissolution half saturation =', dispo0 WRITE(numout,*) & & ' Phosphate half saturation =', conc0 WRITE(numout,*) & & ' frequence pour la biologie =', nrdttrc WRITE(numout,*) & & ' P-I slope =', pislope WRITE(numout,*) & & ' excretion ratio of phytoplankton =', excret WRITE(numout,*) & & ' POC sinking speed =', wsbio WRITE(numout,*) & & ' quadratic mortality of phytoplankton =', wchl WRITE(numout,*) & & ' maximum quadratic mortality of diatoms =', wchld WRITE(numout,*) & & ' exsudation rate of zooplankton =', resrat WRITE(numout,*) & & ' phytoplankton mortality rate =', mprat WRITE(numout,*) & & ' zooplankton mortality rate =', mzrat WRITE(numout,*) & & ' zoo preference for phyto =', xprefc WRITE(numout,*) & & ' zoo preference for POC =', xprefp WRITE(numout,*) & & ' maximal zoo grazing rate =', grazrat WRITE(numout,*) & & ' non assimilated fraction of phyto by zoo =', unass WRITE(numout,*) & & ' half sturation constant for grazing =', xkgraz WRITE(numout,*) & & ' half saturation constant for mortality =', xkmort WRITE(numout,*) & & ' half saturation constant for Si uptake =', xksi1 WRITE(numout,*) & & ' half saturation constant for Si/C =', xksi2 WRITE(numout,*) & & ' remineralisation rate of POC =', xremip WRITE(numout,*) & & ' remineralization rate of DOC =', xremik WRITE(numout,*) & & ' remineralization rate of Si =', xsirem WRITE(numout,*) & & ' 1st half-sat. of DOC remineralization =', xkdoc1 WRITE(numout,*) & & ' 2nd half-sat. of DOC remineralization =', xkdoc2 WRITE(numout,*) & & ' excretion ratio of diatoms =', excret2 WRITE(numout,*) & & ' exsudation rate of mesozooplankton =', resrat2 WRITE(numout,*) & & ' Diatoms mortality rate =', mprat2 WRITE(numout,*) & & ' Phytoplankton minimum mortality rate =', mpratm WRITE(numout,*) & & ' mesozooplankton mortality rate =', mzrat2 WRITE(numout,*) & & ' zoo preference for zoo =', xprefz WRITE(numout,*) & & ' zoo preference for poc =', xprefpoc WRITE(numout,*) & & ' maximal mesozoo grazing rate =', grazrat2 WRITE(numout,*) & & ' non assimilated fraction of P by mesozoo =', unass2 WRITE(numout,*) & & ' Efficicency of Mesozoo growth =', epsher2 WRITE(numout,*) & & ' Efficiency of microzoo growth =', epsher WRITE(numout,*) & & ' half sturation constant for grazing 2 =', xkgraz2 WRITE(numout,*) & & ' Maximum aggregation rate for diatoms =', wchld WRITE(numout,*) & & ' scavenging rate of Iron =', xlam1 WRITE(numout,*) & & ' Fe/C in zooplankton =', ferat3 WRITE(numout,*) & & ' Phosphate half saturation for diatoms =', conc1 WRITE(numout,*) & & ' Iron half saturation for phyto =', conc2 WRITE(numout,*) & & ' Iron half saturation for diatoms =', conc3 WRITE(numout,*) & & ' NH4 half saturation for phyto =', concnnh4 WRITE(numout,*) & & ' NH4 half saturation for diatoms =', concdnh4 WRITE(numout,*) & & ' NH4 nitrification rate =', nitrif WRITE(numout,*) & & ' P-I slope for diatoms =', pislope2 WRITE(numout,*) & & ' Big particles sinking speed =', wsbio2 WRITE(numout,*) & & ' Fraction of microzoo excretion as DOM =', sigma1 WRITE(numout,*) & & ' Fraction of mesozoo excretion as DOM =', sigma2 WRITE(numout,*) & & ' Microzoo preference for POM =', zprefc WRITE(numout,*) & & ' Microzoo preference for Nanophyto =', zprefp WRITE(numout,*) & & ' Microzoo preference for Diatoms =', zprefd WRITE(numout,*) & & ' Minimum Chl/C in nanophytoplankton =', chlcnm WRITE(numout,*) & & ' Minimum Chl/C in diatoms =', chlcdm WRITE(numout,*) & & ' Maximum Fe/C in nanophytoplankton =', fecnm WRITE(numout,*) & & ' Minimum Fe/C in diatoms =', fecdm WRITE(numout,*) & & ' Coastal release of Iron =', sedfeinput ENDIF READ(numnat,natsms) IF(lwp) THEN WRITE(numout,*) ' ' WRITE(numout,*) 'natsms' WRITE(numout,*) ' ' WRITE(numout,*) 'Dust input from the atmosphere : ', bdustfer WRITE(numout,*) ' ' WRITE(numout,*) 'River input of nutrients : ', briver WRITE(numout,*) ' ' WRITE(numout,*) 'Atmospheric deposition of N : ', bndepo WRITE(numout,*) ' ' WRITE(numout,*) 'Fe input from sediments : ', bsedinput WRITE(numout,*) ' ' ENDIF #if defined key_trc_kriest READ(numnat,natkriest) IF(lwp) THEN WRITE(numout,*) ' ' WRITE(numout,*) 'natkriest' WRITE(numout,*) ' ' WRITE(numout,*) 'Sinking exponent xkr_eta = ', xkr_eta WRITE(numout,*) 'N content exponent xkr_zeta = ', xkr_zeta WRITE(numout,*) 'Sinking factor xkr_sfact = ', xkr_sfact WRITE(numout,*) 'Stickiness xkr_stick = ', xkr_stick WRITE(numout,*) 'Minimum mass for Aggregates xkr_mass_min = ', xkr_mass_min WRITE(numout,*) 'Maximum mass for Aggregates xkr_mass_max = ', xkr_mass_max WRITE(numout,*) 'Size of particles in nano pool xkr_dnano = ', xkr_dnano WRITE(numout,*) 'Size of particles in diatoms pool xkr_ddiat = ', xkr_ddiat WRITE(numout,*) 'Size of particles in mesozoo pool xkr_dmeso = ', xkr_dmeso WRITE(numout,*) 'Size of particles in aggregates pool xkr_daggr = ', xkr_daggr ENDIF ! Computation of some variables xkr_massp = 5.7E-6 * 7.6 * xkr_mass_min**xkr_zeta ! max and min vertical particle speed xkr_wsbio_min = xkr_sfact * xkr_mass_min**xkr_eta xkr_wsbio_max = xkr_sfact * xkr_mass_max**xkr_eta WRITE(numout,*) ' max and min vertical particle speed ',xkr_wsbio_min,xkr_wsbio_max ! ! effect of the sizes of the different living pools on particle numbers ! nano = 2um-20um -> mean size=6.32 um -> ws=2.596 -> xnum=xnnano=2.337 ! diat and microzoo = 10um-200um -> 44.7 -> 8.732 -> xnum=xndiat=3.718 ! mesozoo = 200um-2mm -> 632.45 -> 45.14 -> xnum=xnmeso=7.147 ! aggregates = 200um-10mm -> 1414 -> 74.34 -> xnum=xnaggr=9.877 ! doc aggregates = 1um ! ---------------------------------------------------------- xkr_nnano = 1. / ( xkr_massp * xkr_dnano ) xkr_ndiat = 1. / ( xkr_massp * xkr_ddiat ) xkr_nmeso = 1. / ( xkr_massp * xkr_dmeso ) xkr_naggr = 1. / ( xkr_massp * xkr_daggr ) #endif END SUBROUTINE trc_lsm