- Timestamp:
- 2017-12-26T17:32:56+01:00 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_merge_2017/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmicro.F90
r9125 r9169 8 8 !! 3.4 ! 2011-06 (O. Aumont, C. Ethe) Quota model for iron 9 9 !!---------------------------------------------------------------------- 10 !! p4z_micro :Compute the sources/sinks for microzooplankton11 !! p4z_micro_init :Initialize and read the appropriate namelist12 !!---------------------------------------------------------------------- 13 USE oce_trc ! 14 USE trc ! 15 USE sms_pisces ! 16 USE p4zlim ! 17 USE p4zprod ! 18 USE iom ! 19 USE prtctl_trc ! 10 !! p4z_micro : Compute the sources/sinks for microzooplankton 11 !! p4z_micro_init : Initialize and read the appropriate namelist 12 !!---------------------------------------------------------------------- 13 USE oce_trc ! shared variables between ocean and passive tracers 14 USE trc ! passive tracers common variables 15 USE sms_pisces ! PISCES Source Minus Sink variables 16 USE p4zlim ! Co-limitations 17 USE p4zprod ! production 18 USE iom ! I/O manager 19 USE prtctl_trc ! print control for debugging 20 20 21 21 IMPLICIT NONE … … 25 25 PUBLIC p4z_micro_init ! called in trcsms_pisces.F90 26 26 27 !! * Shared module variables 28 REAL(wp), PUBLIC :: part !: part of calcite not dissolved in microzoo guts 29 REAL(wp), PUBLIC :: xpref2c !: microzoo preference for POC 30 REAL(wp), PUBLIC :: xpref2p !: microzoo preference for nanophyto 31 REAL(wp), PUBLIC :: xpref2d !: microzoo preference for diatoms 32 REAL(wp), PUBLIC :: xthreshdia !: diatoms feeding threshold for microzooplankton 33 REAL(wp), PUBLIC :: xthreshphy !: nanophyto threshold for microzooplankton 34 REAL(wp), PUBLIC :: xthreshpoc !: poc threshold for microzooplankton 35 REAL(wp), PUBLIC :: xthresh !: feeding threshold for microzooplankton 36 REAL(wp), PUBLIC :: resrat !: exsudation rate of microzooplankton 37 REAL(wp), PUBLIC :: mzrat !: microzooplankton mortality rate 38 REAL(wp), PUBLIC :: grazrat !: maximal microzoo grazing rate 39 REAL(wp), PUBLIC :: xkgraz !: non assimilated fraction of P by microzoo 40 REAL(wp), PUBLIC :: unass !: Efficicency of microzoo growth 41 REAL(wp), PUBLIC :: sigma1 !: Fraction of microzoo excretion as DOM 42 REAL(wp), PUBLIC :: epsher !: half sturation constant for grazing 1 27 REAL(wp), PUBLIC :: part !: part of calcite not dissolved in microzoo guts 28 REAL(wp), PUBLIC :: xpref2c !: microzoo preference for POC 29 REAL(wp), PUBLIC :: xpref2p !: microzoo preference for nanophyto 30 REAL(wp), PUBLIC :: xpref2d !: microzoo preference for diatoms 31 REAL(wp), PUBLIC :: xthreshdia !: diatoms feeding threshold for microzooplankton 32 REAL(wp), PUBLIC :: xthreshphy !: nanophyto threshold for microzooplankton 33 REAL(wp), PUBLIC :: xthreshpoc !: poc threshold for microzooplankton 34 REAL(wp), PUBLIC :: xthresh !: feeding threshold for microzooplankton 35 REAL(wp), PUBLIC :: resrat !: exsudation rate of microzooplankton 36 REAL(wp), PUBLIC :: mzrat !: microzooplankton mortality rate 37 REAL(wp), PUBLIC :: grazrat !: maximal microzoo grazing rate 38 REAL(wp), PUBLIC :: xkgraz !: non assimilated fraction of P by microzoo 39 REAL(wp), PUBLIC :: unass !: Efficicency of microzoo growth 40 REAL(wp), PUBLIC :: sigma1 !: Fraction of microzoo excretion as DOM 41 REAL(wp), PUBLIC :: epsher !: half sturation constant for grazing 1 43 42 44 43 !!---------------------------------------------------------------------- … … 57 56 !! ** Method : - ??? 58 57 !!--------------------------------------------------------------------- 59 INTEGER, INTENT(in) :: kt! ocean time step60 INTEGER, INTENT(in) :: knt58 INTEGER, INTENT(in) :: kt ! ocean time step 59 INTEGER, INTENT(in) :: knt ! ??? 61 60 ! 62 61 INTEGER :: ji, jj, jk … … 185 184 ENDIF 186 185 ! 187 IF(ln_ctl) THEN! print mean trends (used for debugging)186 IF(ln_ctl) THEN ! print mean trends (used for debugging) 188 187 WRITE(charout, FMT="('micro')") 189 188 CALL prt_ctl_trc_info(charout) … … 215 214 !!---------------------------------------------------------------------- 216 215 ! 216 IF(lwp) THEN 217 WRITE(numout,*) 218 WRITE(numout,*) 'p4z_micro_init : Initialization of microzooplankton parameters' 219 WRITE(numout,*) '~~~~~~~~~~~~~~' 220 ENDIF 221 ! 217 222 REWIND( numnatp_ref ) ! Namelist nampiszoo in reference namelist : Pisces microzooplankton 218 223 READ ( numnatp_ref, namp4zzoo, IOSTAT = ios, ERR = 901) 219 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namp4zzoo in reference namelist', lwp ) 220 ! 224 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namp4zzoo in reference namelist', lwp ) 221 225 REWIND( numnatp_cfg ) ! Namelist nampiszoo in configuration namelist : Pisces microzooplankton 222 226 READ ( numnatp_cfg, namp4zzoo, IOSTAT = ios, ERR = 902 ) 223 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namp4zzoo in configuration namelist', lwp )224 IF(lwm) WRITE 227 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namp4zzoo in configuration namelist', lwp ) 228 IF(lwm) WRITE( numonp, namp4zzoo ) 225 229 ! 226 230 IF(lwp) THEN ! control print 227 WRITE(numout,*) ' ' 228 WRITE(numout,*) ' Namelist parameters for microzooplankton, namp4zzoo' 229 WRITE(numout,*) ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~' 230 WRITE(numout,*) ' part of calcite not dissolved in microzoo guts part =', part 231 WRITE(numout,*) ' microzoo preference for POC xpref2c =', xpref2c 232 WRITE(numout,*) ' microzoo preference for nano xpref2p =', xpref2p 233 WRITE(numout,*) ' microzoo preference for diatoms xpref2d =', xpref2d 234 WRITE(numout,*) ' diatoms feeding threshold for microzoo xthreshdia =', xthreshdia 235 WRITE(numout,*) ' nanophyto feeding threshold for microzoo xthreshphy =', xthreshphy 236 WRITE(numout,*) ' poc feeding threshold for microzoo xthreshpoc =', xthreshpoc 237 WRITE(numout,*) ' feeding threshold for microzooplankton xthresh =', xthresh 238 WRITE(numout,*) ' exsudation rate of microzooplankton resrat =', resrat 239 WRITE(numout,*) ' microzooplankton mortality rate mzrat =', mzrat 240 WRITE(numout,*) ' maximal microzoo grazing rate grazrat =', grazrat 241 WRITE(numout,*) ' non assimilated fraction of P by microzoo unass =', unass 242 WRITE(numout,*) ' Efficicency of microzoo growth epsher =', epsher 243 WRITE(numout,*) ' Fraction of microzoo excretion as DOM sigma1 =', sigma1 244 WRITE(numout,*) ' half sturation constant for grazing 1 xkgraz =', xkgraz 231 WRITE(numout,*) ' Namelist : namp4zzoo' 232 WRITE(numout,*) ' part of calcite not dissolved in microzoo guts part =', part 233 WRITE(numout,*) ' microzoo preference for POC xpref2c =', xpref2c 234 WRITE(numout,*) ' microzoo preference for nano xpref2p =', xpref2p 235 WRITE(numout,*) ' microzoo preference for diatoms xpref2d =', xpref2d 236 WRITE(numout,*) ' diatoms feeding threshold for microzoo xthreshdia =', xthreshdia 237 WRITE(numout,*) ' nanophyto feeding threshold for microzoo xthreshphy =', xthreshphy 238 WRITE(numout,*) ' poc feeding threshold for microzoo xthreshpoc =', xthreshpoc 239 WRITE(numout,*) ' feeding threshold for microzooplankton xthresh =', xthresh 240 WRITE(numout,*) ' exsudation rate of microzooplankton resrat =', resrat 241 WRITE(numout,*) ' microzooplankton mortality rate mzrat =', mzrat 242 WRITE(numout,*) ' maximal microzoo grazing rate grazrat =', grazrat 243 WRITE(numout,*) ' non assimilated fraction of P by microzoo unass =', unass 244 WRITE(numout,*) ' Efficicency of microzoo growth epsher =', epsher 245 WRITE(numout,*) ' Fraction of microzoo excretion as DOM sigma1 =', sigma1 246 WRITE(numout,*) ' half sturation constant for grazing 1 xkgraz =', xkgraz 245 247 ENDIF 246 248 !
Note: See TracChangeset
for help on using the changeset viewer.