Difference between revisions of "npzd Powell.in"

From WikiROMS
Jump to: navigation, search
Line 118: Line 118:
 
*Nudging/relaxation time scales, inverse scales will be computed internally: [1:[[Variables#NBT|NBT]],[[Variables#Ngrids|Ngrids]]] values expected.
 
*Nudging/relaxation time scales, inverse scales will be computed internally: [1:[[Variables#NBT|NBT]],[[Variables#Ngrids|Ngrids]]] values expected.
 
:<div class="box">        [[Variables#TNUDG|TNUDG]] == 4*0.0d0                        ! days</div>
 
:<div class="box">        [[Variables#TNUDG|TNUDG]] == 4*0.0d0                        ! days</div>
 +
 +
*The lateral boundary conditions are entered with a keyword. A value is expected for each boundary segment per nested grid for each state variable. The biological tracer variables require [1:4,1:[[NBT]],[[Ngrids]]] values. The boundary order is: '''1'''=west, '''2'''=south, '''3'''=east, and '''4'''=north. That is, anticlockwise starting at the western boundary.<br /><br />The keyword is case insensitive and usually has three characters. However, it is possible to have compound keywords, if applicable. For example, the keyword '''RadNud''' implies radiation boundary condition with nudging. This combination is usually used in active/passive radiation conditions.<br /><br />{{note}}'''Notice:''' It is possible to specify the lateral boundary conditions for all biological tracers in a compact form with a single entry. If so, all the biological tracers are assumed to have the same boundary condition as the single entry.<div class="box"><span class="twilightBlue">!  Keyword    Lateral Boundary Condition Type<br />!<br />!  Cla        Clamped                                _____N_____    j=Mm<br />!  Clo        Closed                                |    4    |<br />!  Gra        Gradient                              |          |<br />!  Nes        Nested                              1 W          E 3<br />!  Nud        Nudging                              |          |<br />!  Per        Periodic                              |_____S_____|<br />!  Rad        Radiation                                  2          j=1<br />!                                                  i=1        i=Lm<br />!                  W      S      E      N<br />!                  e      o      a      o<br />!                  s      u      s      r<br />!                  t      t      t      t<br />!                          h              h<br />!<br />!                  1      2      3      4</span><br /><br />  [[Variables#LBC|LBC(isTvar)]] ==  Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 1)]], NO3<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 2)]], phytoplankton<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 3)]], zooplankton<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 4)]], detritus</div>
 +
 +
*Adjoint-based algorithms can have different lateral boundary conditions keywords.<div class="box">[[Variables#ad_LBC|ad_LBC(isTvar)]] ==  Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 1)]], NO3<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 2)]], phytoplankton<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 3)]], zooplankton<br />                    Per    Clo    Per    Clo \    ! [[Variables#idbio|idbio( 4)]], detritus</div>
  
 
*Logical switches to specify which variables to consider on tracers point Sources/Sinks (like river runoff): [1:[[Variables#NBT|NBT]],[[Variables#Ngrids|Ngrids]]] values expected.The switches correspond to the [[#var_tab|Variable Index Table]] at the top of this page.<div class="box">    [[Variables#LtracerSrc|LtracerSrc]] == 4*F</div><!--As an example, if you wanted to exclude '''zooplankton biomass''' from the tracers you would do the following:<div class="box">  [[Variables#LtracerSrc|LtracerSrc]] == 2*T F T</div-->
 
*Logical switches to specify which variables to consider on tracers point Sources/Sinks (like river runoff): [1:[[Variables#NBT|NBT]],[[Variables#Ngrids|Ngrids]]] values expected.The switches correspond to the [[#var_tab|Variable Index Table]] at the top of this page.<div class="box">    [[Variables#LtracerSrc|LtracerSrc]] == 4*F</div><!--As an example, if you wanted to exclude '''zooplankton biomass''' from the tracers you would do the following:<div class="box">  [[Variables#LtracerSrc|LtracerSrc]] == 2*T F T</div-->

Revision as of 17:23, 8 September 2011

Powell NPZD Biological Model Input Script - npzd_Powell.in

The npzd_Powell.in file sets the parameters for the Powell et al. NPZD model. The name of this file is set by the BPARNAM keyword in the ocean.in file. A default npzd_Powell.in standard input ASCII file can be found in the User/External subdirectory of the ROMS source code. In order to include the Powell et al. NPZD model in ROMS you must set BPARNAM correctly and activate the NPZD_POWELL CPP option.


# index Description Units NetCDF variable
1 iNO3_ Nitrate concentration mmol/m3 NO3
2 iPhyt Phytoplankton biomass mmol/m3 phytoplankton
3 iZoop Zooplankton biomass mmol/m3 zooplankton
4 iSDet Detritus concentration mmol/m3 detritus


The "#" column denotes the internal index number within the idbio array while the "index" column is the index within the tracer array t(:,:,:,:,index).


The Powell NPZD model equations and representative parameters may be found in:


Note Notice: Detailed information about ROMS input script file syntax can be found here.


Biological Model Parameters

Input parameter units are specified within brackets ([ ])and default values are specified within braces ({ }).

  • This switch to control the computation of npzd_Franks within nested and/or multiple connected grids. By default this switch is set to TRUE in mod_scalars.F for all grids. Ngrids values are expected. The user has the option, for example, to compute the biology in just one of the nested grids. If so, this switch needs to be consistent with the dimension parameter NBT in mod_param.F. In order to make the model more efficient in memory usage, NBT(:) should be zero in such grids.
Lbiology == T
  • Maximum number of iterations to achieve convergence of the nonlinear solution.
BioIter == 1
  • Initial concentration for analytical uniform initial conditions, [millimole/m3]. It is only used when ANA_BIOLOGY is activated.
BioIni(iNO3_) == 17.0d0  ! nitrate
BioIni(iPhyt) == 1.0d0  ! phytoplankton
BioIni(iZoop) == 1.0d0  ! zooplankton
BioIni(iSDet) == 1.0d0  ! detritus
  • Fraction of shortwave radiation that is photosynthetically active, [nondimensional], {0.43d0}.
PARfrac == 0.43d0
  • Light attenuation due to seawater, [1/m], {0.067d0}.
AttSW == 0.0067d0  ! k_ext
  • Light attenuation due to phytoplankton, self-shading coefficient, [m2/millimole_N], {0.0095d0}.
AttPhy == 0.0095d0  ! k_extP
  • Phytoplankton, initial slope of P-I curve [m2/W], {0.025d0}.
PhyIS == 0.025d0  ! alpha
  • Nitrate uptake rate, [1/day], {1.5d0}.
Vm_NO3 == 1.5d0  ! Vm
  • Phytoplankton mortality rate to Detritus pool, [1/day], {0.1d0}.
PhyMRD == 0.1d0  ! sigmaD
  • Phytoplankton mortality rate to Nitrogen pool, [1/day], {0.0d0}.
PhyMRN == 0.0d0  ! sigmaN
  • Half-saturation for phytoplankton nitrate uptake [millimole_N m-3], {1.0d0}.
K_NO3 == 1.0d0  ! k_N
  • Ivlev constant for zooplankton grazing parameterization [Nondimensional], {14*0.06=0.84d0}
Ivlev == 0.84d0
  • Zooplankton grazing rate, [1/day], {0.52}.
ZooGR == 0.52d0  ! R_m
  • Zooplankton excretion efficiency to Detritus pool [nondimensional], {0.3d0}
ZooEED == 0.0d0  ! gammaD
  • Zooplankton excretion efficiency to Nitrogen pool [nondimensional], {0.3d0}
ZooEEN == 0.3d0  ! gammaN
  • Zooplankton mortality rate to Detritus pool, [1/day], {0.0d0}.
ZooMRD == 0.145d0  ! zetaD
  • Zooplankton mortality rate to Nitrogen pool, [1/day], {0.145d0}.
ZooMRN == 0.0d0  ! zetaN
  • Detritus remineralization rate, [1/day], {0.1d0}.
DetRR == 1.03d0  ! delta
  • Vertical sinking velocity for phytoplankton [m/day], {0.0d0}.
wPhy == 0.0d0  ! wP
  • Detrital sinking rate, [m/day], {8.0d0}.
wDet == 8.0d0  ! wD
  • Lateral, constant, harmonic/biharmonic horizontal diffusion of biological tracer for nonlinear model and adjoint-based algorithms: [1:NBT,Ngrids] values expected.
TNU2 == 4*5.0d0  ! m2/s
TNU4 == 4*0.0d0  ! m4/s

ad_TNU2 == 4*0.0d0  ! m2/s
ad_TNU4 == 4*0.0d0  ! m4/s
  • Vertical mixing coefficients for biological tracers: [1:NBT,Ngrids] values expected.
AKT_BAK == 4*1.0d-6  ! m2/s

ad_AKT_fac == 4*1.0d0  ! nondimensional
  • Nudging/relaxation time scales, inverse scales will be computed internally: [1:NBT,Ngrids] values expected.
TNUDG == 4*0.0d0  ! days
  • The lateral boundary conditions are entered with a keyword. A value is expected for each boundary segment per nested grid for each state variable. The biological tracer variables require [1:4,1:NBT,Ngrids] values. The boundary order is: 1=west, 2=south, 3=east, and 4=north. That is, anticlockwise starting at the western boundary.

    The keyword is case insensitive and usually has three characters. However, it is possible to have compound keywords, if applicable. For example, the keyword RadNud implies radiation boundary condition with nudging. This combination is usually used in active/passive radiation conditions.

    NoteNotice: It is possible to specify the lateral boundary conditions for all biological tracers in a compact form with a single entry. If so, all the biological tracers are assumed to have the same boundary condition as the single entry.
    ! Keyword Lateral Boundary Condition Type
    !
    ! Cla Clamped _____N_____ j=Mm
    ! Clo Closed | 4 |
    ! Gra Gradient | |
    ! Nes Nested 1 W E 3
    ! Nud Nudging | |
    ! Per Periodic |_____S_____|
    ! Rad Radiation 2 j=1
    ! i=1 i=Lm
    ! W S E N
    ! e o a o
    ! s u s r
    ! t t t t
    ! h h
    !
    ! 1 2 3 4


    LBC(isTvar) == Per Clo Per Clo \  ! idbio( 1), NO3
    Per Clo Per Clo \  ! idbio( 2), phytoplankton
    Per Clo Per Clo \  ! idbio( 3), zooplankton
    Per Clo Per Clo \  ! idbio( 4), detritus
  • Adjoint-based algorithms can have different lateral boundary conditions keywords.
    ad_LBC(isTvar) == Per Clo Per Clo \  ! idbio( 1), NO3
    Per Clo Per Clo \  ! idbio( 2), phytoplankton
    Per Clo Per Clo \  ! idbio( 3), zooplankton
    Per Clo Per Clo \  ! idbio( 4), detritus
  • Logical switches to specify which variables to consider on tracers point Sources/Sinks (like river runoff): [1:NBT,Ngrids] values expected.The switches correspond to the Variable Index Table at the top of this page.
    LtracerSrc == 4*F
  • Logical switches to activate writing of biological fields into history output file. [1:NBT,Ngrids] values expected. The switches correspond to the Variable Index Table at the top of this page.
Hout(idTvar) == 4*T  ! NO3, ... biological tracer
Hout(idTvar) == 4*F  ! NO3_sflux, ... surface tracer flux
  • Logical switches to activate writing of time-averaged fields into averages output file. [1:NBT,Ngrids] values expected.
Aout(idTvar) == 4*T  ! NO3, ... biological tracer
  • Logical switches to activate writing of time-averaged, biological tracer diagnostic terms into the diagnostic output file. [1:NBT,Ngrids] values expected.
Dout(iTrate) == 4*T  ! NO3_rate, ... time rate of change
Dout(iThadv) == 4*T  ! NO3_hadv, ... horizontal total advection
Dout(iTxadv) == 4*T  ! NO3_xadv, ... horizontal XI-advection
Dout(iTyadv) == 4*T  ! NO3_yadv, ... horizontal ETA-advection
Dout(iTvadv) == 4*T  ! NO3_vadv, ... vertical advection
Dout(iThdif) == 4*T  ! NO3_hdiff, ... horizontal total diffusion
Dout(iTxdif) == 4*T  ! NO3_xdiff, ... horizontal XI-diffusion
Dout(iTydif) == 4*T  ! NO3_ydiff, ... horizontal ETA-diffusion
Dout(iTsdif) == 4*T  ! NO3_sdiff, ... horizontal S-diffusion
Dout(iTvdif) == 4*T  ! NO3_vdiff, ... vertical diffusion