Difference between revisions of "Variables"

From WikiROMS
Jump to navigationJump to search
 
(29 intermediate revisions by 2 users not shown)
Line 40: Line 40:
==<span class="alphabet">A</span>==
==<span class="alphabet">A</span>==


;<span id="ADJname"></span>ADJname
;<span id="ad_Akt_fac"></span>ad_Akt_fac
:Adjoint-based algorithms vertical mixing, basic state, scale factor (nondimensional) for active ([[#NAT|NAT]]) and inert ([[#NPT|NPT]]) tracer variables. In some applications, smaller/larger values of vertical mixing are necessary for stability. It is only used when the [[C Preprocessor|CPP option]] [[Options#FORWARD_MIXING|FORWARD_MIXING]] is activated.
:'''dimension =''' '''ad_Akt_fac'''([[#MT|MT]],[[#Ngrids|Ngrids]])
:'''option =''' [[Options#FORWARD_MIXING|FORWARD_MIXING]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_AKT_fac
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="ad_Akv_fac"></span>ad_Akv_fac
:Adjoint-based algorithms vertical mixing, basic state, scale factor (nondimensional) for momentum. In some applications, smaller/larger values of vertical mixing are necessary for stability. It is only used when the [[C Preprocessor|CPP option]] [[Options#FORWARD_MIXING|FORWARD_MIXING]] is activated.
:'''dimension =''' '''ad_Akv_fac'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FORWARD_MIXING|FORWARD_MIXING]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_AKV_fac
:'''input =''' [[roms.in]]
 
;<span id="ad_LBC"></span>ad_LBC
:Adjoint-based algorithms lateral boundary conditions.
:'''dimension =''' '''ad_LBC'''(4,[[#nLBCvar|nLBCvar]],[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_param.F]]
:'''keyword =''' ad_LBC
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="ad_tnu2"></span>ad_tnu2
:Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m<sup>2</sup>/s) for active ([[#NAT|NAT]]) and inert ([[#NPT|NPT]]) tracer variables. If variable horizontal diffusion is activated, ad_tnu2 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
:'''dimension =''' '''ad_tnu2'''([[#MT|MT]],[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_TNU2
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="ad_tnu4"></span>ad_tnu4
:Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m<sup>4</sup>/s) for active ([[#NAT|NAT]]) and inert ([[#NPT|NPT]]) tracer variables. If variable horizontal diffusion is activated, ad_tnu4 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
:'''dimension =''' '''ad_tnu4'''([[#MT|MT]],[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_TNU4
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="ad_visc2"></span>ad_visc2
:Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m<sup>2</sup>/s) momentum. If variable horizontal viscosity is activated, ad_visc2 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
:'''dimension =''' '''ad_visc2'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_VISC2
:'''input =''' [[roms.in]]
 
;<span id="ad_visc4"></span>ad_visc4
:Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m<sup>4</sup>/s) for momentum. If variable horizontal viscosity is activated, ad_visc4 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
:'''dimension =''' '''ad_visc4'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_VISC4
:'''input =''' [[roms.in]]
 
;<span id="ad_VolCons"></span>ad_VolCons
:Lateral open boundary edge volume conservation switch for adjoint-based algorithms. This is usually activated with radiation boundary conditions to enforce global mass conservation. Notice that these switches should not be activated if tidal forcing enabled.
:'''dimension =''' '''ad_VolCons'''(4,[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ad_VolCons
:'''input =''' [[roms.in]]
 
;<span id="ADM"></span>ADM
:Adjoint output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Adjoint output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ADJname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ADM'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' ADJNAME
:'''keyword =''' ADJNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ADSname"></span>ADSname
;<span id="ADS"></span>ADS
:Adjoint sensitivity functionals input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Adjoint sensitivity functionals input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ADSname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ADS'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' ADSNAME
:'''keyword =''' ADSNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Akk_bak"></span>Akk_bak
;<span id="Akk_bak"></span>Akk_bak
Line 63: Line 127:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' AKK_BAK
:'''keyword =''' AKK_BAK
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Akp_bak"></span>Akp_bak
;<span id="Akp_bak"></span>Akp_bak
Line 72: Line 136:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' AKP_BAK
:'''keyword =''' AKP_BAK
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Akt_bak"></span>Akt_bak
;<span id="Akt_bak"></span>Akt_bak
Line 81: Line 145:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keywords =''' AKT_BAK, MUD_AKT_BAK, SAND_AKT_BAK
:'''keywords =''' AKT_BAK, MUD_AKT_BAK, SAND_AKT_BAK
:'''input =''' [[biology.in]], [[ocean.in]], [[sediment.in]]
:'''input =''' [[biology.in]], [[roms.in]], [[sediment.in]]
 
;<span id="Akt_limit"></span>Akt_limit
:Upper threshold values to limit vertical mixing coefficients computed from vertical mixing parameterizations for tracer type variables. Although this is an engineering fix, the vertical mixing values inferred from ocean observations are rarely higher than this upper limit value.
:'''dimension ='''
:'''units =''' meters<sup>2</sup> second<sup>-1</sup>
:'''option = '''
:'''routine =''' [[gls_corstep.F]], [[lmd_vmix.F]], [[mod_scalars.F]], [[my25_corstep.F]]
:'''keywords =''' AKT_LIMIT
:'''input =''' [[roms.in]]


;<span id="Akv_bak"></span>Akv_bak
;<span id="Akv_bak"></span>Akv_bak
Line 90: Line 163:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' AKV_BAK
:'''keyword =''' AKV_BAK
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Akv_limit"></span>Akv_limit
:Upper threshold values to limit vertical mixing coefficients computed from vertical mixing parameterizations for momentum. Although this is an engineering fix, the vertical mixing values inferred from ocean observations are rarely higher than this upper limit value.
:'''dimension ='''
:'''units =''' meters<sup>2</sup> second<sup>-1</sup>
:'''option = '''
:'''routine =''' [[gls_corstep.F]], [[lmd_vmix.F]], [[mod_scalars.F]], [[my25_corstep.F]]
:'''keywords =''' AKV_LIMIT
:'''input =''' [[roms.in]]
 
<section begin=Aout />;<span id="Aout"></span>[[Aout]]
:Set of switches that determine what fields are written to the averages output file ([[Variables#AVGname|AVGname]]).
:'''dimension =''' '''Aout'''([[Variables#NV|NV]],[[Variables#Ngrids|Ngrids]])
:'''option = '''
:'''routine =''' [[mod_ncparam.F]]
:'''keyword =''' Aout
:'''input =''' [[roms.in]]<section end=Aout />


;<span id="aparnam"></span>aparnam
;<span id="aparnam"></span>aparnam
Line 97: Line 187:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' APARNAM
:'''keyword =''' APARNAM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="AVGname"></span>AVGname
;<span id="AVG"></span>AVG
:Averages output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Averages output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''AVGname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''AVG'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' AVGNAME
:'''keyword =''' AVGNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">B</span>==
==<span class="alphabet">B</span>==
;<span id="balance"></span>balance
:Balance operator logical switches for state variables to consider in the error covariance off-diagonal multivariate constraints:
::<div class="box"><span class="blue">balance</span>([[#isSalt|isSalt]]) = T,        salinity<br /><span class="blue">balance</span>([[#isFsur|isFsur]]) = T,        free-surface<br /><span class="blue">balance</span>([[#isVbar|isVbar]]) = F,        2D momentum (ubar, vbar)<br /><span class="blue">balance</span>([[#isVvel|isVvel]]) = T,        3D momentum (u, v)</div>
:Guidlines:
:#The salinity contribution, <span class="blue">balance</span>([[#isSalt|isSalt]]), depends only on temperature. Notice that temperature is used establish the balanced part of the other state variables.
:#The free-surface contribution, <span class="blue">balance</span>([[#isFsur|isFsur]]), depends on salinity since we need to compute balanced density and integrate properly using [[#LNM_flag|LNM_flag]] and [[#LNM_depth|LNM_depth]]. This implies that <span class="blue">balance</span>([[#isSalt|isSalt]]) needs to be '''TRUE''' too. It is independent of the 2D or 3D balance velocity terms.
:#The 3D momentum, <span class="blue">balance</span>([[#isVvel|isVvel]]), depends on salinity since we need to compute balanced density.  This implies that <span class="blue">balance</span>([[#isSalt|isSalt]]) needs to be '''TRUE''' too.
:'''dimension =''' '''balance'''([[#NV|NV]])
:'''routine =''' [[ad_balance.F]], [[mod_scalars.F]], [[read_asspar.F]], [[tl_balance.F]], [[zeta_balance.F]]
:'''keyword =''' balance
:'''input =''' [[s4dvar.in]]


;<span id="blk_ZQ"></span>blk_ZQ
;<span id="blk_ZQ"></span>blk_ZQ
Line 116: Line 218:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' BLK_ZQ
:'''keyword =''' BLK_ZQ
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="blk_ZT"></span>blk_ZT
;<span id="blk_ZT"></span>blk_ZT
Line 125: Line 227:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' BLK_ZT
:'''keyword =''' BLK_ZT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="blk_ZW"></span>blk_ZW
;<span id="blk_ZW"></span>blk_ZW
Line 134: Line 236:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' BLK_ZW
:'''keyword =''' BLK_ZW
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="bparnam"></span>bparnam
;<span id="bparnam"></span>bparnam
Line 141: Line 243:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' BPARNAM
:'''keyword =''' BPARNAM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="BRYname"></span>BRYname
;<span id="BRY"></span>BRY
:Open boundary conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Open boundary conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''BRYname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''BRY'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' BRYNAME
:'''keyword =''' BRYNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="bvf_bak"></span>bvf_bak
;<span id="bvf_bak"></span>bvf_bak
Line 156: Line 258:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' BVF_BAK
:'''keyword =''' BVF_BAK
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">C</span>==
==<span class="alphabet">C</span>==
Line 166: Line 268:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' CHARNOK_ALPHA
:'''keyword =''' CHARNOK_ALPHA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="CLMname"></span>CLMname
;<span id="CLM"></span>CLM
:Climatology input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Climatology input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''CLMname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''CLM'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' CLMNAME
:'''keyword =''' CLMNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="CnormB"></span>CnormB
:Compute (T/F) open boundary conditions error covariance normalization factors:
::<div class="box">CnormB([[#isFsur|isFsur]])  free-surface<br />CnormB([[#isUbar|isUbar]])  2D U-momentum<br />CnormB([[#isVbar|isVbar]])  2D V-momentum<br />CnormB([[#isUvel|isUvel]])  3D U-momentum<br />CnormB([[#isVvel|isVvel]])  3D V-momentum<br />CnormB([[#isTvar|isTvar]])  tracers ([[#NT|NT]] values exppected)</div>
:'''dimension =''' '''CnormB'''([[#MstateVar|MstateVar]], 4)
:'''routine =''' [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' CnormB
:'''input =''' [[s4dvar.in]]
 
;<span id="CnormF"></span>CnormF
:Compute (T/F) surface forcing error covariance normalization factors:
::<div class="box">CnormF([[#isTsur|isTsur]])  tracer flux ([[#NT|NT]] values exppected)<br />CnormF([[#isUstr|isUstr]])  wind U-stress<br />CnormF([[#isVstr|isVstr]])  wind V-stress</div>
:'''dimension =''' '''CnormF'''(2 + [[#NT|NT]])
:'''routine =''' [[read_asspar.F]]
:'''keyword =''' CnormF
:'''input =''' [[s4dvar.in]]
 
;<span id="CnormI"></span>CnormI
:Compute (T/F) initial conditions error covariance normalization factors:
::<div class="box">CnormI([[#isFsur|isFsur]])  free-surface<br />CnormI([[#isUbar|isUbar]])  2D U-momentum<br />CnormI([[#isVbar|isVbar]])  2D V-momentum<br />CnormI([[#isUvel|isUvel]])  3D U-momentum<br />CnormI([[#isVvel|isVvel]])  3D V-momentum<br />CnormI([[#isTvar|isTvar]])  tracers ([[#NT|NT]] values exppected)</div>
:'''dimension =''' '''CnormI'''([[#MstateVar|MstateVar]])
:'''routine =''' [[read_asspar.F]]
:'''keyword =''' CnormI
:'''input =''' [[s4dvar.in]]
 
;<span id="CnormM"></span>CnormM
:Compute (T/F) model error covariance normalization factors:
::<div class="box">CnormM([[#isFsur|isFsur]])  free-surface<br />CnormM([[#isUbar|isUbar]])  2D U-momentum<br />CnormM([[#isVbar|isVbar]])  2D V-momentum<br />CnormM([[#isUvel|isUvel]])  3D U-momentum<br />CnormM([[#isVvel|isVvel]])  3D V-momentum<br />CnormM([[#isTvar|isTvar]])  tracers ([[#NT|NT]] values exppected)</div>
:'''dimension =''' '''CnormM'''([[#MstateVar|MstateVar]])
:'''routine =''' [[read_asspar.F]]
:'''keyword =''' CnormM
:'''input =''' [[s4dvar.in]]


;<span id="crgban_cw"></span>crgban_cw
;<span id="crgban_cw"></span>crgban_cw
Line 182: Line 316:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' CRGBAN_CW
:'''keyword =''' CRGBAN_CW
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Csed"></span>Csed
;<span id="Csed"></span>Csed
Line 202: Line 336:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' DCRIT
:'''keyword =''' DCRIT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="DendS"></span>DendS
;<span id="DendS"></span>DendS
Line 211: Line 345:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' DendS
:'''keyword =''' DendS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="DIAname"></span>DIAname
;<span id="DIA"></span>DIA
:Diagnostics output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Diagnostics output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''DIAname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''DIA'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' DIANAME
:'''keyword =''' DIANAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
<section begin=Dout />;<span id="Dout"></span>[[Dout]]
:Set of switches that determine what fields are written to the diagnostics output file ([[Variables#DIAname|DIAname]]).
:'''dimension =''' '''Dout'''([[Variables#NV|NV]],[[Variables#Ngrids|Ngrids]])
:'''option = '''
:'''routine =''' [[mod_ncparam.F]]
:'''keyword =''' Dout
:'''input =''' [[roms.in]]<section end=Dout />


<section begin=dstart />;<span id="dstart"></span>[[dstart]]
<section begin=dstart />;<span id="dstart"></span>[[dstart]]
Line 227: Line 369:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' DSTART
:'''keyword =''' DSTART
:'''input =''' [[ocean.in]]<section end=dstart />
:'''input =''' [[roms.in]]<section end=dstart />


;<span id="DstrS"></span>DstrS
;<span id="DstrS"></span>DstrS
Line 236: Line 378:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' DstrS
:'''keyword =''' DstrS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="dt"></span>dt
;<span id="dt"></span>dt
Line 244: Line 386:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' DT
:'''keyword =''' DT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="dTdz_min"></span>dTdz_min
:Minimum d(T)/d(z) above which the balanced salinity ([[#deltaS_b|deltaS_b]]) is computed. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''dTdz_min'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[ad_balance.F]], [[mod_scalars.F]], [[read_asspar.F]], [[tl_balance.F]]
:'''keyword =''' dTdz_min
:'''input =''' [[s4dvar.in]]


;<span id="Dwave"></span>Dwave
;<span id="Dwave"></span>Dwave
Line 271: Line 421:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ERstr
:'''keyword =''' ERstr
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ERend"></span>ERend
;<span id="ERend"></span>ERend
Line 278: Line 428:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ERend
:'''keyword =''' ERend
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="EWperiodic"></span>EWperiodic
:East-West periodic boundary condition.
:'''dimension =''' '''EWperiodic'''([[#Ngrids|Ngrids]])
:'''option = '''


<!--
;<span id="ExtraIndex"></span>ExtraIndex
:Extra-observation class identification indices, as specified in input observation NetCDF file variable "obs_type".  The index has to be a number greater than 7 + 2 * [[#NT|NT]], where NT is the total of active plus passive tracers. [[#NextraObs|NextraObs]] values are expected for this Keyword. This parameter is only processed when [[#NextraObs|NextraObs]] > 0.
:'''dimension =''' '''ExtraIndex'''([[#NextraObs|NextraObs]])
:'''routine =''' [[mod_fourdvar.F]], [[read_asspar.F]]
:'''keyword =''' ExtraIndex
:'''input =''' [[s4dvar.in]]
;<span id="ExtraName"></span>ExtraName
:Extra-observation class names. [[#NextraObs|NextraObs]] values are expected. This parameter is only processed when [[#NextraObs|NextraObs]] > 0.  Enter one class type name per line and use a backslash for continuation. For example:
::<div class="box">ExtraName = radials  \<br>            pressure<br></div>
:Currently, however, only the radials operator is coded.
:'''dimension =''' '''ExtraName'''([[#NextraObs|NextraObs]])
:'''routine =''' [[mod_fourdvar.F]], [[read_asspar.F]]
:'''keyword =''' ExtraName
:'''input =''' [[s4dvar.in]]
-->
==<span class="alphabet">F</span>==
==<span class="alphabet">F</span>==
;<span id="fbionam"></span>fbionam
:Input script file name containing biological floats behavior model parameters.
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]], [[mod_iounits.F]], [[read_fltpar.F]]
:'''keyword =''' FBIONAM
:'''input =''' [[floats.in]]


;<span id="Fcoor"></span>Fcoor
;<span id="Fcoor"></span>Fcoor
:Initial horizontal location ([[#Fx0|Fx0]] and [[#Fy0|Fy0]]) coordinate type. If <span class="blue">Fcoor</span>&nbsp;=&nbsp;0 then rho grid points are used. If <span class="blue">Fcoor</span>&nbsp;=&nbsp;1 then location is given in latitude and longitude. <span class="blue">Fcoor</span> is column '''C''' in the [[POS]] specification at the end of the [[floats.in]] file.
:Initial horizontal location ([[#Fx0|Fx0]] and [[#Fy0|Fy0]]) coordinate type. If <span class="blue">Fcoor</span>&nbsp;=&nbsp;0 then rho grid points are used. If <span class="blue">Fcoor</span>&nbsp;=&nbsp;1 then location is given in latitude and longitude. <span class="blue">Fcoor</span> is column '''C''' in the [[POS]] specification at the end of the [[floats.in]] file.
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 290: Line 469:
;<span id="Fcount"></span>Fcount
;<span id="Fcount"></span>Fcount
:Number of floats to be released at the specified ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) location. It must be equal or greater than one. If <span class="blue">Fcount</span> is greater than one, a cluster distribution of floats centered at ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) is activated. The total number of floats trajectories to compute must add up to [[#Nfloats|NFLOATS]]. <span class="blue">Fcount</span> is column '''N''' in the [[POS]] specification at the end of the [[floats.in]] file.
:Number of floats to be released at the specified ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) location. It must be equal or greater than one. If <span class="blue">Fcount</span> is greater than one, a cluster distribution of floats centered at ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) is activated. The total number of floats trajectories to compute must add up to [[#Nfloats|NFLOATS]]. <span class="blue">Fcount</span> is column '''N''' in the [[POS]] specification at the end of the [[floats.in]] file.
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]


;<span id="Fdt"></span>Fdt
;<span id="FCTA"></span>FCTA
:Input NetCDF filename for the forecasts initialized from the analysis of the current 4D-Var cycle.
:'''option ='''
:'''routine ='''
:'''keyword = ''' FCTnameA
:'''input =''' [[roms.in]]
 
;<span id="FCTB"></span>FCTB
:Input NetCDF filename for the forecasts initialized from the analysis of the previous 4D-Var cycle.
:'''option ='''
:'''routine ='''
:'''keyword = ''' FCTnameB
:'''input =''' [[roms.in]]
 
;<span id="Fdt"></span>Fdt
:Float cluster release time interval in days. This is only used if [[#Fcount|Fcount]] is greater than 1. If <span class="blue">Fdt</span> gt; 0 a cluster of floats will be deployed from ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) at <span class="blue">Fdt</span> intervals until [[#Fcount|Fcount]] floats are released. If <span class="blue">Fdt</span> = 0 [[#Fcount|Fcount]] floats will be deployed simultaneously with a distribution centered at ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) and defined by ([[#Fdx|Fdx]],[[#Fdy|Fdy]],[[#Fdz|Fdz]]). This value must be of type real (i.e. 5.d0).
:Float cluster release time interval in days. This is only used if [[#Fcount|Fcount]] is greater than 1. If <span class="blue">Fdt</span> gt; 0 a cluster of floats will be deployed from ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) at <span class="blue">Fdt</span> intervals until [[#Fcount|Fcount]] floats are released. If <span class="blue">Fdt</span> = 0 [[#Fcount|Fcount]] floats will be deployed simultaneously with a distribution centered at ([[#Fx0|Fx0]],[[#Fy0|Fy0]],[[#Fz0|Fz0]]) and defined by ([[#Fdx|Fdx]],[[#Fdy|Fdy]],[[#Fdz|Fdz]]). This value must be of type real (i.e. 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 302: Line 495:
;<span id="Fdx"></span>Fdx
;<span id="Fdx"></span>Fdx
:Cluster x-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:Cluster x-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 308: Line 501:
;<span id="Fdy"></span>Fdy
;<span id="Fdy"></span>Fdy
:Cluster y-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:Cluster y-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 314: Line 507:
;<span id="Fdz"></span>Fdz
;<span id="Fdz"></span>Fdz
:Cluster z-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:Cluster z-distribution parameter. This is only used if [[#Fcount|Fcount]] is greater than '''1''' and [[#Fdt|Fdt]]&nbsp;=&nbsp;0. This value must be of type real (''i.e.'' 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]


;<span id="FLTname"></span>FLTname
;<span id="FLT"></span>FLT
:floats output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:floats output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''FLTname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''FLT'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' FLTNAME
:'''keyword =''' FLTNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="FOIA"></span>FOIA
:Input adjoint forcing NetCDF filename for computing observations impacts during the analysis-forecast cycle. If the forecast error metric is defined in state-space, then FOInameA should be regular adjoint forcing files just like [[ADSname]]. If the forecast error metric is defined in observation space ([[Options#OBS_SPACE|OBS_SPACE]] is activated) then the forecast is initialized OIFnameA (specified in [[s4dvar4.in]] input script) will have the structure of a 4D-Var observation file.
:'''option ='''
:'''routine ='''
:'''keyword = ''' FOInameA
:'''input =''' [[roms.in]]
 
;<span id="FOIB"></span>FOIB
:Input adjoint forcing NetCDF filename for computing observations impacts during the analysis-forecast cycle. If the forecast error metric is defined in state-space, then FOInameB should be regular adjoint forcing files just like [[ADSname]]. If the forecast error metric is defined in observation space ([[Options#OBS_SPACE|OBS_SPACE]] is activated) then the forecast is initialized OIFnameB (specified in [[s4dvar4.in]] input script) will have the structure of a 4D-Var observation file.
:'''option ='''
:'''routine ='''
:'''keyword = ''' FOInameB
:'''input =''' [[roms.in]]
 
;<span id="food_supply"></span>food_supply
:Initial food supply (constant source) concentration (mg Carbon/l). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''food_supply'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' food_supply
:'''input =''' [[behavior_oyster.in]]


;<span id="fposnam"></span>fposnam
;<span id="fposnam"></span>fposnam
Line 331: Line 546:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword = ''' FPOSNAM
:'''keyword = ''' FPOSNAM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Fprint"></span>Fprint
:Switch to control the printing of floats positions to standard output file. This switch can be used to turn off the printing of information when thousands of floats are released. This information is still in the output floats NetCDF file. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Fprint'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[mod_floats.F]], [[read_fltpar.F]]
:'''keyword =''' Fprint
:'''input =''' [[floats.in]]


;<span id="FRCname"></span>FRCname
;<span id="FRC"></span>FRC
:Input forcing fields file name(s). [[#Ngrids|Ngrids]] values are expected.
:Input forcing fields file name(s). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''FRCname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''FRC'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' FRCNAME
:'''keyword =''' FRCNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="frrec"></span>frrec
;<span id="frrec"></span>frrec
Line 351: Line 574:
;<span id="Ft0"></span>Ft0
;<span id="Ft0"></span>Ft0
:Time, in days, of float release after model initialization. This value must be of type real (i.e. 0.d0).
:Time, in days, of float release after model initialization. This value must be of type real (i.e. 0.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]


<wikitex>;<span id="Ftype"></span>Ftype
;<span id="Ftype"></span>Ftype
:Float trajectory type. If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;1, float(s) will be 3D Lagrangrian particles.  If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;2, float(s) will be isobaric particles ($p=g*(z+zeta)=constant$). If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;3, float(s) will be geopotential (constant depth) particles.</wikitex>
:Float trajectory type. If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;1, float(s) will be 3D Lagrangrian particles.  If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;2, float(s) will be isobaric particles (<math>p=g*(z+zeta)=\text{constant}</math>). If [[Variables#Ftype|Ftype]]&nbsp;=&nbsp;3, float(s) will be geopotential (constant depth) particles.
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]


;<span id="FWDname"></span>FWDname
;<span id="FWD"></span>FWD
:Forward trajectory input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Forward trajectory input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''FWDname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''FWD'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[read_phypar.F]]
:'''keyword =''' FWDNAME
:'''keyword =''' FWDNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Fx0"></span>Fx0
;<span id="Fx0"></span>Fx0
:Initial float(s) x-location in grid units or longitude depending on the value of [[#Fcoor|Fcoor]]. This value must be of type real (''i.e.'' 5.d0).
:Initial float(s) x-location in grid units or longitude depending on the value of [[#Fcoor|Fcoor]]. This value must be of type real (''i.e.'' 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 377: Line 600:
;<span id="Fy0"></span>Fy0
;<span id="Fy0"></span>Fy0
:Initial float(s) y-location in grid units or longitude depending on the value of [[#Fcoor|Fcoor]]. This value must be of type real (''i.e.'' 5.d0).
:Initial float(s) y-location in grid units or longitude depending on the value of [[#Fcoor|Fcoor]]. This value must be of type real (''i.e.'' 5.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 383: Line 606:
;<span id="Fz0"></span>Fz0
;<span id="Fz0"></span>Fz0
:Initial float(s) z-location in vertical levels or depth. If <span class="blue">Fz0</span> is less than or equal to zero then <span class="blue">Fz0</span> is the initial depth in meters. If <span class="blue">Fz0</span> is greater than 0 and less than [[#N|N(ng)]] the initial position is relative to the W grid (0 is the bottom and N is the surface).  This value must be of type real (''i.e.'' -45.d0).
:Initial float(s) z-location in vertical levels or depth. If <span class="blue">Fz0</span> is less than or equal to zero then <span class="blue">Fz0</span> is the initial depth in meters. If <span class="blue">Fz0</span> is greater than 0 and less than [[#N|N(ng)]] the initial position is relative to the W grid (0 is the bottom and N is the surface).  This value must be of type real (''i.e.'' -45.d0).
:'''option =''' [[FLOATS]]
:'''option =''' [[Options#FLOATS|FLOATS]]
:'''routine =''' [[inp_par.F]]
:'''routine =''' [[inp_par.F]]
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
Line 394: Line 617:
:'''routine =''' [[mod_grid.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_grid.F]], [[mod_scalars.F]]
:'''keyword =''' GAMMA2
:'''keyword =''' GAMMA2
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Gfactor_DS"></span>Gfactor_DS
:Salinity I-axis increment for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_DS
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Gfactor_DT"></span>Gfactor_DT
:Temperature J-axis increment for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_DT
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Gfactor_Im"></span>Gfactor_Im
:Number of values in salinity I-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_Im
:'''input =''' [[behavior_oyster.in]]


;<span id="gls_c1"></span>gls_c1
;<span id="Gfactor_Jm"></span>Gfactor_Jm
:Generic length-scale closure independent shear production coefficient. [[#Ngrids|Ngrids]] values are expected.
:Number of values in temperature J-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_Jm
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Gfactor_S0"></span>Gfactor_S0
:Starting value for salinity I-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_S0
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Gfactor_T0"></span>Gfactor_T0
:Starting value for temperature J-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_T0
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Gfactor_table"></span>Gfactor_table
:Look-up table, '''Gfactor'''(15,24), for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Gfactor_table
:'''input =''' [[behavior_oyster.in]]
 
;<span id="gls_c1"></span>gls_c1
:Generic length-scale closure independent shear production coefficient. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''gls_c1'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''gls_c1'''([[#Ngrids|Ngrids]])
:'''option = ''' [[GLS_MIXING]]
:'''option = ''' [[GLS_MIXING]]
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_C1
:'''keyword =''' GLS_C1
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_c2"></span>gls_c2
;<span id="gls_c2"></span>gls_c2
Line 410: Line 682:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_C2
:'''keyword =''' GLS_C2
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_c3m"></span>gls_c3m
;<span id="gls_c3m"></span>gls_c3m
Line 418: Line 690:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_C3M
:'''keyword =''' GLS_C3M
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_c3p"></span>gls_c3p
;<span id="gls_c3p"></span>gls_c3p
Line 426: Line 698:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_C3P
:'''keyword =''' GLS_C3P
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_cmu0"></span>gls_cmu0
;<span id="gls_cmu0"></span>gls_cmu0
Line 434: Line 706:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_CMU0
:'''keyword =''' GLS_CMU0
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_Kmin"></span>gls_Kmin
;<span id="gls_Kmin"></span>gls_Kmin
Line 442: Line 714:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' GLS_KMIN
:'''keyword =''' GLS_KMIN
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_m"></span>gls_m
;<span id="gls_m"></span>gls_m
Line 450: Line 722:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' GLS_M
:'''keyword =''' GLS_M
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_n"></span>gls_n
;<span id="gls_n"></span>gls_n
Line 458: Line 730:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' GLS_N
:'''keyword =''' GLS_N
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_p"></span>gls_p
;<span id="gls_p"></span>gls_p
Line 466: Line 738:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' GLS_P
:'''keyword =''' GLS_P
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_Pmin"></span>gls_Pmin
;<span id="gls_Pmin"></span>gls_Pmin
Line 474: Line 746:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' GLS_PMIN
:'''keyword =''' GLS_PMIN
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_sigk"></span>gls_sigk
;<span id="gls_sigk"></span>gls_sigk
Line 482: Line 754:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_SIGK
:'''keyword =''' GLS_SIGK
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="gls_sigp"></span>gls_sigp
;<span id="gls_sigp"></span>gls_sigp
Line 490: Line 762:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GLS_SIGP
:'''keyword =''' GLS_SIGP
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="GradErr"></span>GradErr
:Upper bound on the relative error of the gradient for the Lanczos conjugate gradient algorithm.
:'''routine =''' [[mod_fourdvar.F]], [[read_asspar.F]]
:'''keyword =''' GradErr
:'''input =''' [[s4dvar.in]]
 
;<span id="Grate_DF"></span>Grate_DF
:Food supply I-axis increment for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_DF
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_DL"></span>Grate_DL
:Larval size J-axis increment for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_DL
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_F0"></span>Grate_F0
:Starting value for food supply I-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_F0
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_Im"></span>Grate_Im
:Number of values in food supply I-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_Im
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_Jm"></span>Grate_Jm
:Number of values in larval size J-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_Jm
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_L0"></span>Grate_L0
:Starting value for larval size J-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_L0
:'''input =''' [[behavior_oyster.in]]
 
;<span id="Grate_table"></span>Grate_table
:Look-up table, '''Grate'''(31,52), for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Grate_table
:'''input =''' [[behavior_oyster.in]]


;<span id="GRDname"></span>GRDname
;<span id="GRD"></span>GRD
:Grid Input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Grid Input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''GRDname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''GRD'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' GRDNAME
:'''keyword =''' GRDNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="GSTname"></span>GSTname
<section begin=GridsInLayer />;<span id="GridsInLayer"></span>[[GridsInLayer]]
:Number of grids in each nested layer. [[Variables#NestLayers|NestLayers]] values are expected.
:'''dimension =''' '''GridsInLayer'''([[Variables#NestLayers|NestLayers]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' GridsInLayer
:'''input =''' [[roms.in]]<section end=GridsInLayer />
 
;<span id="GST"></span>GST
:GST analysis input/output check pointing NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:GST analysis input/output check pointing NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''GSTname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''GST'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' GSTNAME
:'''keyword =''' GSTNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">H</span>==
==<span class="alphabet">H</span>==


;<span id="HISname"></span>HISname
;<span id="HAR"></span>HAR
:History output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Least-squares detiding harmonics output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''HISname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''HAR'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option = '''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' HISNAME
:'''keyword =''' HARNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


<section begin=Hout />;<span id="Hout"></span>[[Hout]]
;<span id="HdecayB"></span>HdecayB
:Set of switches that determine what fields are written to the history output file ([[#HISname|HISname]]).
:Boundary conditions error covariance horizontal, isotropic decorrelation scales (m). A value is expected for each boundary edge in the following order:
:'''dimension =''' '''Hout'''([[#NV|NV]],[[#Ngrids|Ngrids]])
:::1: west&emsp;&emsp;&emsp;2: south&emsp;&emsp;&emsp;3:east&emsp;&emsp;&emsp;4: north
:'''option = '''  
::<div class="box">HdecayB([[#isFsur|isFsur]])  free-surface<br />HdecayB([[#isUbar|isUbar]])  2D U-momentum<br />HdecayB([[#isVbar|isVbar]])  2D V-momentum<br />HdecayB([[#isUvel|isUvel]])  3D U-momentum<br />HdecayB([[#isVvel|isVvel]])  3D V-momentum<br />HdecayB([[#isTvar|isTvar]])  tracers ([[#NT|NT]], [[#Ngrids|Ngrids]] values expected)</div>
:'''routine =''' [[mod_ncparam.F]]
:'''dimension =''' '''HdecayB'''(4,[[#MstateVar|MstateVar]], [[#Ngrids|Ngrids]])
:'''keyword =''' Hout
:'''units =''' meters
:'''input =''' [[ocean.in]]<section end=Hout />
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' HdecayB
:'''input =''' [[s4dvar.in]]
 
;<span id="HdecayF"></span>HdecayF
:Surface forcing error covariance horizontal, isotropic decorrelation scales (m):
::<div class="box">HdecayF([[#isTsur|isTsur]])  tracers flux ([[#NT|NT]], [[#Ngrids|Ngrids]] values expected)<br />HdecayF([[#isUstr|isUstr]])  wind U-stress<br />HdecayF([[#isVstr|isVstr]])  wind V-stress</div>
:'''dimension =''' '''HdecayF'''(2 + [[#NT|NT]], [[#Ngrids|Ngrids]])
:'''units =''' meters
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' HdecayF
:'''input =''' [[s4dvar.in]]
 
;<span id="HdecayI"></span>HdecayI
:Initial conditions error covariance horizontal, isotropic decorrelation scales (m):
::<div class="box">HdecayI([[#isFsur|isFsur]])  free-surface<br />HdecayI([[#isUbar|isUbar]])  2D U-momentum<br />HdecayI([[#isVbar|isVbar]])  2D V-momentum<br />HdecayI([[#isUvel|isUvel]])  3D U-momentum<br />HdecayI([[#isVvel|isVvel]])  3D V-momentum<br />HdecayI([[#isTvar|isTvar]])  tracers ([[#NT|NT]], [[#Ngrids|Ngrids]] values expected)</div>
:'''dimension =''' '''HdecayI'''([[#MstateVar|MstateVar]], [[#Ngrids|Ngrids]])
:'''units =''' meters
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' HdecayI
:'''input =''' [[s4dvar.in]]
 
;<span id="HdecayM"></span>HdecayM
:Model error covariance horizontal, isotropic decorrelation scales (m):
::<div class="box">HdecayM([[#isFsur|isFsur]])  free-surface<br />HdecayM([[#isUbar|isUbar]])  2D U-momentum<br />HdecayM([[#isVbar|isVbar]])  2D V-momentum<br />HdecayM([[#isUvel|isUvel]])  3D U-momentum<br />HdecayM([[#isVvel|isVvel]])  3D V-momentum<br />HdecayM([[#isTvar|isTvar]])  tracers ([[#NT|NT]], [[#Ngrids|Ngrids]] values expected)</div>
:'''dimension =''' '''HdecayM'''([[#MstateVar|MstateVar]], [[#Ngrids|Ngrids]])
:'''units =''' meters
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' HdecayM
:'''input =''' [[s4dvar.in]]
 
;<span id="HevecErr"></span>HevecErr
:Maximum error bound on Hessian eigenvectors in the Lanczos conjugate gradient algorithm.  Note that even quite inaccurate eigenvectors are useful for pre-conditioning purposes.
:'''routine =''' [[cgradient.F]], [[congrad.F]], [[mod_fourdvar.F]], [[posterior.F]], [[read_asspar.F]], [[rpcg_lanczos.F]]
:'''keyword =''' HevecErr
:'''input =''' [[s4dvar.in]]
 
;<span id="Hgamma"></span>Hgamma
:Horizontal stability and accuracy factor (< 1) used to scale the time-step of the convolution operator below its theoretical limit. Notice that four values are needed for <span class="blue">Hgamma</span> to facilitate the error covariance modeling for:
::[1] initial conditions
::[2] model
::[3] boundary conditions
::[4] surface forcing
:'''dimension =''' '''Hgamma'''(4)
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[read_asspar.F]]
:'''keyword =''' Hgamma
:'''input =''' [[s4dvar.in]]
 
;<span id="HIS"></span>HIS
:Output history data file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''HIS'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' HISNAME
:'''input =''' [[roms.in]]


;<span id="HISname"></span>HISname
;<span id="HISname"></span>HISname
:Output history data file name. [[#Ngrids|Ngrids]] values are expected.
:History output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''HISname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''HISname'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' HISNAME
:'''keyword =''' HISNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
<section begin=Hout />;<span id="Hout"></span>[[Hout]]
:Set of switches that determine what fields are written to the history output file ([[Variables#HISname|HISname]]).
:'''dimension =''' '''Hout'''([[Variables#NV|NV]],[[Variables#Ngrids|Ngrids]])
:'''option = '''
:'''routine =''' [[mod_ncparam.F]]
:'''keyword =''' Hout
:'''input =''' [[roms.in]]<section end=Hout />


;<span id="Hz"></span>Hz
;<span id="Hz"></span>Hz
:<wikitex>Vertical level thicknesses, $\,H_z\,(\xi,\eta,s)$.</wikitex>
:Vertical level thicknesses, <math>\,H_z\,(\xi,\eta,s)</math>.
:'''dimension =''' '''Hz'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''dimension =''' '''Hz'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''pointer =''' [[mod_grid.F|GRID(ng)%]]'''Hz'''
:'''pointer =''' [[mod_grid.F|GRID(ng)%]]'''Hz'''
Line 547: Line 943:
==<span class="alphabet">I</span>==
==<span class="alphabet">I</span>==


;<span id="IADname"></span>IADname
;<span id="IAD"></span>IAD
:Adjoint initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Adjoint initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''IADname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''IAD'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' IADNAME
:'''keyword =''' IADNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="idbio"></span>idbio
;<span id="idbio"></span>idbio
Line 565: Line 961:
:'''dimension =''' '''idsed'''([[#NST|NST]])
:'''dimension =''' '''idsed'''([[#NST|NST]])
:'''option =''' [[Options#SEDIMENT | SEDIMENT]]
:'''option =''' [[Options#SEDIMENT | SEDIMENT]]
:'''routine =''' [[mod_scalars.F]]
;<span id="ieast"></span>ieast
:Index of eastern boundary.
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]


Line 577: Line 978:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]


;<span id="INIname"></span>INIname
;<span id="INI"></span>INI
:Nonlinear initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Nonlinear initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''INIname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''INI'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' ININAME
:'''keyword =''' ININAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="IRPname"></span>IRPname
;<span id="inorth"></span>inorth
:Index of northern boundary.
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
 
;<span id="IRP"></span>IRP
:Representer initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Representer initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''IRPname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''IRP'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' IRPNAME
:'''keyword =''' IRPNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="isFsur"></span>isFsur
:Assimilation state variable index for free-surface.
:'''value =''' 1
:'''routine =''' [[mod_ncparam.F]]


;<span id="isalt"></span>isalt
;<span id="isalt"></span>isalt
:Tracer identification index for salinity, [[#t|t]](:,:,:,:,isalt).
:Tracer identification index for salinity, [[#t|t]](:,:,:,:,isalt).
:'''routine =''' [[mod_scalars.F]]
;<span id="isouth"></span>isouth
:Index of southern boundary.
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]


Line 600: Line 1,016:
:Non-overlapping lower bound tile index in the '''i'''-direction. Its value depends on the tile rank (sub-domain partition).
:Non-overlapping lower bound tile index in the '''i'''-direction. Its value depends on the tile rank (sub-domain partition).
:'''routine =''' [[tile.h]], [[get_tile.F]]
:'''routine =''' [[tile.h]], [[get_tile.F]]
;<span id="isTvar"></span>isTvar
:Assimilation state variable indices for tracers.
:'''dimension =''' '''isTvar'''([[#MT|MT]])
:'''routine =''' [[mod_ncparam.F]]
;<span id="isUbar"></span>isUbar
:Assimilation state variable index for 2D U-momentum.
:'''value =''' 2
:'''routine =''' [[mod_ncparam.F]]
;<span id="isVbar"></span>isVbar
:Assimilation state variable index for 2D V-momentum.
:'''value =''' 3
:'''routine =''' [[mod_ncparam.F]]
;<span id="isUvel"></span>isUvel
:Assimilation state variable index for 3D U-momentum.
:'''value =''' 4
:'''routine =''' [[mod_ncparam.F]]
;<span id="isVvel"></span>isVvel
:Assimilation state variable index for 3D V-momentum.
:'''value =''' 5
:'''routine =''' [[mod_ncparam.F]]


;<span id="itemp"></span>itemp
;<span id="itemp"></span>itemp
Line 605: Line 1,046:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]


;<span id="ITLname"></span>ITLname
;<span id="ITL"></span>ITL
:Tangent linear initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Tangent linear initial conditions input NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ITLname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ITL'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' ITLNAME
:'''keyword =''' ITLNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="iwest"></span>iwest
:Index of western boundary.
:'''option ='''
:'''routine =''' [[mod_scalars.F]]


==<span class="alphabet">J</span>==
==<span class="alphabet">J</span>==
Line 628: Line 1,074:
:'''routine =''' [[mod_mixing.F]]
:'''routine =''' [[mod_mixing.F]]
:'''keyword =''' WTYPE
:'''keyword =''' WTYPE
:'''input =''' [[ocean.in]]<section end=Jwtype />
:'''input =''' [[roms.in]]<section end=Jwtype />


==<span class="alphabet">K</span>==
==<span class="alphabet">K</span>==
Line 638: Line 1,084:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' KendS
:'''keyword =''' KendS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="KstrS"></span>KstrS
;<span id="KstrS"></span>KstrS
Line 646: Line 1,092:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' KstrS
:'''keyword =''' KstrS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">L</span>==
==<span class="alphabet">L</span>==
;<span id="Larvae_size0"></span>Larvae_size0
:Initial planktonic larvae size in terms of length (um). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Larvae_size0'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Larvae_size0
:'''input =''' [[behavior_oyster.in]]
;<span id="Larvae_GR0"></span>Larvae_GR0
:Initial planktonic larvae growth rate (um/day). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Larvae_GR0'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' Larvae_GR0
:'''input =''' [[behavior_oyster.in]]
;<span id="LBC"></span>LBC
:Lateral boundary conditions.
:'''dimension =''' '''LBC'''(4,[[#nLBCvar|nLBCvar]],[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_param.F]]
:'''keyword =''' LBC
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]


;<span id="LBi"></span>LBi
;<span id="LBi"></span>LBi
Line 666: Line 1,136:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LcycleADJ
:'''keyword =''' LcycleADJ
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="LcycleRST"></span>LcycleRST
;<span id="LcycleRST"></span>LcycleRST
Line 674: Line 1,144:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LcycleRST
:'''keyword =''' LcycleRST
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="LcycleTLM"></span>LcycleTLM
;<span id="LcycleTLM"></span>LcycleTLM
Line 682: Line 1,152:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LcycleTLM
:'''keyword =''' LcycleTLM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="LdefNRM"></span>LdefNRM
:Logical switch(s) (T/F) used to create new normalization NetCDF file for:
::<div class="box">LdefNRM(1,:)  initial conditions error covariance<br />LdefNRM(2,:)  model error covariance<br />LdefNRM(3,:)  boundary conditions error covariance<br />LdefNRM(4,:)  surface forcing error covariance</div>
:The computation of the correlation normalization coefficients is very expensive and needs to be computed only once for a particular application provided that grid, land/sea masking (if any), and decorrelation scales (see [[Variables#HdecayM|HdecayM]], [[Variables#VdecayM|VdecayM]], [[Variables#TdecayM|TdecayM]], [[Variables#HdecayI|HdecayI]], [[Variables#VdecayI|VdecayI]], [[Variables#HdecayB|HdecayB]], [[Variables#VdecayB|VdecayB]], [[Variables#HdecayF|HdecayF]]) remain the same.  The user can use this switch in conjunction with the [[Variables#CnormM|CnormM]], [[Variables#CnormI|CnormI]], [[Variables#CnormB|CnormB]], [[Variables#CnormF|CnormF]] switches to compute each coefficient separately. The normalization NetCDF file only needs to be created once and simultaneous runs can write to the same file.  If using this approach, compute the normalization factors with the [[Options#CORRELATION|CORRELATION]] CPP-option and not [[Options#I4DVAR|I4DVAR]], [[Options#RBL4DVAR|RBL4DVAR]] or [[Options#R4DVAR|R4DVAR]].
:'''dimension =''' '''LdefNRM'''(4, [[#Ngrids|Ngrids]])
:'''option =''' [[Options#I4DVAR|I4DVAR]], [[Options#RBL4DVAR|RBL4DVAR]], [[Options#R4DVAR|R4DVAR]], [[Options#CORRELATION|CORRELATION]]
:'''routine =''' [[correlation.h]], [[mod_scalars.F]], [[read_asspar.F]]
:'''keyword =''' LdefNRM
:'''input =''' [[s4dvar.in]]


;<span id="ldefout"></span>ldefout
;<span id="ldefout"></span>ldefout
Line 689: Line 1,169:
:'''option =''' [[Options#PERFECT_RESTART|PERFECT_RESTART]]  
:'''option =''' [[Options#PERFECT_RESTART|PERFECT_RESTART]]  
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LcycleRST
:'''keyword =''' LDEFOUT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="levbfrc"></span>levbfrc
;<span id="levbfrc"></span>levbfrc
Line 698: Line 1,178:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LEVBFRC
:'''keyword =''' LEVBFRC
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="levsfrc"></span>levsfrc
;<span id="levsfrc"></span>levsfrc
Line 706: Line 1,186:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LEVSFRC
:'''keyword =''' LEVSFRC
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Lfloats"></span>Lfloats
;<span id="Lfloats"></span>Lfloats
Line 715: Line 1,195:
:'''keyword =''' Lfloats
:'''keyword =''' Lfloats
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
;<span id="LhessianEV"></span>LhessianEV
:Switch (T/F) to compute approximated Hessian eigenpairs in the Lanzos conjugate gradient algorithm.
:'''routine =''' [[cgradient.F]], [[congrad.F]], [[mod_fourdvar.F]], [[read_asspar.F]], [[rpcg_lanczos.F]]
:'''keyword =''' LhessianEV
:'''input =''' [[s4dvar.in]]
;<span id="LhotStart"></span>LhotStart
:Switch (T/F) to activate hot start in weak-constraint (R4DVAR and RBL4DVAR) algorithms of subsequent outer loops.
:'''routine =''' [[ad_congrad.F]], [[congrad.F]], [[mod_fourdvar.F]], [[read_asspar.F]], [[tl_congrad.F]]
:'''keyword =''' LhotStart
:'''input =''' [[s4dvar.in]]


;<span id="Lm"></span>Lm
;<span id="Lm"></span>Lm
Line 721: Line 1,213:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' Lm
:'''keyword =''' Lm
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Lm2CLM"></span>Lm2CLM
:Logical switch(s) (T/F) used to process 2D momentum ([[Variables#ubar|ubar]], [[Variables#vbar|vbar]]) climatology. The [[C Preprocessor|CPP option]] [[Options#M2CLIMATOLOGY|M2CLIMATOLOGY]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications. Currently, '''CLIMA(ng)%ubarclm''' and '''CLIMA(ng)%vbarclm''' are used for sponges and nudging. If using tidal forcing, the climatological values are adjusted to include tides.
:'''dimension =''' '''Lm2CLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Lm2CLM
:'''input =''' [[roms.in]]
 
;<span id="Lm3CLM"></span>Lm3CLM
:Logical switch(s) (T/F) used to process 3D momentum ([[Variables#u|u]], [[Variables#v|v]]) climatology. The [[C Preprocessor|CPP option]] [[Options#M3CLIMATOLOGY|M3CLIMATOLOGY]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications. Currently, '''CLIMA(ng)%uclm''' and '''CLIMA(ng)%vclm''' are used for sponges and nudging.
:'''dimension =''' '''Lm3CLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Lm3CLM
:'''input =''' [[roms.in]]
 
;<span id="LNM_depth"></span>LNM_depth
:Level of no motion depth (m; positive) used to compute the balanced free-surface contribution in the error covariance balance operator. It is only relevant when [[#LNM_flag|LNM_flag]]=1, [[#balance|balance(isFsur)]]=T, and [[Options#ZETA_ELLIPTIC|ZETA_ELLIPTIC]] is '''NOT''' activated. It is used to integrate the non-hydrostatic equation. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''LNM_depth'''([[#Ngrids|Ngrids]])
:'''units =''' meters
:'''routine =''' [[ad_balance.F]], [[mod_scalars.F]], [[read_asspar.F]], [[tl_balance.F]]
:'''keyword =''' LNM_depth
:'''input =''' [[s4dvar.in]]
 
;<span id="LNM_flag"></span>LNM_flag
:Level of no motion integration flag used to used to compute the balanced free-surface contribution:
::<span class="blue">LNM_flag</span> = 0,  integrate from local bottom to the surface
::<span class="blue">LNM_flag</span> = 1,  integrate from LNM_depth to surface or integrate from local bottom if shallower than [[#LNM_depth|LNM_depth]]
:'''routine =''' [[ad_balance.F]], [[mod_scalars.F]], [[read_asspar.F]], [[tl_balance.F]]
:'''keyword =''' LNM_flag
:'''input =''' [[s4dvar.in]]
 
;<span id="LnudgeM2CLM"></span>LnudgeM2CLM
:Logical switch(s) (T/F) used to activate the nudging of 2D momentum climatology. The [[C Preprocessor|CPP option]] [[Options#M2CLM_NUDGING|M2CLM_NUDGING]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications.<br /><br />Users also need '''turn on''' (set to '''T''') the logical switch [[Variables#Lm2CLM|Lm2CLM]] to process the required 2D momentum climatology data. This data can be set with analytical functions ([[Options#ANA_M2CLIMA|ANA_M2CLIMA]]) or read from input climatology NetCDF files(s).<br /><br />The nudging coefficients ('''CLIMA(ng)%M2nudgcof''') can be set with analytical functions in [[ana_nudgcoef.h]] using [[C Preprocessor|CPP option]] [[Options#ANA_NUDGCOEF|ANA_NUDGCOEF]]. Otherwise it will be read from NetCDF file [[Variables#NUD|NUDNAME]].
:'''dimension =''' '''LnudgeM2CLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LnudgeM2CLM
:'''input =''' [[roms.in]]
 
;<span id="LnudgeM3CLM"></span>LnudgeM3CLM
:Logical switch(s) (T/F) used to activate the nudging of 3D momentum climatology. The [[C Preprocessor|CPP option]] [[Options#M3CLM_NUDGING|M3CLM_NUDGING]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications.<br /><br />Users also need '''turn on''' (set to '''T''') the logical switch [[Variables#Lm3CLM|Lm3CLM]] to process the required 3D momentum climatology data. This data can be set with analytical functions ([[Options#ANA_M3CLIMA|ANA_M3CLIMA]]) or read from input climatology NetCDF files(s).<br /><br />The nudging coefficients ('''CLIMA(ng)%M3nudgcof''') can be set with analytical functions in [[ana_nudgcoef.h]] using [[C Preprocessor|CPP option]] [[Options#ANA_NUDGCOEF|ANA_NUDGCOEF]]. Otherwise it will be read from NetCDF file [[Variables#NUD|NUDNAME]].
:'''dimension =''' '''LnudgeM3CLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LnudgeM3CLM
:'''input =''' [[roms.in]]
 
;<span id="LnudgeTCLM"></span>LnudgeTCLM
:Logical switch(s) (T/F) used to activate the nudging of active and inert tracer climatology variables. These switches also control which tracer variables to nudge. The [[C Preprocessor|CPP option]] [[Options#TCLM_NUDGING|TCLM_NUDGING]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications.<br /><br />Only [[Variables#NAT|NAT]] active tracers (temperature, salinity) and [[Variables#NPT|NPT]] inert tracers need to be specified here.<div class="box">[[Variables#LnudgeTCLM|LnudgeTCLM]](itemp,ng)    for temperature (itemp=1)<br />[[Variables#LnudgeTCLM|LnudgeTCLM]](isalt,ng)    for salinity    (isalt=2)<br />[[Variables#LnudgeTCLM|LnudgeTCLM]](NAT+1,ng)    for inert tracer 1<br />...                      ...<br />[[Variables#LnudgeTCLM|LnudgeTCLM]](NAT+NPT,ng)  for inert tracer NPT</div>Other biological and sediment tracers switches are specified in their respective input scripts.<br /><br />Users also need '''turn on''' (set to '''T''') the logical switch [[Variables#LtracerCLM|LtracerCLM]] to process the required 3D tracer climatology data. This data can be set with analytical functions ([[Options#ANA_TCLIMA|ANA_TCLIMA]]) or read from input climatology NetCDF files(s).<br /><br />The nudging coefficients ('''CLIMA(ng)%Tnudgcof''') can be set with analytical functions in [[ana_nudgcoef.h]] using [[C Preprocessor|CPP option]] [[Options#ANA_NUDGCOEF|ANA_NUDGCOEF]]. Otherwise it will be read from NetCDF file [[Variables#NUD|NUDNAME]].
:'''dimension =''' '''LnudgeTCLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LnudgeTCLM
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="Lprecond"></span>Lprecond
:Switch (T/F) to activate preconditioning in the I4DVAR algorithm. Two types of Limited-Memory preconditioners (LMP) are available [[Bibliography#TshimangaJ_2008a|Tshimanga et al., (2008)]]: Spectral and Ritz.
::If <span class="blue">Lprecond</span>=T and [[#Lritz|Lritz]]=F,  Spectral LMP
::If <span class="blue">Lprecond</span>=T and [[#Lritz|Lritz]]=T,  Ritz LMP
:'''routine =''' [[ad_congrad.F]], [[cgradient.F]], [[congrad.F]], [[mod_fourdvar.F]], [[read_asspar.F]], [[rpcg_lanczos.F]], [[tl_congrad.F]]
:'''keyword =''' Lprecond
:'''input =''' [[s4dvar.in]]
 
;<span id="Lritz"></span>Lritz
:Switch to activate either Ritz Limited-Memory Preconditioner (T) or spectral Limited-Memory Preconditioner (F) in the I4DVAR algorithm using eigenpairs approximation for the Hessian matrix.  The accuracy of the Hessian eigenvectors ([[#HevecErr|HevecErr]]) can be used to fine tune the minimization. That is, [[#HevecErr|HevecErr]] can be used to control the number of eigenvalues of the preconditioning Hessian matrix. See [[Bibliography#TshimangaJ_2008a|Tshimanga et al., (2008)]] for details.
:'''routine =''' [[cgradient.F]], [[congrad.F]], [[mod_fourdvar.F]], [[read_asspar.F]], [[rpcg_lanczos.F]]
:'''keyword =''' Lritz
:'''input =''' [[s4dvar.in]]


;<span id="LrstGST"></span>LrstGST
;<span id="LrstGST"></span>LrstGST
Line 729: Line 1,286:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LcycleTLM
:'''keyword =''' LcycleTLM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Lsediment"></span>Lsediment
;<span id="Lsediment"></span>Lsediment
Line 738: Line 1,295:
:'''keyword =''' Lsediment
:'''keyword =''' Lsediment
:'''input =''' [[sediment.in]]
:'''input =''' [[sediment.in]]
;<span id="LsshCLM"></span>LsshCLM
:Logical switch(s) (T/F) used to process sea-surface height climatology. The [[C Preprocessor|CPP option]] [[Options#ZCLIMATOLOGY|ZCLIMATOLOGY]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications. Currently, the sea-surface height climatology, '''CLIMA(ng)%ssh''', is '''not''' used but is kept for future use.<br /><br />The nudging of SSH on the free-surface governing equation (vertically integrated continuity equation) is '''not''' allowed because it violates mass/volume conservation. Recall that the time rate of change of free-surface is computed from the divergence of [[Variables#ubar|ubar]] and [[Variables#vbar|vbar]].  If such a nudging term is required, it needs to be specified on the momentum equations for ([[Variables#u|u]],[[Variables#v|v]]) and/or ([[Variables#ubar|ubar]],[[Variables#vbar|vbar]]). If done on ([[Variables#u|u]],[[Variables#v|v]]) only, its effects enter the 2D momentum equations via the residual vertically integrated forcing term.
:'''dimension =''' '''LsshCLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LsshCLM
:'''input =''' [[roms.in]]


<section begin=Lstate />;<span id="Lstate"></span>[[Lstate]]
<section begin=Lstate />;<span id="Lstate"></span>[[Lstate]]
:Logical switches (T/F) to specify the adjoint state variables whose sensitivity is required. [[#Ngrids|Ngrids]] values are expected for each state variable.
:Logical switches (T/F) to specify the adjoint state variables whose sensitivity is required. [[Variables#Ngrids|Ngrids]] values are expected for each state variable.
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Lstate
:'''keyword =''' Lstate
:'''input =''' [[ocean.in]]<section end=Lstate />
:'''input =''' [[roms.in]]<section end=Lstate />


;<span id="Lstations"></span>Lstations
;<span id="Lstations"></span>Lstations
Line 753: Line 1,317:
:'''input =''' [[stations.in]]
:'''input =''' [[stations.in]]


==<span class="alphabet">M</span>==
;<span id="LtracerCLM"></span>LtracerCLM
:Logical switch(s) (T/F) used to process active and inert climatology tracer variables. The [[C Preprocessor|CPP option]] [[Options#TCLIMATOLOGY|TCLIMATOLOGY]] is now '''obsolete''' and replaced with these switches to facilitate nesting applications. Currently, '''CLIMA(ng)%tclm''' is used for horizontal mixing, sponges, and nudging.<br /><br />Only [[Variables#NAT|NAT]] active tracers (temperature, salinity) and [[Variables#NPT|NPT]] inert tracers need to be specified here.<div class="box">[[Variables#LtracerCLM|LtracerCLM]](itemp,ng)    for temperature (itemp=1)<br />[[Variables#LtracerCLM|LtracerCLM]](isalt,ng)    for salinity    (isalt=2)<br />[[Variables#LtracerCLM|LtracerCLM]](NAT+1,ng)    for inert tracer 1<br />...                      ...<br />[[Variables#LtracerCLM|LtracerCLM]](NAT+NPT,ng)  for inert tracer NPT</div>Other biological and sediment tracers switches are specified in their respective input scripts.<br /><br /> These switches also control which climatology tracer fields (especially passive tracers) need to be processed so we may reduce the memory allocation for the '''CLIMA(ng)%tclm''' array.
:'''dimension =''' '''LtracerCLM'''([[#MT|MT]],[[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LtracerCLM
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
;<span id="LtracerSponge"></span>LtracerSponge
:Logical switch(s) (T/F) to increase/decrease horizontal diffusivity in specific areas of the domain. It can be used to specify sponge areas with larger horizontal mixing coefficients for damping of high frequency noise due to open boundary conditions or nesting. The [[C Preprocessor|CPP option]] [[Options#SPONGE|SPONGE]] is now obsolete and replaced with these switches to facilitate or not sponge areas over a particular nested grid.<br /><br />The horizontal mixing distribution is specified in [[ini_hmixcoef.F]] as:<div class="box">diff2(i,j,itrc) = [[Variables#diff_factor|diff_factor]](i,j) * diff2(i,j,itrc)<br />diff4(i,j,itrc) = [[Variables#diff_factor|diff_factor]](i,j) * diff4(i,j,itrc)</div>The variable [[Variables#diff_factor|diff_factor]] can be read from the grid NetCDF file. Alternately, the horizontal viscosity in the sponge area can be set-up with analytical functions in [[ana_sponge.h]] using CPP [[Options#ANA_SPONGE|ANA_SPONGE]] when the  '''LuvSponge''' is turned ON for a particular grid.
:'''dimension =''' '''LtracerSponge'''([[Variables#MT|MT]],[[Variables#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LtracerSponge
:'''input =''' [[roms.in]]


;<span id="M2nudg"></span>M2nudg
<section begin=LtracerSrc />;<span id="LtracerSrc"></span>[[LtracerSrc]]
:Logical switch(s) (T/F) used to activate tracers point Sources/Sinks (like river runoff) and to specify which tracer variables to consider. Only [[Variables#NAT|NAT]] active tracers (temperature, salinity) and [[Variables#NPT|NPT]] inert tracers need to be specified here.
:'''dimension =''' '''LtracerSrc'''([[Variables#MT|MT]],[[Variables#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LtracerSrc
:'''input =''' [[bio_Fennel.in]], [[ecosim.in]], [[nemuro.in]], [[npzd_Franks.in]], [[npzd_iron.in]], [[npzd_Powell.in]], [[roms.in]]
 
:Other biological and sediment tracers switches are activated in their respective input scripts.
 
:In nesting applications, turn on only the grids that require activation and processing of tracers point Sources/Sinks.<section end=LtracerSrc />
 
;<span id="LuvSponge"></span>LuvSponge
:Logical switch(s) (T/F) to increase/decrease horizontal viscosity in specific areas of the domain. It can be used to specify sponge areas with larger horizontal mixing coefficients for damping of high frequency noise due to open boundary conditions or nesting. The [[C Preprocessor|CPP option]] [[Options#SPONGE|SPONGE]] is now obsolete and replaced with these switches to facilitate or not sponge areas over a particular nested grid.<br /><br />The horizontal mixing distribution is specified in [[ini_hmixcoef.F]] as:<div class="box">visc2_r(i,j) = [[Variables#visc_factor|visc_factor]](i,j) * visc2_r(i,j)<br />visc4_r(i,j) = [[Variables#visc_factor|visc_factor]](i,j) * visc4_r(i,j)</div>The variable [[Variables#visc_factor|visc_factor]] can be read from the grid NetCDF file. Alternately, the horizontal viscosity in the sponge area can be set-up with analytical functions in [[ana_sponge.h]] using CPP [[Options#ANA_SPONGE|ANA_SPONGE]] when the switch '''LuvSponge''' is turned '''ON''' for a particular grid.
:'''dimension =''' '''LuvSponge'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LuvSponge
:'''input =''' [[roms.in]]
 
;<span id="LuvSrc"></span>LuvSrc
:Logical switch(s) (T/F) used to activate momentum horizontal transport points Sources/Sinks. Usually it is used to turn on/off river runoff transport ([[#u|u]] or [[#v|v]] variables) in an application. In nesting applications, turn on only the grids that require activation and processing of momentum point Sources/Sinks.
:'''dimension =''' '''LuvSrc'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LuvSrc
:'''input =''' [[roms.in]]
 
;<span id="LwSrc"></span>LwSrc
:Logical switch(s) (T/F) used to activate mass points Sources/Sinks. Usually it is used to turn on/off volume vertical influx ([[#w|w]]) in an application. In nesting applications, turn on only the grids that require activation and processing of mass influx point Sources/Sinks.
:'''dimension =''' '''LwSrc'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' LwSrc
:'''input =''' [[roms.in]]
 
;<span id="LwrtNRM"></span>LwrtNRM
:Logical switch(s) (T/F) to write out correlation normalization factors for:
::<div class="box">LwrtNRM(1,:)  initial conditions error covariance<br />LwrtNRM(2,:)  model error covariance<br />LwrtNRM(3,:)  boundary conditions error covariance<br />LwrtNRM(4,:)  surface forcing error covariance</div>
:If TRUE, these factors computed and written to [[Variables#NRMnameI|NRMnameI]], [[Variables#NRMnameM|NRMnameM]], [[Variables#NRMnameB|NRMnameB]], and [[Variables#NRMnameF|NRMnameF]] NetCDF files, respectively. If FALSE, they are read from [[Variables#NRMname|NRMname]] NetCDF file.
:'''dimension =''' '''LwrtNRM'''(4, [[#Ngrids|Ngrids]])
:'''option =''' [[Options#I4DVAR|I4DVAR]], [[Options#RBL4DVAR|RBL4DVAR]], [[Options#R4DVAR|R4DVAR]], [[Options#CORRELATION|CORRELATION]]
:'''routine =''' [[correlation.h]], [[mod_scalars.F]], [[normalization.F]], [[read_asspar.F]]
:'''keyword =''' LwrtNRM
:'''input =''' [[s4dvar.in]]
 
==<span class="alphabet">M</span>==
 
;<span id="M2nudg"></span>M2nudg
:Nudging time scale for 2D momentum. [[#Ngrids|Ngrids]] values are expected.
:Nudging time scale for 2D momentum. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''M2nudg'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''M2nudg'''([[#Ngrids|Ngrids]])
Line 762: Line 1,382:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' M2NUDG
:'''keyword =''' M2NUDG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="M3nudg"></span>M3nudg
;<span id="M3nudg"></span>M3nudg
Line 771: Line 1,391:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' M3NUDG
:'''keyword =''' M3NUDG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="MaxIterGST"></span>MaxIterGST
;<span id="MaxIterGST"></span>MaxIterGST
Line 779: Line 1,399:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' MaxIterGST
:'''keyword =''' MaxIterGST
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="ml_depth"></span>ml_depth
:Mixed-layer depth (m; positive) in [[#deltaS_b|deltaS_b]] smoothing coefficient. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ml_depth'''([[#Ngrids|Ngrids]])
:'''units =''' meters
:'''routine =''' [[ad_balance.F]], [[mod_scalars.F]], [[read_asspar.F]], [[tl_balance.F]]
:'''keyword =''' ml_depth
:'''input =''' [[s4dvar.in]]


;<span id="Mm"></span>Mm
;<span id="Mm"></span>Mm
Line 786: Line 1,414:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' Mm
:'''keyword =''' Mm
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="morph_fac"></span>morph_fac
;<span id="morph_fac"></span>morph_fac
Line 799: Line 1,427:
:C-preprocessing flag to define the specific configuration. In versions up to 2.3 this flag was one of the predefined model applications that headed the [[cppdefs.h]] file. You '''must''' make the value of <span class="blue">MyAppCPP</span> consistent with variable <span class="blue">ROMS_APPLICATION</span> in the [[build_Script|build script]] or [[makefile]] if you are not using [[build_Script|build.sh]] or [[build_Script|build.bash]]. ROMS converts the <span class="blue">ROMS_APPLICATION</span> variable to lowercase to determine the name of the file to include.
:C-preprocessing flag to define the specific configuration. In versions up to 2.3 this flag was one of the predefined model applications that headed the [[cppdefs.h]] file. You '''must''' make the value of <span class="blue">MyAppCPP</span> consistent with variable <span class="blue">ROMS_APPLICATION</span> in the [[build_Script|build script]] or [[makefile]] if you are not using [[build_Script|build.sh]] or [[build_Script|build.bash]]. ROMS converts the <span class="blue">ROMS_APPLICATION</span> variable to lowercase to determine the name of the file to include.
:'''keyword =''' MyAppCPP
:'''keyword =''' MyAppCPP
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="MT"></span>MT
:The maximum number of tracers between all nested grids. Basically the sum of all [[Variables#NT|NT]].


==<span class="alphabet">N</span>==
==<span class="alphabet">N</span>==
Line 808: Line 1,439:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' N
:'''keyword =''' N
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="NAT"></span>NAT
;<span id="NAT"></span>NAT
Line 815: Line 1,446:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NAT
:'''keyword =''' NAT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nADJ"></span>nADJ
;<span id="nADJ"></span>nADJ
Line 822: Line 1,453:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NADJ
:'''keyword =''' NADJ
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nAVG"></span>nAVG
;<span id="nAVG"></span>nAVG
Line 829: Line 1,460:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NAVG
:'''keyword =''' NAVG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Nbed"></span>Nbed
;<span id="Nbed"></span>Nbed
Line 835: Line 1,466:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' Nbed
:'''keyword =''' Nbed
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Nbico"></span>Nbico
:Number of iterations in the biconjugate gradient algorithm used to solve the elliptic equation for sea surface height in the error covariance balance operator. We need as many iterations are required to decrease the error value of the reference free-surface to 1E-8 or smaller. In some applications Nbico=200 will do the job. [[#Ngrids|Ngrids]] values are expected.
:{{warning}}'''Warning:''' Be aware that there are 4 arrays that are allocated with this parameter and its value may be constrained by available memory:<div class="box">[[#FOURDVAR|FOURDVAR]]([[#ng|ng]]) % [[#p_r2d|p_r2d]] ([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],<span class="blue">Nbico</span>([[#ng|ng]]))<br />[[#FOURDVAR|FOURDVAR]]([[#ng|ng]]) % [[#r_r2d|r_r2d]] ([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],<span class="blue">Nbico</span>([[#ng|ng]]))<br />[[#FOURDVAR|FOURDVAR]]([[#ng|ng]]) % [[#bp_r2d|bp_r2d]] ([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],<span class="blue">Nbico</span>([[#ng|ng]]))<br />[[#FOURDVAR|FOURDVAR]]([[#ng|ng]]) % [[#br_r2d|br_r2d]] ([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],<span class="blue">Nbico</span>([[#ng|ng]]))</div>All the iteration values are needed in the backward stepping of the adjoint.
:'''dimension =''' '''Nbico'''([[#Ngrids|Ngrids]])
:'''routine =''' [[ad_balance.F]], [[mod_fourdvar.F]], [[mod_param.F]], [[read_asspar.F]], [[tl_balance]], [[zeta_balance.F]]
:'''keyword =''' Nbico
:'''input =''' [[s4dvar.in]]


;<span id="NBT"></span>NBT
;<span id="NBT"></span>NBT
Line 849: Line 1,488:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NCS
:'''keyword =''' NCS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


<section begin=NCV />;<span id="NCV"></span>[[Eigenproblem Parameters|NCV]]
<section begin=NCV />;<span id="NCV"></span>[[Eigenproblem Parameters|NCV]]
:Number of eigenvectors to compute for the Lanczos/Arnoldi problem. <span class="blue">NCV</span> must be greater than [[#NEV|NEV]].
:Number of eigenvectors to compute for the Lanczos/Arnoldi problem. <span class="blue">NCV</span> must be greater than [[Variables#NEV|NEV]].
:'''option ='''   
:'''option ='''   
:'''routine =''' [[mod_storage.F]]
:'''routine =''' [[mod_storage.F]]
:'''keyword =''' NCV
:'''keyword =''' NCV
:'''input =''' [[ocean.in]]<section end=NCV />
:'''input =''' [[roms.in]]<section end=NCV />


;<span id="ndefADJ"></span>ndefADJ
;<span id="ndefADJ"></span>ndefADJ
:Number of time-steps between the creation of new adjoint file. If <span class="blue">ndefADJ</span>&nbsp;=&nbsp0, the model will only process one adjoint file.  This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every <span class="blue">ndefADJ</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:Number of time-steps between the creation of new adjoint file. If <span class="blue">ndefADJ</span>&nbsp;=&nbsp;0, the model will only process one adjoint file.  This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every <span class="blue">ndefADJ</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ndefADJ'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ndefADJ'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDEFADJ
:'''keyword =''' NDEFADJ
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ndefAVG"></span>ndefAVG
;<span id="ndefAVG"></span>ndefAVG
:Number of time-steps between the creation of new average file. If <span class="blue">ndefAVG</span>&nbsp;=&nbsp0, the model will only process one average file.  This feature is useful for long simulations when average files get too large; it creates a new file every <span class="blue">ndefAVG</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:Number of time-steps between the creation of new average file. If <span class="blue">ndefAVG</span>&nbsp;=&nbsp;0, the model will only process one average file.  This feature is useful for long simulations when average files get too large; it creates a new file every <span class="blue">ndefAVG</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ndefAVG'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ndefAVG'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDEFAVG
:'''keyword =''' NDEFAVG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ndefDIA"></span>ndefDIA
;<span id="ndefDIA"></span>ndefDIA
Line 877: Line 1,516:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDEFDIA
:'''keyword =''' NDEFDIA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ndefHIS"></span>ndefHIS
;<span id="ndefHIS"></span>ndefHIS
Line 884: Line 1,523:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDEFHIS
:'''keyword =''' NDEFHIS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ndefTLM"></span>ndefTLM
;<span id="ndefTLM"></span>ndefTLM
:Number of time-steps between the creation of new tangent linear file. If <span class="blue">ndefTLM</span>&nbsp;=&nbsp0, the model will only process one tangent linear file.  This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every <span class="blue">ndefTLM</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:Number of time-steps between the creation of new tangent linear file. If <span class="blue">ndefTLM</span>&nbsp;=&nbsp;0, the model will only process one tangent linear file.  This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every <span class="blue">ndefTLM</span> time-steps. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''ndefTLM'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''ndefTLM'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDEFTLM
:'''keyword =''' NDEFTLM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nDIA"></span>nDIA
;<span id="nDIA"></span>nDIA
Line 898: Line 1,537:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDIA
:'''keyword =''' NDIA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ndtfast"></span>ndtfast
;<span id="ndtfast"></span>ndtfast
Line 905: Line 1,544:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NDTFAST
:'''keyword =''' NDTFAST
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="NestLayers"></span>NestLayers
:Number of grid nesting layers. This parameter is used to allow refinement and composite grid combinations as shown for the [[Nested_Grids#Nested_Grids_Classes|Refinement and Partial Boundary Composite Sub-Classes]]. In non-nesting applications, set NestLayers = 1.
:'''option ='''
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NestLayers
:'''input =''' [[roms.in]]


<section begin=NEV />;<span id="NEV"></span>[[Eigenproblem Parameters|NEV]]
<section begin=NEV />;<span id="NEV"></span>[[Eigenproblem Parameters|NEV]]
Line 912: Line 1,558:
:'''routine =''' [[mod_storage.F]]
:'''routine =''' [[mod_storage.F]]
:'''keyword =''' NEV
:'''keyword =''' NEV
:'''input =''' [[ocean.in]]<section end=NEV />
:'''input =''' [[roms.in]]<section end=NEV />


<!--
;<span id="NextraObs"></span>NextraObs
:Number of extra-observation classes to consider in addition to those associated with the state variables (one-to-one correspondence). They are used in observation operators that require more that one state variable to evaluate  extra-observation type like HF radials, travel time, pressure, etc.
:In any application, the number of observation types is computed as:
::[[#NobsVar|NobsVar]]([[#ng|ng]]) = [[#NstateVar|NstateVar]]([[#ng|ng]]) + <span class="blue">NextraObs</span>
:If not processing extra-observation classes, set <span class="blue">NextraObs</span> to zero.
:'''routine =''' [[mod_fourdvar.F]], [[read_asspar.F]]
:'''keyword =''' NextraObs
:'''input =''' [[s4dvar.in]]
-->
;<span id="nFfiles"></span>nFfiles
;<span id="nFfiles"></span>nFfiles
:Number of forcing NetCDF files. [[#Ngrids|Ngrids]] values are expected.
:Number of forcing NetCDF files. [[#Ngrids|Ngrids]] values are expected.
Line 920: Line 1,576:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' NFFILES
:'''keyword =''' NFFILES
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nFLT"></span>nFLT
;<span id="nFLT"></span>nFLT
Line 928: Line 1,584:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NFLT
:'''keyword =''' NFLT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Nfloats"></span>Nfloats
;<span id="Nfloats"></span>Nfloats
:Number of floats to release in each nested grid. Value(s) are used to dynamically allocate the arrays in the [[Floats]] array structure. [[#Ngrids|Ngrids]] values are expected.
:Number of floats to release in each nested grid. Value(s) are used to dynamically allocate the arrays in the [[Options#FLOATS|FLOATS]] array structure. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Nfloats'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''Nfloats'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]]  
:'''option =''' [[Options#FLOATS|FLOATS]]  
Line 937: Line 1,593:
:'''keyword =''' NFLOATS
:'''keyword =''' NFLOATS
:'''input =''' [[floats.in]]
:'''input =''' [[floats.in]]
;<span id="NGCname"></span>NGCname
:Input nested grids contact points information file name. This NetCDF file is currently generated using script <span class="red">matlab/grid/contact.m</span> from the ROMS Matlab repository.  The nesting information is not trivial and this Matlab scripts is quite complex. See [[Nested_Grids]] and [[Grid_Processing_Scripts]] for more information.
:'''option =''' [[Options#NESTING|NESTING]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' NGCNAME
:'''input =''' [[roms.in]]


;<span id="NghostPoints"></span>NghostPoints
;<span id="NghostPoints"></span>NghostPoints
Line 951: Line 1,614:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NGST
:'''keyword =''' NGST
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nHIS"></span>nHIS
;<span id="nHIS"></span>nHIS
Line 958: Line 1,621:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NHIS
:'''keyword =''' NHIS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Nimpact"></span>Nimpact
:If observations impact or observations sensitivity, set the 4D-Var outer loop to consider in the computation of the observations impact or observation sensitivity. It must be less than or equal to [[#Nouter|Nouter]]. This facilitates the computations with multiple outer loop 4D-Var applications.  The observation analysis needs to be computed separately for each outer loop.  The full analysis for all outer loops is combined offline.
:'''routine =''' [[mod_fourdvar.F]], [[obs_sen_i4dvar_analysis.h]], [[obs_sen_rbl4dvar_analysis.h]], [[read_asspar.F]]
:'''keyword =''' Nimpact
:'''input =''' [[s4dvar.in]]


;<span id="ninfo"></span>ninfo
;<span id="ninfo"></span>ninfo
Line 966: Line 1,635:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NINFO
:'''keyword =''' NINFO
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Ninner"></span>Ninner
;<span id="Ninner"></span>Ninner
Line 973: Line 1,642:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Ninner
:'''keyword =''' Ninner
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


<section begin=Nintervals />;<span id="Nintervals"></span>[[Nintervals]]
<section begin=Nintervals />;<span id="Nintervals"></span>[[Nintervals]]
:Number of time interval divisions for stochastic optimals computations. It must be a multiple of [[#ntimes|ntimes]].  
:Number of time interval divisions for stochastic optimals computations. It must be a multiple of [[Variables#ntimes|ntimes]].  
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Nintervals
:'''keyword =''' Nintervals
:'''input =''' [[ocean.in]]<section end=Nintervals />
:'''input =''' [[roms.in]]<section end=Nintervals />


;<span id="NNS"></span>NNS
;<span id="nLBCvar"></span>nLBCvar
:Number of lateral boundary condition variables.
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
 
;<span id="Nmethod"></span>Nmethod
:Correlation normalization method:
::[0]  Exact, very expensive
::[1]  Approximated, randomization
:[[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Nmethod'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_fourdvar.F]], [[nomalization.F]], [[read_asspar.F]]
:'''keyword =''' Nmethod
:'''input =''' [[s4dvar.in]]
 
;<span id="NNS"></span>NNS
:Number of non-cohesive (sand) sediment tracer-type variables.
:Number of non-cohesive (sand) sediment tracer-type variables.
:'''option =''' [[Options#SEDIMENT | SEDIMENT]]  
:'''option =''' [[Options#SEDIMENT | SEDIMENT]]  
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NNS
:'''keyword =''' NNS
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="nOBC"></span>nOBC
:Number of time-steps between 4DVAR adjustment of open boundary fields. [[#Ngrids|Ngrids]] values are expected. In strong constraint 4DVAR, it is possible to adjust open boundaries at other time intervals in addition to initial time.  This parameter is used to store the appropriate number of open boundary records in the output history NetCDF files: 1&nbsp;+&nbsp;[[#ntimes|ntimes]]&nbsp;/&nbsp;<span class="blue">nOBC</span> records. <span class="blue">nOBC</span> must be a factor of [[#ntimes|ntimes]] or greater than [[#ntimes|ntimes]]. If <span class="blue">nOBC</span>&nbsp;>&nbsp;[[#ntimes|ntimes]], only one record is stored in the NetCDF files and the adjustment is for constant forcing with constant correction. This parameter is only relevant in 4DVAR when activating [[Options#ADJUST_BOUNDARY|ADJUST_BOUNDARY]].
:'''dimension =''' '''nOBC'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NOBC
:'''input =''' [[roms.in]]


;<span id="Nouter"></span>Nouter
;<span id="Nouter"></span>Nouter
Line 994: Line 1,685:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Nouter
:'''keyword =''' Nouter
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="NpostI"></span>NpostI
:If weak constraint 4DVar (RBL4DVAR or R4DVAR), set number of iterations in the Lanczos algorithm used to estimate the posterior analysis error covariance matrix.
:'''routine =''' [[mod_fourdvar.F]], [[posterior.F]], [[read_asspar.F]]
:'''keyword =''' NpostI
:'''input =''' [[s4dvar.in]]


;<span id="NPT"></span>NPT
;<span id="NPT"></span>NPT
Line 1,001: Line 1,698:
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NPT
:'''keyword =''' NPT
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Nrandom"></span>Nrandom
:Number of iterations to compute correlation normalization factors using the randomization approach of [[Bibliography#FisherM_1995a|Fisher and Courtier (1995)]]. A large number is required to be statistically meaningful and achieve zero expectation mean and unit variance, approximately. These factors ensure that the error covariance diagonal elements are equal to unity.
:'''routine =''' [[nomalization.F]], [[read_asspar.F]]
:'''keyword =''' Nrandom
:'''input =''' [[s4dvar.in]]
 
;<span id="NritzEV"></span>NritzEV
:If preconditioning, specify number of eigenpairs to use. If zero, use [[#HevecErr|HevecErr]] parameter to determine the number of converged eigenpairs.
:'''routine =''' [[cgradient.F]], [[congrad.F]], [[mod_fourdvar.F]], [[read_asspar.F]], [[rpcg_lanczos.F]]
:'''keyword =''' NritzEV
:'''input =''' [[s4dvar.in]]


;<span id="nrrec"></span>nrrec
;<span id="nrrec"></span>nrrec
Line 1,009: Line 1,718:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NRREC
:'''keyword =''' NRREC
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nRST"></span>nRST
;<span id="nRST"></span>nRST
Line 1,017: Line 1,726:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NRST
:'''keyword =''' NRST
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="nSFF"></span>nSFF
;<span id="nSFF"></span>nSFF
Line 1,024: Line 1,733:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NSFF
:'''keyword =''' NSFF
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="NSperiodic"></span>NSperiodic
:North-South periodic boundary condition.
:'''dimension =''' '''NSperiodic'''([[#Ngrids|Ngrids]])
:'''option = '''


;<span id="NST"></span>NST
;<span id="NST"></span>NST
Line 1,037: Line 1,751:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NSTA
:'''keyword =''' NSTA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Nstation"></span>Nstation
;<span id="Nstation"></span>Nstation
Line 1,052: Line 1,766:
:'''option =''' [[Options#SOLVE3D | SOLVE3D]]
:'''option =''' [[Options#SOLVE3D | SOLVE3D]]
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''input =''' [[ocean.in]] (derived from [[#NAT|NAT]]+[[#NPT|NPT]]+[[#NST|NST]]+[[#NBT|NBT]])
:'''input =''' [[roms.in]] (derived from [[#NAT|NAT]]+[[#NPT|NPT]]+[[#NST|NST]]+[[#NBT|NBT]])


<section begin=NtileI />;<span id="NtileI"></span>[[NtileI]]
<section begin=NtileI />;<span id="NtileI"></span>[[NtileI]]
:Number of domain partitions in the I-direction (&xi;-coordinate). It must be equal to or greater than one. [[#Ngrids|Ngrids]] values are expected.
:Number of domain partitions in the I-direction (&xi;-coordinate). It must be equal to or greater than one. [[Variables#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''NtileI'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''NtileI'''([[Variables#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NtileI
:'''keyword =''' NtileI
:'''input =''' [[ocean.in]]<section end=NtileI />
:'''input =''' [[roms.in]]<section end=NtileI />


<section begin=NtileJ />;<span id="NtileJ"></span>[[NtileJ]]
<section begin=NtileJ />;<span id="NtileJ"></span>[[NtileJ]]
:Number of domain partitions in the J-direction (&eta;-coordinate). It must be equal to or greater than one. [[#Ngrids|Ngrids]] values are expected.
:Number of domain partitions in the J-direction (&eta;-coordinate). It must be equal to or greater than one. [[Variables#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''NtileJ'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''NtileJ'''([[Variables#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_param.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' NtileJ
:'''keyword =''' NtileJ
:'''input =''' [[ocean.in]]<section end=NtileJ />
:'''input =''' [[roms.in]]<section end=NtileJ />


<section begin=ntimes />;<span id="ntimes"></span>[[ntimes]]
<section begin=ntimes />;<span id="ntimes"></span>[[ntimes]]
Line 1,075: Line 1,789:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NTIMES
:'''keyword =''' NTIMES
:'''input =''' [[ocean.in]]<section end=ntimes />
:'''input =''' [[roms.in]]<section end=ntimes />
 
<section begin=ntimes_ana />;<span id="ntimes_ana"></span>[[ntimes_ana]]
:Total number time-steps for computing observations impacts interval during the analysis cycle. It is only used when [[Options#RBL4DVAR_FCT_SENSITIVITY|RBL4DVAR_FCT_SENSITIVITY]] is activated.
:'''option =''' [[Options#RBL4DVAR_FCT_SENSITIVITY|RBL4DVAR_FCT_SENSITIVITY]]
:'''routine =''' [[mod_fourdvar.F]], [[obs_sen_rbl4dvar_forecast.h]]
:'''keyword =''' NTIMES_ANA
:'''input =''' [[roms.in]]<section end=ntimes_ana />
 
<section begin=ntimes_fct />;<span id="ntimes_fct"></span>[[ntimes_fct]]
:Total number of timesteps for computing observations impacts interval during the forecast cycle. It is only used when [[Options#RBL4DVAR_FCT_SENSITIVITY|RBL4DVAR_FCT_SENSITIVITY]] is activated.
:'''option =''' [[Options#RBL4DVAR_FCT_SENSITIVITY|RBL4DVAR_FCT_SENSITIVITY]]
:'''routine =''' [[mod_fourdvar.F]], [[obs_sen_rbl4dvar_forecast.h]]
:'''keyword =''' NTIMES_FCT
:'''input =''' [[roms.in]] <section end=ntimes_fct />


;<span id="nTLM"></span>nTLM
;<span id="nTLM"></span>nTLM
Line 1,082: Line 1,810:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NTLM
:'''keyword =''' NTLM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ntsAVG"></span>ntsAVG
;<span id="ntsAVG"></span>ntsAVG
Line 1,089: Line 1,817:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NTSAVG
:'''keyword =''' NTSAVG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="ntsDIA"></span>ntsDIA
;<span id="ntsDIA"></span>ntsDIA
Line 1,096: Line 1,824:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NTSDIA
:'''keyword =''' NTSDIA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="NUD"></span>NUD
:Input nudging coefficients file(s).
:'''dimension =''' '''NUD([[#Ngrids|Ngrids]])
:'''option =''' [[Options#NESTING|NESTING]]
:'''routine =''' [[read_phypar.F]], [[get_nudgcoef.F]]
:'''keyword =''' NUDNAME
:'''input =''' [[roms.in]]


;<span id="Nuser"></span>Nuser
;<span id="Nuser"></span>Nuser
:Generic User parameters, <span class="blue">NUSER</span> values are expected.
:Number of generic user parameters to consider (integer). This integer and the number of values in [[#user|USER]] must be the same.
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' NUSER
:'''keyword =''' NUSER
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="NV"></span>NV
;<span id="NV"></span>NV
Line 1,108: Line 1,844:
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_ncparam.F]]
:'''routine =''' [[mod_ncparam.F]]
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="Nvct"></span>Nvct
:Parameter to process the <span class="blue">Nvct</span> eigenvector of the stabilized representer matrix when computing array modes (here, <span class="blue">Nvct</span>=[[#Ninner|Ninner]] is the most important while <span class="blue">Nvct</span>=1 is the least important) OR cut-off parameter for the clipped analysis to disregard potentially unphysical array modes (that is, all the eigenvectors < <span class="blue">Nvct</span> are disregarded).
:'''option = '''
:'''routine =''' [[mod_fourdvar.F]], [[inp_par.F]]
:'''keyword =''' Nvct
:'''input =''' [[s4dvar.in]]


==<span class="alphabet">O</span>==
==<span class="alphabet">O</span>==
Line 1,118: Line 1,861:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' OBCFAC
:'''keyword =''' OBCFAC
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="OIFA"></span>OIFA
:Input forcing filename at observation locations for computing observations impacts during the analysis-forecast cycle when the forecast is initialized with the 4D-Var analysis.
:'''dimension ='''
:'''option = '''
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' OIFnameA
:'''input =''' [[s4dvar.in]]
 
;<span id="OIFB"></span>OIFB
:Input forcing filename at observation locations for computing observations impacts during the analysis-forecast cycle when the forecast is initialized with the 4D-Var background.
:'''dimension ='''
:'''option = '''
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' OIFnameB
:'''input =''' [[s4dvar.in]]


==<span class="alphabet">P</span>==
==<span class="alphabet">P</span>==
Line 1,141: Line 1,900:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' R0
:'''keyword =''' R0
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="rdrg"></span>rdrg
;<span id="rdrg"></span>rdrg
Line 1,150: Line 1,909:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' RDRG
:'''keyword =''' RDRG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="rdrg2"></span>rdrg2
;<span id="rdrg2"></span>rdrg2
Line 1,158: Line 1,917:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' RDRG2
:'''keyword =''' RDRG2
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="rho"></span>rho
;<span id="rho"></span>rho
:''In situ'' density anomaly computed as a function of potential temperature, salinity, and depth.  
:''In situ'' density anomaly computed as a function of potential temperature, salinity, and depth.  
::<math>\,\sigma(\xi,\eta,s) = \rho(\xi,\eta,s) - 1000</math>.
::<math>\sigma(\xi,\eta,s) = \rho(\xi,\eta,s) - 1000</math>.
:'''dimension =''' '''rho'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''dimension =''' '''rho'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''rho'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''rho'''
Line 1,171: Line 1,930:
:'''option = ''' [[Options#SOLVE3D | SOLVE3D]], [[Options#NONLIN_EOS | NONLIN_EOS]]
:'''option = ''' [[Options#SOLVE3D | SOLVE3D]], [[Options#NONLIN_EOS | NONLIN_EOS]]
:'''routine =''' [[rho_eos.F]]
:'''routine =''' [[rho_eos.F]]
:It can computed using a linear or nonlinear equation of state. The nonlinear equation of state is based on [[Bibliography#JackettDR_1995a | Jackett and McDougall (1992)]] polynomial expressions.
:It can computed using a linear or nonlinear equation of state. The nonlinear equation of state is based on [[Bibliography#JackettDR_1995a | Jackett and McDougall (1992)]] polynomial expressions.
 
;<span id="rho0"></span>rho0
;<span id="rho0"></span>rho0
:Mean density used when the Boussinesq approximation is inferred.
:Mean density used when the Boussinesq approximation is inferred.
Line 1,178: Line 1,936:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' RHO0
:'''keyword =''' RHO0
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Ritz_tol"></span>Ritz_tol
;<span id="Ritz_tol"></span>Ritz_tol
Line 1,184: Line 1,942:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Ritz_tol
:'''keyword =''' Ritz_tol
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="RSTname"></span>RSTname
;<span id="Rscheme"></span>Rscheme
:Random number generation scheme if randomization:
::[1]  Gaussian distributed deviates, numerical recipes
:[[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''Rscheme'''([[#Ngrids|Ngrids]])
:'''routine =''' [[nomalization.F]], [[read_asspar.F]], [[white_noise.F]]
:'''keyword =''' Rscheme
:'''input =''' [[s4dvar.in]]
 
;<span id="RST"></span>RST
:Restart NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Restart NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''RSTname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''RST'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' RSTNAME
:'''keyword =''' RSTNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">S</span>==
==<span class="alphabet">S</span>==


;<span id="S0"></span>S0
;<span id="S0"></span>S0
:Background salinity (PSU) constant used in Linear Equation of State. [[#Ngrids|Ngrids]] values are expected.
:Background salinity (nondimensional) constant used in Linear Equation of State. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''S0'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''S0'''([[#Ngrids|Ngrids]])
:'''option = '''
:'''option = '''
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' S0
:'''keyword =''' S0
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Scoef"></span>Scoef
;<span id="Scoef"></span>Scoef
Line 1,210: Line 1,977:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' SCOEF
:'''keyword =''' SCOEF
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Sd50"></span>Sd50
;<span id="Sd50"></span>Sd50
Line 1,220: Line 1,987:
:'''keywords =''' MUD_SD50, SAND_SD50
:'''keywords =''' MUD_SD50, SAND_SD50
:'''input =''' [[sediment.in]]
:'''input =''' [[sediment.in]]
;<span id="settle_size"></span>settle_size
:Planktonic larvae settlement size (um). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''settle_size'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' settle_size
:'''input =''' [[behavior_oyster.in]]
;<span id="sink_base"></span>sink_base
:Larval sinking exponential factor (mm/s) for larval sinking rate (mm/s), as a function of larval size (um). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''sink_base'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' sink_base
:'''input =''' [[behavior_oyster.in]]
;<span id="sink_rate"></span>sink_rate
:Sinking exponential rate factor (1/um) for larval sinking rate (mm/s), as a function of larval size (um). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''sink_rate'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' sink_rate
:'''input =''' [[behavior_oyster.in]]
;<span id="sink_size"></span>sink_size
:Larval size (um) for mean exponential sinking for larval sinking rate (mm/s), as a function of larval size (um). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''sink_size'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' sink_size
:'''input =''' [[behavior_oyster.in]]
;<span id="slope_Sdec"></span>slope_Sdec
:Coefficient {d} due to decreasing salinity. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''slope_Sdec'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' slope_Sdec
:'''input =''' [[behavior_oyster.in]]
;<span id="slope_Sinc"></span>slope_Sinc
:Coefficient {c} due to increasing salinity. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''slope_Sinc'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' slope_Sinc
:'''input =''' [[behavior_oyster.in]]


;<span id="SO_decay"></span>SO_decay
;<span id="SO_decay"></span>SO_decay
Line 1,228: Line 2,043:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' SO_decay
:'''keyword =''' SO_decay
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


<section begin=SO_sdev />;<span id="SO_sdev"></span>[[SO_sdev]]
<section begin=SO_sdev />;<span id="SO_sdev"></span>[[SO_sdev]]
Line 1,234: Line 2,049:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' SO_sdev
:'''keyword =''' SO_sdev
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


<section begin=SOstate />;<span id="SOstate"></span>[[SOstate]]
<section begin=SOstate />;<span id="SOstate"></span>[[SOstate]]
Line 1,240: Line 2,055:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' SOstate
:'''keyword =''' SOstate
:'''input =''' [[ocean.in]]<section end=SOstate />
:'''input =''' [[roms.in]]<section end=SOstate />


<section begin=Sout />;<span id="Sout"></span>[[Sout]]
<section begin=Sout />;<span id="Sout"></span>[[Sout]]
:Set of switches that determine what fields are written to the stations output file ([[#STAname|STAname]]).
:Set of switches that determine what fields are written to the stations output file ([[Variables#STAname|STAname]]).
:'''dimension =''' '''Sout'''([[#NV|NV]],[[#Ngrids|Ngrids]])
:'''dimension =''' '''Sout'''([[Variables#NV|NV]],[[Variables#Ngrids|Ngrids]])
:'''option = ''' [[Options#STATIONS|STATIONS]]
:'''option = ''' [[Options#STATIONS|STATIONS]]
:'''routine =''' [[mod_ncparam.F]]
:'''routine =''' [[mod_ncparam.F]]
Line 1,255: Line 2,070:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' SPARNAM
:'''keyword =''' SPARNAM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="sposnam"></span>sposnam
;<span id="sposnam"></span>sposnam
Line 1,262: Line 2,077:
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' SPOSNAM
:'''keyword =''' SPOSNAM
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Srho"></span>Srho
;<span id="Srho"></span>Srho
Line 1,273: Line 2,088:
:'''input =''' [[sediment.in]]
:'''input =''' [[sediment.in]]


;<span id="STAname"></span>STAname
;<span id="SSF"></span>SSF
: River runoff data. This file is separated from the regular forcing files to allow manipulations over nested grids. A particular nesting grid may or may not have Sources/Sinks forcing. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''SSF'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#TS_SOURCE|TS_SOURCE]]
:'''routine =''' [[read_phypar.F]]
:'''keyword =''' SSFNAME
:'''input =''' [[roms.in]]
 
:For example, in an application with 3 nested grids but with river forcing in grids 1 and 3 we would have:<div class="box">    [[#LuvSrc|LuvSrc]] == T F T<br />[[#LtracerSrc|LtracerSrc]] == 2*T 2*F 2*T<br /><br />  [[#SSFNAME|SSFNAME]] == my_rivers_grid1.nc \<br />              my_rivers_grid2.nc \<br />              my_rivers_grid3.nc</div>Here, <span class="forestGreen">my_rivers_grid2.nc</span> is a dummy name that will never be processed in ROMS because the logical switches are FALSE in the second grid.
 
;<span id="STA"></span>STA
:Stations output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Stations output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''STAname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''STA'''([[#Ngrids|Ngrids]])
:'''option = '''  
:'''option = '''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' STANAME
:'''keyword =''' STANAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="swim_DL"></span>swim_DL
:Larval size J-axis increment for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_DL
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_DT"></span>swim_DT
:Temperature I-axis increment for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_DT
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Im"></span>swim_Im
:Number of values in larval size I-axix for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Im
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Jm"></span>swim_Jm
:Number of values in temperature J-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Jm
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_L0"></span>swim_L0
:Starting value for temperature I-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Sdec"></span>swim_Sdec
:Fraction active {f} due to decreasing salinity for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''swim_Sdec'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Sdec
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Sinc"></span>swim_Sinc
:Fraction active {d} due to increasing salinity for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''swim_Sinc'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Sinc
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_T0"></span>swim_T0
:Starting value for larval size J-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_T0
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_table"></span>swim_table
:Look-up table, '''swim_table'''(58,24) for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_table
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Tmax"></span>swim_Tmax
:Maximum swimming time fraction for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''swim_Tmax'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Tmax
:'''input =''' [[behavior_oyster.in]]
 
;<span id="swim_Tmin"></span>swim_Tmin
:Minimum swimming time fraction for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''swim_Tmin'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' swim_Tmin
:'''input =''' [[behavior_oyster.in]]


;<span id="sz_alpha"></span>sz_alpha
;<span id="sz_alpha"></span>sz_alpha
Line 1,287: Line 2,193:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' SZ_ALPHA
:'''keyword =''' SZ_ALPHA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">T</span>==
==<span class="alphabet">T</span>==


;<span id="t"></span>t  
;<span id="t"></span>t  
:<wikitex>Tracer-type variables, $T(\xi,\eta,s,t,itrc)$.</wikitex>
:Tracer-type variables, <math>T(\xi,\eta,s,t,itrc)</math>.
:'''dimension =''' '''t'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],3,[[#NT|NT(ng)]])
:'''dimension =''' '''t'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],3,[[#NT|NT(ng)]])
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''t'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''t'''
Line 1,343: Line 2,249:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' T0
:'''keyword =''' T0
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="tau_cd"></span>tau_cd
;<span id="tau_cd"></span>tau_cd
Line 1,369: Line 2,275:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TCOEF
:'''keyword =''' TCOEF
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="tcline"></span>tcline
;<span id="Tcline"></span>Tcline
:Width of surface or bottom boundary layer in which higher vertical resolution is required during stretching. [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with [[#theta_b|theta_b]], [[#theta_s|theta_s]] and <span class="blue">tcline</span>. We have found out that the model goes unstable with high values of [[#theta_s|theta_s]].  In steep and very tall topography, it is recommended to use [[#theta_s|theta_s]]&nbsp;&lt;&nbsp;3.0.
:Width of surface or bottom boundary layer in which higher vertical resolution is required during stretching. [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with [[#theta_b|theta_b]], [[#theta_s|theta_s]] and <span class="blue">Tcline</span>. We have found out that the model goes unstable with high values of [[#theta_s|theta_s]].  In steep and very tall topography, it is recommended to use [[#theta_s|theta_s]]&nbsp;&lt;&nbsp;3.0.
:'''dimension =''' '''tcline'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''Tcline'''([[#Ngrids|Ngrids]])
:'''units =''' meters
:'''units =''' meters
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TCLINE
:'''keyword =''' TCLINE
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="theta_b"></span>theta_b
;<span id="theta_b"></span>theta_b
:S-coordinate bottom control parameter, (0&nbsp;&lt;&nbsp;<span class="blue">theta_b</span>&nbsp;&lt;&nbsp;1). [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with <span class="blue">theta_b</span>, [[#theta_s|theta_s]] and [[#tcline|tcline]]. We have found out that the model goes unstable with high values of [[#theta_s|theta_s]].  In steep and very tall topography, it is recommended to use [[#theta_s|theta_s]]&nbsp;&lt;&nbsp;3.0.
:S-coordinate bottom control parameter, (0&nbsp;&lt;&nbsp;<span class="blue">theta_b</span>&nbsp;&lt;&nbsp;1). [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with <span class="blue">theta_b</span>, [[#theta_s|theta_s]] and [[#Tcline|Tcline]]. We have found out that the model goes unstable with high values of [[#theta_s|theta_s]].  In steep and very tall topography, it is recommended to use [[#theta_s|theta_s]]&nbsp;&lt;&nbsp;3.0.
:'''dimension =''' '''theta_b'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''theta_b'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' THETA_B
:'''keyword =''' THETA_B
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="theta_s"></span>theta_s
;<span id="theta_s"></span>theta_s
:S-coordinate surface control parameter, (0&nbsp;&lt;&nbsp;<span class="blue">theta_s</span>&nbsp;&lt;&nbsp;20). [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with [[#theta_b|theta_b]], <span class="blue">theta_s</span> and [[#tcline|tcline]]. We have found out that the model goes unstable with high values of <span class="blue">theta_s</span>.  In steep and very tall topography, it is recommended to use <span class="blue">theta_s</span>&nbsp;&lt;&nbsp;3.0.
:S-coordinate surface control parameter, (0&nbsp;&lt;&nbsp;<span class="blue">theta_s</span>&nbsp;&lt;&nbsp;20). [[#Ngrids|Ngrids]] values are expected. <span class="red">WARNING:</span> Users need to experiment with [[#theta_b|theta_b]], <span class="blue">theta_s</span> and [[#Tcline|Tcline]]. We have found out that the model goes unstable with high values of <span class="blue">theta_s</span>.  In steep and very tall topography, it is recommended to use <span class="blue">theta_s</span>&nbsp;&lt;&nbsp;3.0.
:'''dimension =''' '''theta_s'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''theta_s'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' THETA_S
:'''keyword =''' THETA_S
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="TIDE"></span>TIDE
: Input tidal forcing file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''TIDE'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[read_phypar.F]]
:'''keyword =''' TIDENAME
:'''input =''' [[roms.in]]


;<section begin=tide_start />;<span id="tide_start"></span>[[tide_start]]
;<section begin=tide_start />;<span id="tide_start"></span>[[tide_start]]
Line 1,399: Line 2,313:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TIDE_START
:'''keyword =''' TIDE_START
:'''input =''' [[ocean.in]]<section end=tide_start />
:'''input =''' [[roms.in]]<section end=tide_start />


<section begin=time_ref />;<span id="time_ref"></span>[[time_ref]]
<section begin=time_ref />;<span id="time_ref"></span>[[time_ref]]
Line 1,406: Line 2,320:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TIME_REF
:'''keyword =''' TIME_REF
:'''input =''' [[ocean.in]]<section end=time_ref />
:'''input =''' [[roms.in]]<section end=time_ref />


;<span id="title"></span>title
;<span id="title"></span>title
:Title of model run.
:Title of model run.
:'''keyword =''' TITLE
:'''keyword =''' TITLE
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="tkenu2"></span>tkenu2
;<span id="tkenu2"></span>tkenu2
Line 1,420: Line 2,334:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TKENU2
:'''keyword =''' TKENU2
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="tkenu4"></span>tkenu4
;<span id="tkenu4"></span>tkenu4
Line 1,429: Line 2,343:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' TKENU4
:'''keyword =''' TKENU4
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="TLFname"></span>TLFname
;<span id="tl_LBC"></span>tl_LBC
:Impulse tangent linear forcing output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Lateral boundary conditions for tangent linear model.  
:'''dimension =''' '''TLFname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''tl_LBC'''(4,[[#nLBCvar|nLBCvar]],[[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_param.F]]
:'''keyword =''' TLFNAME
:'''input =''' [[ocean.in]]


;<span id="TLMname"></span>TLMname
;<span id="tl_M2diff"></span>tl_M2diff
:If weak constraint 4DVar and the [[Options#RPM_RELAXATION|RPM_RELAXATION]] flag is activated, this coefficient is used to relax 2D momentum in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''tl_M2diff'''([[#Ngrids|Ngrids]])
:'''units =''' meters<sup>2</sup> second<sup>-1</sup>
:'''routine =''' [[mod_scalars.F]], [[read_asspar.F]], [[rp_step2d_LF_AM3.h]]
:'''keyword =''' tl_M2diff
:'''input =''' [[s4dvar.in]]
 
;<span id="tl_M3diff"></span>tl_M3diff
:If weak constraint 4DVar and the [[Options#RPM_RELAXATION|RPM_RELAXATION]] flag is activated, this coefficient is used to relax 3D momentum in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''tl_M3diff'''([[#Ngrids|Ngrids]])
:'''units =''' meters<sup>2</sup> second<sup>-1</sup>
:'''routine =''' [[ad_uv3drelax.F]], [[mod_scalars.F]], [[read_asspar.F]], [[rp_uv3drelax.F]], [[tl_uv3drelax.F]]
:'''keyword =''' tl_M3diff
:'''input =''' [[s4dvar.in]]
 
;<span id="tl_Tdiff"></span>tl_Tdiff
:If weak constraint 4DVar and the [[Options#RPM_RELAXATION|RPM_RELAXATION]] flag is activated, this coefficient is used to relax tracer type variables diffusion in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. [[#MT|MT]] values are expected.
:'''dimension =''' '''tl_Tdiff'''([[#NT|NT]],[[#Ngrids|Ngrids]])
:'''units =''' meters<sup>2</sup> second<sup>-1</sup>
:'''routine =''' [[ad_t3drelax.F]], [[mod_scalars.F]], [[read_asspar.F]], [[rp_t3drelax.F]], [[tl_t3drelax.F]]
:'''keyword =''' tl_Tdiff
:'''input =''' [[s4dvar.in]]
 
;<span id="TLF"></span>TLF
:Impulse tangent linear forcing output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''TLF'''([[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' TLFNAME
:'''input =''' [[roms.in]]
 
;<span id="TLM"></span>TLM
:Tangent linear history output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:Tangent linear history output NetCDF file name. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''TLMname'''([[#Ngrids|Ngrids]])
:'''dimension =''' '''TLM'''([[#Ngrids|Ngrids]])
:'''option ='''  
:'''option ='''  
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' TLMNAME
:'''keyword =''' TLMNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="tnu2"></span>tnu2
;<span id="tnu2"></span>tnu2
Line 1,473: Line 2,417:
:'''input =''' [[biology.in]], [[sediment.in]]
:'''input =''' [[biology.in]], [[sediment.in]]


==<span class="alphabet">U</span>==
;<span id="turb_ambi"></span>turb_ambi
:Ambient turbidity level, {turb}, (g/l) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_ambi'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_ambi
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_axis"></span>turb_axis
:Turbidity linear axis crossing {c} for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_axis'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_axis
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_base"></span>turb_base
:Turbidity base factor, {b}, (g/l) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_base'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_base
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_crit"></span>turb_crit
:Critical turbidity value (g/l) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_crit'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_crit
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_mean"></span>turb_mean
:Turbidity mean, {turb0}, (g/l) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_mean'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_mean
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_rate"></span>turb_rate
:Turbidity rate, {beta}, (1/(g/l)) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_rate'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_rate
:'''input =''' [[behavior_oyster.in]]
 
;<span id="turb_size"></span>turb_size
:Minimum larvae size (um) affected by tubidity for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''dimension =''' '''turb_size'''([[#Ngrids|Ngrids]])
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_size
:'''input =''' [[behavior_oyster.in]]


;<span id="UBi"></span>UBi
;<span id="turb_slop"></span>turb_slop
:Array upper bound dimension in the '''i'''-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_I.  In distributed-memory its value is a function of the tile partition, '''UBi'''=[[#Iend|Iend]]+[[#NghostPoints|NghostPoints]].
:Turbidity linear slope, {m}, (1/(g/l)) for turbidity effects on planktonic larvae growth. [[#Ngrids|Ngrids]] values are expected.
:'''option =''' [[Options#UPPER_BOUND_I | UPPER_BOUND_I]]
:'''dimension =''' '''turb_slop'''([[#Ngrids|Ngrids]])
:'''routine =''' [[get_bounds.F]], [[get_tile.F]]
:'''option =''' [[Options#FLOATS|FLOATS]], [[Options#FLOAT_OYSTER|FLOAT_OYSTER]]
:'''routine =''' [[oyster_floats.h]], [[oyster_floats_def.h]], [[oyster_floats_inp.h]], [[oyster_floats_mod.h]], [[oyster_floats_wrt.h]]
:'''keyword =''' turb_slop
:'''input =''' [[behavior_oyster.in]]


;<span id="UBj"></span>UBj
==<span class="alphabet">U</span>==
:Array upper bound dimension in the '''j'''-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_J.  In distributed-memory its value is a function of the tile partition, '''UBj'''=[[#Jend|Jend]]+[[#NghostPoints|NghostPoints]].
:'''option =''' [[Options#UPPER_BOUND_J | UPPER_BOUND_J]] 
:'''routine =''' [[get_bounds.F]], [[get_tile.F]]


;<span id="u"></span>u  
;<span id="u"></span>u  
:<wikitex>Total momentum component in the $xi\hyphen$direction, $u(\xi,\eta,s,t)$.</wikitex>
:Total momentum component in the <math>\xi</math>-direction, <math>u(\xi,\eta,s,t)</math>.
:'''dimension =''' '''u'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],2)
:'''dimension =''' '''u'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],2)
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''u'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''u'''
Line 1,497: Line 2,495:


;<span id="ubar"></span>ubar
;<span id="ubar"></span>ubar
:<wikitex>Vertically-integrated momentum component in the &xi;-direction, $\bar u(\xi,\eta,t)$.
:Vertically-integrated momentum component in the <math>\xi</math>-direction, <math>\bar u(\xi,\eta,t)</math>.
::$$\bar u = \frac{1}{D} \int_{-h}^{\zeta} u\,H_z\,dz$$</wikitex>
::<math display="block">\bar u = \frac{1}{D} \int_{-h}^{\zeta} u\,H_z\,dz</math>
:'''dimension =''' '''ubar'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''dimension =''' '''ubar'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''ubar'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''ubar'''
Line 1,507: Line 2,505:
:'''routine =''' [[step2d.F]]
:'''routine =''' [[step2d.F]]


;<span id="user"></span>user
;<span id="UBi"></span>UBi
:Array upper bound dimension in the '''i'''-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_I.  In distributed-memory its value is a function of the tile partition, '''UBi'''=[[#Iend|Iend]]+[[#NghostPoints|NghostPoints]].
:'''option =''' [[Options#UPPER_BOUND_I|UPPER_BOUND_I]] 
:'''routine =''' [[get_bounds.F]], [[get_tile.F]]
 
;<span id="UBj"></span>UBj
:Array upper bound dimension in the '''j'''-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_J.  In distributed-memory its value is a function of the tile partition, '''UBj'''=[[#Jend|Jend]]+[[#NghostPoints|NghostPoints]].
:'''option =''' [[Options#UPPER_BOUND_J|UPPER_BOUND_J]] 
:'''routine =''' [[get_bounds.F]], [[get_tile.F]]
 
;<section begin=user />;<span id="user"></span>[[user]]
:Generic User parameters, <span class="blue">NUSER</span> values are expected.
:Generic User parameters, <span class="blue">NUSER</span> values are expected.
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' USER
:'''keyword =''' USER
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]<section end=user />


;<span id="USRname"></span>USRname
;<span id="USRname"></span>USRname
:USER input/output generic file name.
:USER's input generic file name.
:'''routine =''' [[mod_iounits.F]]
:'''routine =''' [[mod_iounits.F]]
:'''keyword =''' USRNAME
:'''keyword =''' USRNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


==<span class="alphabet">V</span>==
==<span class="alphabet">V</span>==


;<span id="v"></span>v  
;<span id="v"></span>v  
:<wikitex>3D momentum component in the &eta;-direction, $v(\xi,\eta,s,t)$.</wikitex>
:3D momentum component in the &eta;-direction, <math>v(\xi,\eta,s,t)</math>.
:'''dimension =''' '''v'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],2)
:'''dimension =''' '''v'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]],2)
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''v'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''v'''
Line 1,529: Line 2,537:
:'''units =''' meter second<sup>-1</sup>
:'''units =''' meter second<sup>-1</sup>
:'''grid =''' v-points
:'''grid =''' v-points
:'''option =''' [[Options#SOLVE3D | SOLVE3D]]
:'''option =''' [[Options#SOLVE3D|SOLVE3D]]
:'''routine =''' [[step3d_uv.F]]
:'''routine =''' [[step3d_uv.F]]


Line 1,535: Line 2,543:
:Input variable information file name. This file needs to be processed first so all information arrays can be initialized properly. The default file is at ROMS/External/[[varinfo.dat]].
:Input variable information file name. This file needs to be processed first so all information arrays can be initialized properly. The default file is at ROMS/External/[[varinfo.dat]].
:'''keyword =''' VARNAME
:'''keyword =''' VARNAME
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="vbar"></span>vbar
;<span id="vbar"></span>vbar
:<wikitex>Vertically-integrated momentum component in the &eta;-direction, $\bar v(\xi,\eta,t)$.
:Vertically-integrated momentum component in the &eta;-direction, <math>\bar v(\xi,\eta,t)</math>.
::$$\bar v = \frac{1}{D} \int_{-h}^{\zeta} v\,H_z\,dz$$</wikitex>
::<math display="block">\bar v = \frac{1}{D} \int_{-h}^{\zeta} v\,H_z\,dz</math>
:'''dimension =''' '''vbar'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''dimension =''' '''vbar'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''vbar'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''vbar'''
Line 1,547: Line 2,555:
:'''grid =''' v-points
:'''grid =''' v-points
:'''routine =''' [[step2d.F]]
:'''routine =''' [[step2d.F]]
;<span id="Vgamma"></span>Vgamma
:Vertical stability and accuracy factor (< 1) used to scale the time-step of the convolution operator below its theoretical limit. Notice that four values are needed for <span class="blue">Vgamma</span> to facilitate the error covariance modeling for:
::[1] initial conditions
::[2] model
::[3] boundary conditions
::[4] surface forcing
:'''dimension =''' '''Vgamma'''(4)
:'''routine =''' [[metrics.F]], [[mod_netcdf.F]], [[mod_scalars.F]], [[read_asspar.F]]
:'''keyword =''' Vgamma
:'''input =''' [[s4dvar.in]]


;<span id="visc2"></span>visc2
;<span id="visc2"></span>visc2
Line 1,555: Line 2,574:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' VISC2
:'''keyword =''' VISC2
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="visc2"></span>visc4
;<span id="visc2"></span>visc4
Line 1,564: Line 2,583:
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''routine =''' [[mod_mixing.F]], [[mod_scalars.F]]
:'''keyword =''' VISC4
:'''keyword =''' VISC4
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]
 
;<span id="VolCons"></span>VolCons
:Lateral open boundary edge volume conservation switch for the nonlinear model. This is usually activated with radiation boundary conditions to enforce global mass conservation. Notice that these switches should not be activated if tidal forcing enabled.
:'''dimension =''' '''VolCons'''(4,[[#Ngrids|Ngrids]])
:'''option ='''
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' VolCons
:'''input =''' [[roms.in]]
 
;<span id="Vstretching"></span>Vstretching
:Selects the vertical stretching function, C(s). [[#Ngrids|Ngrids]] values are expected. Possible values are:
::'''1''' - Original function in ROMS from the very beginning from [[Bibliography#SongY_1994a | Song and Haidvogel (1994)]]
::'''2''' - ''A. Shchepetkin'' function from UCLA-ROMS
::'''3''' - ''R. Geyer'' function for shallow sediment applications
::'''4''' - ''A. Shchepetkin'' improved double stretching
::'''5''' - ''Souza et al.'' quadratic Legendre polynomial function that allows higher resolution near the surface
:See [[Vertical S-coordinate]] for more information.
:'''dimension =''' '''Vstretching'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Vstretching
:'''input =''' [[roms.in]]
 
;<span id="Vtransform"></span>Vtransform
:Selects the vertical transform equation. [[#Ngrids|Ngrids]] values are expected. Possible values are:
::'''1''' - Original formulation that has been in ROMS since 1999 described in [[Bibliography#ShchepetkinAF_2005a | Shchepetkin and McWilliams (2005)]]
::'''2''' - New formulation developed by ''A. Shchepetkin''
:See [[Vertical S-coordinate]] for more information.
:'''dimension =''' '''Vtransform'''([[#Ngrids|Ngrids]])
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Vtransform
:'''input =''' [[roms.in]]


==<span class="alphabet">W</span>==
==<span class="alphabet">W</span>==


;<span id="W"></span>W
;<span id="W"></span>W
:<wikitex>Terrain-following, vertical velocity component, $\Omega(\xi,\eta,s)\,H_z/mn$.</wikitex>
:Terrain-following, vertical velocity component, <math>\Omega(\xi,\eta,s)\,H_z/mn</math>.
:'''dimension =''' '''W'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''dimension =''' '''W'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''W'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''W'''
Line 1,589: Line 2,639:


;<span id="wvel"></span>wvel
;<span id="wvel"></span>wvel
:<wikitex>True vertical velocity component, $w(\xi,\eta,s)$. It is computed only for output purposes.</wikitex>
:True vertical velocity component, <math>w(\xi,\eta,s)</math>. It is computed only for output purposes.
:'''dimension =''' '''wvel'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''dimension =''' '''wvel'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''pointer =''' [[mod_ocean.f|OCEAN(ng)%]]'''wvel'''
:'''pointer =''' [[mod_ocean.f|OCEAN(ng)%]]'''wvel'''
Line 1,605: Line 2,655:


;<span id="zeta"></span>zeta
;<span id="zeta"></span>zeta
:<wikitex>Free-surface, $\zeta(\xi,\eta,t)$.</wikitex>
:Free-surface, <math>\zeta(\xi,\eta,t)</math>.
:'''dimension =''' '''zeta'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''dimension =''' '''zeta'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],3)
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''zeta'''
:'''pointer =''' [[mod_ocean.F|OCEAN(ng)%]]'''zeta'''
Line 1,615: Line 2,665:


;<span id="z_r"></span>z_r
;<span id="z_r"></span>z_r
:<wikitex>Actual depths of variables at &rho;-points, $Z_r(\xi,\eta,s)$.</wikitex>
:Actual depths of variables at &rho;-points, <math>Z_r(\xi,\eta,s)</math>.
:'''dimension =''' '''z_r'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''dimension =''' '''z_r'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|N(ng)]])
:'''pointer =''' [[mod_grid.f|GRID(ng)%]]'''z_r'''
:'''pointer =''' [[mod_grid.f|GRID(ng)%]]'''z_r'''
Line 1,625: Line 2,675:


;<span id="z_w"></span>z_w
;<span id="z_w"></span>z_w
:<wikitex>Actual depths of variables at w-points, $Z_w(\xi,\eta,s)$.</wikitex>
:Actual depths of variables at w-points, <math>Z_w(\xi,\eta,s)</math>.
:'''dimension =''' '''z_w'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''dimension =''' '''z_w'''([[#LBi|LBi]]:[[#UBi|UBi]],[[#LBj|LBj]]:[[#UBj|UBj]],[[#N|0:N(ng)]])
:'''pointer =''' [[mod_grid.F|GRID(ng)%]]'''z_w'''
:'''pointer =''' [[mod_grid.F|GRID(ng)%]]'''z_w'''
Line 1,641: Line 2,691:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ZNUDG
:'''keyword =''' ZNUDG
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Zob"></span>Zob
;<span id="Zob"></span>Zob
Line 1,650: Line 2,700:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Zob
:'''keyword =''' Zob
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="Zos"></span>Zos
;<span id="Zos"></span>Zos
Line 1,659: Line 2,709:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' Zos
:'''keyword =''' Zos
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]


;<span id="zos_hsig_alpha"></span>zos_hsig_alpha
;<span id="zos_hsig_alpha"></span>zos_hsig_alpha
Line 1,667: Line 2,717:
:'''routine =''' [[mod_scalars.F]]
:'''routine =''' [[mod_scalars.F]]
:'''keyword =''' ZOS_HSIG_ALPHA
:'''keyword =''' ZOS_HSIG_ALPHA
:'''input =''' [[ocean.in]]
:'''input =''' [[roms.in]]

Latest revision as of 20:09, 19 August 2020

Variables

This wikipage includes all ROMS global variables in alphabetic order. A single long page is built to facilitate printing. Each variable has a unique anchor tag to facilitate linking from any wikipage.


Contents

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A

ad_Akt_fac
Adjoint-based algorithms vertical mixing, basic state, scale factor (nondimensional) for active (NAT) and inert (NPT) tracer variables. In some applications, smaller/larger values of vertical mixing are necessary for stability. It is only used when the CPP option FORWARD_MIXING is activated.
dimension = ad_Akt_fac(MT,Ngrids)
option = FORWARD_MIXING
routine = mod_scalars.F
keyword = ad_AKT_fac
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
ad_Akv_fac
Adjoint-based algorithms vertical mixing, basic state, scale factor (nondimensional) for momentum. In some applications, smaller/larger values of vertical mixing are necessary for stability. It is only used when the CPP option FORWARD_MIXING is activated.
dimension = ad_Akv_fac(Ngrids)
option = FORWARD_MIXING
routine = mod_scalars.F
keyword = ad_AKV_fac
input = roms.in
ad_LBC
Adjoint-based algorithms lateral boundary conditions.
dimension = ad_LBC(4,nLBCvar,Ngrids)
option =
routine = mod_param.F
keyword = ad_LBC
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
ad_tnu2
Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m2/s) for active (NAT) and inert (NPT) tracer variables. If variable horizontal diffusion is activated, ad_tnu2 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
dimension = ad_tnu2(MT,Ngrids)
option =
routine = mod_scalars.F
keyword = ad_TNU2
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
ad_tnu4
Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m4/s) for active (NAT) and inert (NPT) tracer variables. If variable horizontal diffusion is activated, ad_tnu4 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
dimension = ad_tnu4(MT,Ngrids)
option =
routine = mod_scalars.F
keyword = ad_TNU4
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
ad_visc2
Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m2/s) momentum. If variable horizontal viscosity is activated, ad_visc2 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
dimension = ad_visc2(Ngrids)
option =
routine = mod_scalars.F
keyword = ad_VISC2
input = roms.in
ad_visc4
Adjoint-based algorithms lateral, harmonic, constant, mixing coefficient (m4/s) for momentum. If variable horizontal viscosity is activated, ad_visc4 is the mixing coefficient for the largest grid-cell in the domain. In some applications, a larger value than what is used in the nonlinear model (basic state) is necessary for stability.
dimension = ad_visc4(Ngrids)
option =
routine = mod_scalars.F
keyword = ad_VISC4
input = roms.in
ad_VolCons
Lateral open boundary edge volume conservation switch for adjoint-based algorithms. This is usually activated with radiation boundary conditions to enforce global mass conservation. Notice that these switches should not be activated if tidal forcing enabled.
dimension = ad_VolCons(4,Ngrids)
option =
routine = mod_scalars.F
keyword = ad_VolCons
input = roms.in
ADM
Adjoint output NetCDF file name. Ngrids values are expected.
dimension = ADM(Ngrids)
option =
routine = mod_iounits.F
keyword = ADJNAME
input = roms.in
ADS
Adjoint sensitivity functionals input NetCDF file name. Ngrids values are expected.
dimension = ADS(Ngrids)
option =
routine = mod_iounits.F
keyword = ADSNAME
input = roms.in
Akk_bak
Background vertical mixing coefficient for turbulent kinetic energy. Ngrids values are expected.
dimension = Akk_bak(Ngrids)
units = meters2 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keyword = AKK_BAK
input = roms.in
Akp_bak
Background vertical mixing coefficient for turbulent kinetic generic statistical field, psi. Ngrids values are expected.
dimension = Akp_bak(Ngrids)
units = meters2 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keyword = AKP_BAK
input = roms.in
Akt_bak
Background vertical mixing coefficient for tracer type variables.
dimension = Akt_bak(MT,Ngrids)
units = meters2 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keywords = AKT_BAK, MUD_AKT_BAK, SAND_AKT_BAK
input = biology.in, roms.in, sediment.in
Akt_limit
Upper threshold values to limit vertical mixing coefficients computed from vertical mixing parameterizations for tracer type variables. Although this is an engineering fix, the vertical mixing values inferred from ocean observations are rarely higher than this upper limit value.
dimension =
units = meters2 second-1
option =
routine = gls_corstep.F, lmd_vmix.F, mod_scalars.F, my25_corstep.F
keywords = AKT_LIMIT
input = roms.in
Akv_bak
Background vertical mixing coefficient for momentum. Ngrids values are expected.
dimension = Akv_bak(Ngrids)
units = meters2 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keyword = AKV_BAK
input = roms.in
Akv_limit
Upper threshold values to limit vertical mixing coefficients computed from vertical mixing parameterizations for momentum. Although this is an engineering fix, the vertical mixing values inferred from ocean observations are rarely higher than this upper limit value.
dimension =
units = meters2 second-1
option =
routine = gls_corstep.F, lmd_vmix.F, mod_scalars.F, my25_corstep.F
keywords = AKV_LIMIT
input = roms.in
Aout
Set of switches that determine what fields are written to the averages output file (AVGname).
dimension = Aout(NV,Ngrids)
option =
routine = mod_ncparam.F
keyword = Aout
input = roms.in
aparnam
Assimilation parameters input file name.
option =
routine = mod_iounits.F
keyword = APARNAM
input = roms.in
AVG
Averages output NetCDF file name. Ngrids values are expected.
dimension = AVG(Ngrids)
option =
routine = mod_iounits.F
keyword = AVGNAME
input = roms.in

B

balance
Balance operator logical switches for state variables to consider in the error covariance off-diagonal multivariate constraints:
balance(isSalt) = T, salinity
balance(isFsur) = T, free-surface
balance(isVbar) = F, 2D momentum (ubar, vbar)
balance(isVvel) = T, 3D momentum (u, v)
Guidlines:
  1. The salinity contribution, balance(isSalt), depends only on temperature. Notice that temperature is used establish the balanced part of the other state variables.
  2. The free-surface contribution, balance(isFsur), depends on salinity since we need to compute balanced density and integrate properly using LNM_flag and LNM_depth. This implies that balance(isSalt) needs to be TRUE too. It is independent of the 2D or 3D balance velocity terms.
  3. The 3D momentum, balance(isVvel), depends on salinity since we need to compute balanced density. This implies that balance(isSalt) needs to be TRUE too.
dimension = balance(NV)
routine = ad_balance.F, mod_scalars.F, read_asspar.F, tl_balance.F, zeta_balance.F
keyword = balance
input = s4dvar.in
blk_ZQ
Height of surface air humidity measurement. Usually recorded at 10 meters. Ngrids values are expected.
dimension = blk_ZQ(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = BLK_ZQ
input = roms.in
blk_ZT
Height of surface air temperature measurement. Usually recorded at 2 or 10 meters. Ngrids values are expected.
dimension = blk_ZT(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = BLK_ZT
input = roms.in
blk_ZW
Height of surface winds measurement. Usually recorded at 10 meters. Ngrids values are expected.
dimension = blk_ZW(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = BLK_ZW
input = roms.in
bparnam
Biology parameters input file name.
option =
routine = mod_iounits.F
keyword = BPARNAM
input = roms.in
BRY
Open boundary conditions input NetCDF file name. Ngrids values are expected.
dimension = BRY(Ngrids)
option =
routine = mod_iounits.F
keyword = BRYNAME
input = roms.in
bvf_bak
Background Brunt-Vaisala frequency squared. Typical values for the ocean range (as a function of depth) from 1.0E-4 to 1.0E-6.
units = seconds-2
routine = mod_scalars.F
keyword = BVF_BAK
input = roms.in

C

charnok_alpha
Charnok surface roughness used in the various formulations of surface turbulent kinetic energy flux in the GLS. Ngrids values are expected.
dimension = charnok_alpha(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = CHARNOK_ALPHA
input = roms.in
CLM
Climatology input NetCDF file name. Ngrids values are expected.
dimension = CLM(Ngrids)
option =
routine = mod_iounits.F
keyword = CLMNAME
input = roms.in
CnormB
Compute (T/F) open boundary conditions error covariance normalization factors:
CnormB(isFsur) free-surface
CnormB(isUbar) 2D U-momentum
CnormB(isVbar) 2D V-momentum
CnormB(isUvel) 3D U-momentum
CnormB(isVvel) 3D V-momentum
CnormB(isTvar) tracers (NT values exppected)
dimension = CnormB(MstateVar, 4)
routine = mod_scalars.F, normalization.F, read_asspar.F
keyword = CnormB
input = s4dvar.in
CnormF
Compute (T/F) surface forcing error covariance normalization factors:
CnormF(isTsur) tracer flux (NT values exppected)
CnormF(isUstr) wind U-stress
CnormF(isVstr) wind V-stress
dimension = CnormF(2 + NT)
routine = read_asspar.F
keyword = CnormF
input = s4dvar.in
CnormI
Compute (T/F) initial conditions error covariance normalization factors:
CnormI(isFsur) free-surface
CnormI(isUbar) 2D U-momentum
CnormI(isVbar) 2D V-momentum
CnormI(isUvel) 3D U-momentum
CnormI(isVvel) 3D V-momentum
CnormI(isTvar) tracers (NT values exppected)
dimension = CnormI(MstateVar)
routine = read_asspar.F
keyword = CnormI
input = s4dvar.in
CnormM
Compute (T/F) model error covariance normalization factors:
CnormM(isFsur) free-surface
CnormM(isUbar) 2D U-momentum
CnormM(isVbar) 2D V-momentum
CnormM(isUvel) 3D U-momentum
CnormM(isVvel) 3D V-momentum
CnormM(isTvar) tracers (NT values exppected)
dimension = CnormM(MstateVar)
routine = read_asspar.F
keyword = CnormM
input = s4dvar.in
crgban_cw
Surface flux due to Craig and Banner wave breaking used in the various formulations of surface turbulent kinetic energy flux in the GLS. Ngrids values are expected.
dimension = crgban_cw(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = CRGBAN_CW
input = roms.in
Csed
Sediment concentration used in analytical initial conditions. It is used to initialize full 3D cohesive and non-cohesive constant (homogeneous) concentrations of sediment.
dimension = Csed(NST,Ngrids)
units = kilograms meter-3
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_CSED, SAND_CSED
input = sediment.in

D

Dcrit
Minimum depth for wetting and drying. Ngrids values are expected.
dimension = Dcrit(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = DCRIT
input = roms.in
DendS
Ending day for adjoint sensitivity forcing. Ngrids values are expected.
Note: The adjoint forcing is applied at every time step according to desired state functional stored in the adjoint sensitivity NetCDF file. DstrS must be less than or equal to DendS. If both values are zero, their values are reset internally to the full range of the adjoint integration.
dimension = DendS(Ngrids)
option =
routine = mod_scalars.F
keyword = DendS
input = roms.in
DIA
Diagnostics output NetCDF file name. Ngrids values are expected.
dimension = DIA(Ngrids)
option =
routine = mod_iounits.F
keyword = DIANAME
input = roms.in
Dout
Set of switches that determine what fields are written to the diagnostics output file (DIAname).
dimension = Dout(NV,Ngrids)
option =
routine = mod_ncparam.F
keyword = Dout
input = roms.in
dstart
Time stamp assigned to model initialization. Usually a Calendar linear coordinate, like modified Julian Day.
option =
units = days
routine = mod_scalars.F
keyword = DSTART
input = roms.in
DstrS
Starting day for adjoint sensitivity forcing. Ngrids values are expected.
Note: The adjoint forcing is applied at every time step according to desired state functional stored in the adjoint sensitivity NetCDF file. DstrS must be less than or equal to DendS. If both values are zero, their values are reset internally to the full range of the adjoint integration.
dimension = DstrS(Ngrids)
option =
routine = mod_scalars.F
keyword = DstrS
input = roms.in
dt
Time-Step size in seconds. If 3D configuration, dt is the size of the baroclinic time-step. If only 2D configuration, dt is the size of the barotropic time-step. Ngrids values are expected.
dimension = dt(Ngrids)
option =
routine = mod_scalars.F
keyword = DT
input = roms.in
dTdz_min
Minimum d(T)/d(z) above which the balanced salinity (deltaS_b) is computed. Ngrids values are expected.
dimension = dTdz_min(Ngrids)
option =
routine = ad_balance.F, mod_scalars.F, read_asspar.F, tl_balance.F
keyword = dTdz_min
input = s4dvar.in
Dwave
wind-induced wave direction. Direction the waves are coming from; measured clockwise from geographic North. (nautical convention).
dimension = Dwave(LBi:UBi,LBj:UBj)
pointer = FORCES(ng)%Dwave
units = degrees
grid = rho-points
option =
routine = ssw_bbl.h, mb_bbl.h, sg_bbl.h, ana_wwave.h, radiation_stress.F

E

Erate
Surface erosion rate for cohesive and non-cohesive sediment.
dimension = Erate(NST,Ngrids)
units = kilograms meter-2 second-1
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_ERATE, SAND_ERATE
input = sediment.in
ERstr
Starting ensemble run (perturbation or iteration) number.
option =
routine = mod_scalars.F
keyword = ERstr
input = roms.in
ERend
Ending ensemble run (perturbation or iteration) number.
option =
routine = mod_scalars.F
keyword = ERend
input = roms.in
EWperiodic
East-West periodic boundary condition.
dimension = EWperiodic(Ngrids)
option =

F

fbionam
Input script file name containing biological floats behavior model parameters.
option = FLOATS
routine = inp_par.F, mod_iounits.F, read_fltpar.F
keyword = FBIONAM
input = floats.in
Fcoor
Initial horizontal location (Fx0 and Fy0) coordinate type. If Fcoor = 0 then rho grid points are used. If Fcoor = 1 then location is given in latitude and longitude. Fcoor is column C in the POS specification at the end of the floats.in file.
option = FLOATS
routine = inp_par.F
input = floats.in
Fcount
Number of floats to be released at the specified (Fx0,Fy0,Fz0) location. It must be equal or greater than one. If Fcount is greater than one, a cluster distribution of floats centered at (Fx0,Fy0,Fz0) is activated. The total number of floats trajectories to compute must add up to NFLOATS. Fcount is column N in the POS specification at the end of the floats.in file.
option = FLOATS
routine = inp_par.F
input = floats.in
FCTA
Input NetCDF filename for the forecasts initialized from the analysis of the current 4D-Var cycle.
option =
routine =
keyword = FCTnameA
input = roms.in
FCTB
Input NetCDF filename for the forecasts initialized from the analysis of the previous 4D-Var cycle.
option =
routine =
keyword = FCTnameB
input = roms.in
Fdt
Float cluster release time interval in days. This is only used if Fcount is greater than 1. If Fdt gt; 0 a cluster of floats will be deployed from (Fx0,Fy0,Fz0) at Fdt intervals until Fcount floats are released. If Fdt = 0 Fcount floats will be deployed simultaneously with a distribution centered at (Fx0,Fy0,Fz0) and defined by (Fdx,Fdy,Fdz). This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Fdx
Cluster x-distribution parameter. This is only used if Fcount is greater than 1 and Fdt = 0. This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Fdy
Cluster y-distribution parameter. This is only used if Fcount is greater than 1 and Fdt = 0. This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Fdz
Cluster z-distribution parameter. This is only used if Fcount is greater than 1 and Fdt = 0. This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
FLT
floats output NetCDF file name. Ngrids values are expected.
dimension = FLT(Ngrids)
option =
routine = mod_iounits.F
keyword = FLTNAME
input = roms.in
FOIA
Input adjoint forcing NetCDF filename for computing observations impacts during the analysis-forecast cycle. If the forecast error metric is defined in state-space, then FOInameA should be regular adjoint forcing files just like ADSname. If the forecast error metric is defined in observation space (OBS_SPACE is activated) then the forecast is initialized OIFnameA (specified in s4dvar4.in input script) will have the structure of a 4D-Var observation file.
option =
routine =
keyword = FOInameA
input = roms.in
FOIB
Input adjoint forcing NetCDF filename for computing observations impacts during the analysis-forecast cycle. If the forecast error metric is defined in state-space, then FOInameB should be regular adjoint forcing files just like ADSname. If the forecast error metric is defined in observation space (OBS_SPACE is activated) then the forecast is initialized OIFnameB (specified in s4dvar4.in input script) will have the structure of a 4D-Var observation file.
option =
routine =
keyword = FOInameB
input = roms.in
food_supply
Initial food supply (constant source) concentration (mg Carbon/l). Ngrids values are expected.
dimension = food_supply(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = food_supply
input = behavior_oyster.in
fposnam
Input initial floats positions file name (floats.in).
option = FLOATS
routine = mod_iounits.F
keyword = FPOSNAM
input = roms.in
Fprint
Switch to control the printing of floats positions to standard output file. This switch can be used to turn off the printing of information when thousands of floats are released. This information is still in the output floats NetCDF file. Ngrids values are expected.
dimension = Fprint(Ngrids)
option = FLOATS
routine = mod_floats.F, read_fltpar.F
keyword = Fprint
input = floats.in
FRC
Input forcing fields file name(s). Ngrids values are expected.
dimension = FRC(Ngrids)
option =
routine = mod_iounits.F
keyword = FRCNAME
input = roms.in
frrec
Flag to indicate re-start from a previous solution. Ngrids values are expected. For new solutions (not a model restart) use frrec = 0. In a re-start solution, frrec is the time index in the floats NetCDF file assigned for initialization. If frrec is negative (say frrec = -1), the floats will re-start from the most recent time record. That is, the initialization record is assigned internally.
dimension = frrec(Ngrids)
option = FLOATS
routine = mod_scalars.F
keyword = FRREC
input = floats.in
Ft0
Time, in days, of float release after model initialization. This value must be of type real (i.e. 0.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Ftype
Float trajectory type. If Ftype = 1, float(s) will be 3D Lagrangrian particles. If Ftype = 2, float(s) will be isobaric particles (). If Ftype = 3, float(s) will be geopotential (constant depth) particles.
option = FLOATS
routine = inp_par.F
input = floats.in
FWD
Forward trajectory input NetCDF file name. Ngrids values are expected.
dimension = FWD(Ngrids)
option =
routine = read_phypar.F
keyword = FWDNAME
input = roms.in
Fx0
Initial float(s) x-location in grid units or longitude depending on the value of Fcoor. This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Fy0
Initial float(s) y-location in grid units or longitude depending on the value of Fcoor. This value must be of type real (i.e. 5.d0).
option = FLOATS
routine = inp_par.F
input = floats.in
Fz0
Initial float(s) z-location in vertical levels or depth. If Fz0 is less than or equal to zero then Fz0 is the initial depth in meters. If Fz0 is greater than 0 and less than N(ng) the initial position is relative to the W grid (0 is the bottom and N is the surface). This value must be of type real (i.e. -45.d0).
option = FLOATS
routine = inp_par.F
input = floats.in

G

gamma2
Slipperiness variable, either 1.0 (free slip) or -1.0 (no slip). Ngrids values are expected.
dimension = gamma2(Ngrids)
routine = mod_grid.F, mod_scalars.F
keyword = GAMMA2
input = roms.in
Gfactor_DS
Salinity I-axis increment for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_DS
input = behavior_oyster.in
Gfactor_DT
Temperature J-axis increment for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_DT
input = behavior_oyster.in
Gfactor_Im
Number of values in salinity I-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_Im
input = behavior_oyster.in
Gfactor_Jm
Number of values in temperature J-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_Jm
input = behavior_oyster.in
Gfactor_S0
Starting value for salinity I-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_S0
input = behavior_oyster.in
Gfactor_T0
Starting value for temperature J-axis for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_T0
input = behavior_oyster.in
Gfactor_table
Look-up table, Gfactor(15,24), for planktonic larvae growth rate factor (nondimensional) as a function salinity and temperature.
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Gfactor_table
input = behavior_oyster.in
gls_c1
Generic length-scale closure independent shear production coefficient. Ngrids values are expected.
dimension = gls_c1(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_C1
input = roms.in
gls_c2
Generic length-scale closure independent dissipation coefficient. Ngrids values are expected.
dimension = gls_c2(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_C2
input = roms.in
gls_c3m
Generic length-scale closure independent buoyancy production coefficient (minus). Ngrids values are expected.
dimension = gls_c3m(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_C3M
input = roms.in
gls_c3p
Generic length-scale closure independent buoyancy production coefficient (plus). Ngrids values are expected.
dimension = gls_c3p(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_C3P
input = roms.in
gls_cmu0
Generic length-scale closure independent stability coefficient. Ngrids values are expected.
dimension = gls_cmu0(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_CMU0
input = roms.in
gls_Kmin
Generic length-scale minimum value of specific turbulent kinetic energy. Ngrids values are expected.
dimension = gls_Kmin(Ngrids)
option = GLS_MIXING
routine = mod_mixing.F, mod_scalars.F
keyword = GLS_KMIN
input = roms.in
gls_m
Generic length-scale turbulent kinetic energy exponent. Ngrids values are expected.
dimension = gls_m(Ngrids)
option = GLS_MIXING
routine = mod_mixing.F, mod_scalars.F
keyword = GLS_M
input = roms.in
gls_n
Generic length-scale turbulent length scale exponent. Ngrids values are expected.
dimension = gls_n(Ngrids)
option = GLS_MIXING
routine = mod_mixing.F, mod_scalars.F
keyword = GLS_N
input = roms.in
gls_p
Generic length-scale stability exponent. Ngrids values are expected.
dimension = gls_p(Ngrids)
option = GLS_MIXING
routine = mod_mixing.F, mod_scalars.F
keyword = GLS_P
input = roms.in
gls_Pmin
Generic length-scale minimum value of dissipation. Ngrids values are expected.
dimension = gls_Pmin(Ngrids)
option = GLS_MIXING
routine = mod_mixing.F, mod_scalars.F
keyword = GLS_PMIN
input = roms.in
gls_sigk
Generic length-scale closure independent constant Schmidt number for turbulent kinetic energy diffusivity. Ngrids values are expected.
dimension = gls_sigk(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_SIGK
input = roms.in
gls_sigp
Generic length-scale closure independent constant Schmidt number for turbulent generic statistical field, psi. Ngrids values are expected.
dimension = gls_sigp(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = GLS_SIGP
input = roms.in
GradErr
Upper bound on the relative error of the gradient for the Lanczos conjugate gradient algorithm.
routine = mod_fourdvar.F, read_asspar.F
keyword = GradErr
input = s4dvar.in
Grate_DF
Food supply I-axis increment for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_DF
input = behavior_oyster.in
Grate_DL
Larval size J-axis increment for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_DL
input = behavior_oyster.in
Grate_F0
Starting value for food supply I-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_F0
input = behavior_oyster.in
Grate_Im
Number of values in food supply I-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_Im
input = behavior_oyster.in
Grate_Jm
Number of values in larval size J-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_Jm
input = behavior_oyster.in
Grate_L0
Starting value for larval size J-axis for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_L0
input = behavior_oyster.in
Grate_table
Look-up table, Grate(31,52), for planktonic larvae growth rate (um/day) as a function of food supply (mg Carbon /l) and larval size (um).
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Grate_table
input = behavior_oyster.in
GRD
Grid Input NetCDF file name. Ngrids values are expected.
dimension = GRD(Ngrids)
routine = mod_iounits.F
keyword = GRDNAME
input = roms.in
GridsInLayer
Number of grids in each nested layer. NestLayers values are expected.
dimension = GridsInLayer(NestLayers)
option =
routine = mod_scalars.F
keyword = GridsInLayer
input = roms.in
GST
GST analysis input/output check pointing NetCDF file name. Ngrids values are expected.
dimension = GST(Ngrids)
option =
routine = mod_iounits.F
keyword = GSTNAME
input = roms.in

H

HAR
Least-squares detiding harmonics output NetCDF file name. Ngrids values are expected.
dimension = HAR(Ngrids)
option =
routine = mod_iounits.F
keyword = HARNAME
input = roms.in
HdecayB
Boundary conditions error covariance horizontal, isotropic decorrelation scales (m). A value is expected for each boundary edge in the following order:
1: west   2: south   3:east   4: north
HdecayB(isFsur) free-surface
HdecayB(isUbar) 2D U-momentum
HdecayB(isVbar) 2D V-momentum
HdecayB(isUvel) 3D U-momentum
HdecayB(isVvel) 3D V-momentum
HdecayB(isTvar) tracers (NT, Ngrids values expected)
dimension = HdecayB(4,MstateVar, Ngrids)
units = meters
routine = metrics.F, mod_netcdf.F, mod_scalars.F, normalization.F, read_asspar.F
keyword = HdecayB
input = s4dvar.in
HdecayF
Surface forcing error covariance horizontal, isotropic decorrelation scales (m):
HdecayF(isTsur) tracers flux (NT, Ngrids values expected)
HdecayF(isUstr) wind U-stress
HdecayF(isVstr) wind V-stress
dimension = HdecayF(2 + NT, Ngrids)
units = meters
routine = metrics.F, mod_netcdf.F, mod_scalars.F, normalization.F, read_asspar.F
keyword = HdecayF
input = s4dvar.in
HdecayI
Initial conditions error covariance horizontal, isotropic decorrelation scales (m):
HdecayI(isFsur) free-surface
HdecayI(isUbar) 2D U-momentum
HdecayI(isVbar) 2D V-momentum
HdecayI(isUvel) 3D U-momentum
HdecayI(isVvel) 3D V-momentum
HdecayI(isTvar) tracers (NT, Ngrids values expected)
dimension = HdecayI(MstateVar, Ngrids)
units = meters
routine = metrics.F, mod_netcdf.F, mod_scalars.F, normalization.F, read_asspar.F
keyword = HdecayI
input = s4dvar.in
HdecayM
Model error covariance horizontal, isotropic decorrelation scales (m):
HdecayM(isFsur) free-surface
HdecayM(isUbar) 2D U-momentum
HdecayM(isVbar) 2D V-momentum
HdecayM(isUvel) 3D U-momentum
HdecayM(isVvel) 3D V-momentum
HdecayM(isTvar) tracers (NT, Ngrids values expected)
dimension = HdecayM(MstateVar, Ngrids)
units = meters
routine = metrics.F, mod_netcdf.F, mod_scalars.F, normalization.F, read_asspar.F
keyword = HdecayM
input = s4dvar.in
HevecErr
Maximum error bound on Hessian eigenvectors in the Lanczos conjugate gradient algorithm. Note that even quite inaccurate eigenvectors are useful for pre-conditioning purposes.
routine = cgradient.F, congrad.F, mod_fourdvar.F, posterior.F, read_asspar.F, rpcg_lanczos.F
keyword = HevecErr
input = s4dvar.in
Hgamma
Horizontal stability and accuracy factor (< 1) used to scale the time-step of the convolution operator below its theoretical limit. Notice that four values are needed for Hgamma to facilitate the error covariance modeling for:
[1] initial conditions
[2] model
[3] boundary conditions
[4] surface forcing
dimension = Hgamma(4)
routine = metrics.F, mod_netcdf.F, mod_scalars.F, read_asspar.F
keyword = Hgamma
input = s4dvar.in
HIS
Output history data file name. Ngrids values are expected.
dimension = HIS(Ngrids)
option =
routine = mod_iounits.F
keyword = HISNAME
input = roms.in
HISname
History output NetCDF file name. Ngrids values are expected.
dimension = HISname(Ngrids)
option =
routine = mod_iounits.F
keyword = HISNAME
input = roms.in
Hout
Set of switches that determine what fields are written to the history output file (HISname).
dimension = Hout(NV,Ngrids)
option =
routine = mod_ncparam.F
keyword = Hout
input = roms.in
Hz
Vertical level thicknesses, .
dimension = Hz(LBi:UBi,LBj:UBj,N(ng))
pointer = GRID(ng)%Hz
tangent = tl_Hz
adjoint = ad_Hz
units = meter
grid = ρ-points
option = SOLVE3D
routine = set_depths.F

I

IAD
Adjoint initial conditions input NetCDF file name. Ngrids values are expected.
dimension = IAD(Ngrids)
option =
routine = mod_iounits.F
keyword = IADNAME
input = roms.in
idbio
Identification indexes for biological tracer variables, t(:,:,:,:,idbio(:)).
dimension = idbio(NBT)
option = BIOLOGY
routine = mod_scalars.F
idsed
Identification indexes for biological tracer variables, t(:,:,:,:,idsed(:)).
dimension = idsed(NST)
option = SEDIMENT
routine = mod_scalars.F
ieast
Index of eastern boundary.
option =
routine = mod_scalars.F
Iend
Non-overlapping upper bound tile index in the i-direction. Its value depends on the tile rank (sub-domain partition).
routine = tile.h, get_tile.F
inert
Identification indexes for inert tracer variables, t(:,:,:,:,inert(:)).
dimension = inert(NPT)
option = T_PASSIVE
routine = mod_scalars.F
INI
Nonlinear initial conditions input NetCDF file name. Ngrids values are expected.
dimension = INI(Ngrids)
option =
routine = mod_iounits.F
keyword = ININAME
input = roms.in
inorth
Index of northern boundary.
option =
routine = mod_scalars.F
IRP
Representer initial conditions input NetCDF file name. Ngrids values are expected.
dimension = IRP(Ngrids)
option =
routine = mod_iounits.F
keyword = IRPNAME
input = roms.in
isFsur
Assimilation state variable index for free-surface.
value = 1
routine = mod_ncparam.F
isalt
Tracer identification index for salinity, t(:,:,:,:,isalt).
routine = mod_scalars.F
isouth
Index of southern boundary.
option =
routine = mod_scalars.F
Istr
Non-overlapping lower bound tile index in the i-direction. Its value depends on the tile rank (sub-domain partition).
routine = tile.h, get_tile.F
isTvar
Assimilation state variable indices for tracers.
dimension = isTvar(MT)
routine = mod_ncparam.F
isUbar
Assimilation state variable index for 2D U-momentum.
value = 2
routine = mod_ncparam.F
isVbar
Assimilation state variable index for 2D V-momentum.
value = 3
routine = mod_ncparam.F
isUvel
Assimilation state variable index for 3D U-momentum.
value = 4
routine = mod_ncparam.F
isVvel
Assimilation state variable index for 3D V-momentum.
value = 5
routine = mod_ncparam.F
itemp
Tracer identification index for potential temperature, t(:,:,:,:,itemp).
routine = mod_scalars.F
ITL
Tangent linear initial conditions input NetCDF file name. Ngrids values are expected.
dimension = ITL(Ngrids)
option =
routine = mod_iounits.F
keyword = ITLNAME
input = roms.in
iwest
Index of western boundary.
option =
routine = mod_scalars.F

J

Jend
Non-overlapping upper bound tile index in the j-direction. Its value depends on the tile rank (sub-domain partition).
routine = tile.h, get_tile.F
Jstr
Non-overlapping lower bound tile index in the j-direction. Its value depends on the tile rank (sub-domain partition).
routine = tile.h, get_tile.F
Jwtype
Jerlov water type: an integer value from 1 to 5.
option =
routine = mod_mixing.F
keyword = WTYPE
input = roms.in

K

KendS
Ending vertical level of the 3D adjoint state variables whose sensitivity is required. Ngrids values are expected.
dimension = KendS(Ngrids)
option =
routine = mod_scalars.F
keyword = KendS
input = roms.in
KstrS
Starting vertical level of the 3D adjoint state variables whose sensitivity is required. Ngrids values are expected.
dimension = KstrS(Ngrids)
option =
routine = mod_scalars.F
keyword = KstrS
input = roms.in

L

Larvae_size0
Initial planktonic larvae size in terms of length (um). Ngrids values are expected.
dimension = Larvae_size0(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Larvae_size0
input = behavior_oyster.in
Larvae_GR0
Initial planktonic larvae growth rate (um/day). Ngrids values are expected.
dimension = Larvae_GR0(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = Larvae_GR0
input = behavior_oyster.in
LBC
Lateral boundary conditions.
dimension = LBC(4,nLBCvar,Ngrids)
option =
routine = mod_param.F
keyword = LBC
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
LBi
Array lower bound dimension in the i-direction. In serial and shared-memory applications its value is LBi = -2 for East-West periodic grids or LBi = 0 for non-periodic grids . In distributed-memory its value is a function of the tile partition, LBi = Istr - NghostPoints.
option = LOWER_BOUND_I
routine = get_bounds.F, get_tile.F
LBj
Array lower bound dimension in the j-direction. In serial and shared-memory applications its value is LBj = -2 for North-South periodic grids or LBj = 0 for non-periodic grids . In distributed-memory its value is a function of the tile partition, LBj = Jstr - NghostPoints.
option = LOWER_BOUND_J
routine = get_bounds.F, get_tile.F
LcycleADJ
Logical switch(s) (T/F) used to recycle time records in output adjoint file. Ngrids values are expected. If TRUE, only the latest two re-start time records are maintained. If FALSE, all adjoint fields are saved every nADJ time-steps without recycling.
dimension = LcycleADJ(Ngrids)
option =
routine = mod_scalars.F
keyword = LcycleADJ
input = roms.in
LcycleRST
Logical switch(s) (T/F) used to recycle time records in output re-start file. Ngrids values are expected. If TRUE, only the latest two re-start time records are maintained. If FALSE, all re-start fields are saved every nRST time-steps without recycling. The re-start fields are written at all levels in double precision unless the RST_SINGLE CPP option is activated.
dimension = LcycleRST(Ngrids)
option = PERFECT_RESTART, RST_SINGLE
routine = mod_scalars.F
keyword = LcycleRST
input = roms.in
LcycleTLM
Logical switch(s) (T/F) used to recycle time records in output tangent linear file. Ngrids values are expected. If TRUE, only the latest two re-start time records are maintained. If FALSE, all tangent linear fields are saved every nTLM time-steps without recycling.
dimension = LcycleTLM(Ngrids)
option =
routine = mod_scalars.F
keyword = LcycleTLM
input = roms.in
LdefNRM
Logical switch(s) (T/F) used to create new normalization NetCDF file for:
LdefNRM(1,:) initial conditions error covariance
LdefNRM(2,:) model error covariance
LdefNRM(3,:) boundary conditions error covariance
LdefNRM(4,:) surface forcing error covariance
The computation of the correlation normalization coefficients is very expensive and needs to be computed only once for a particular application provided that grid, land/sea masking (if any), and decorrelation scales (see HdecayM, VdecayM, TdecayM, HdecayI, VdecayI, HdecayB, VdecayB, HdecayF) remain the same. The user can use this switch in conjunction with the CnormM, CnormI, CnormB, CnormF switches to compute each coefficient separately. The normalization NetCDF file only needs to be created once and simultaneous runs can write to the same file. If using this approach, compute the normalization factors with the CORRELATION CPP-option and not I4DVAR, RBL4DVAR or R4DVAR.
dimension = LdefNRM(4, Ngrids)
option = I4DVAR, RBL4DVAR, R4DVAR, CORRELATION
routine = correlation.h, mod_scalars.F, read_asspar.F
keyword = LdefNRM
input = s4dvar.in
ldefout
Logical switch(s) (T/F) used to create new output files when initializing from a re-start file, |nrrec| > 0. Ngrids values are expected. If TRUE and applicable, a new history, average, diagnostic and station files are created during the initialization stage. If FALSE and applicable, data is appended to existing history, average, diagnostic and station files. See also parameters ndefHIS, ndefAVG and ndefDIA.
dimension = ldefout(Ngrids)
option = PERFECT_RESTART
routine = mod_scalars.F
keyword = LDEFOUT
input = roms.in
levbfrc
Shallowest level to apply bottom momentum stress as a body-force. Ngrids values are expected.
dimension = levbfrc(Ngrids)
option = BODYFORCE
routine = mod_scalars.F
keyword = LEVBFRC
input = roms.in
levsfrc
Deepest level to apply surface momentum stress as a body-force. Ngrids values are expected.
dimension = levsfrc(Ngrids)
option = BODYFORCE
routine = mod_scalars.F
keyword = LEVSFRC
input = roms.in
Lfloats
Logical switch(s) (T/F) used to control the computation of floats trajectories within nested and/or multiple connected grids. Ngrids values are expected. By default this switch is set to TRUE in mod_scalars.F for all grids when the CPP option FLOATS is activated. The user can control which grids to process by turning on/off this switch.
dimension = Lfloats(Ngrids)
option = FLOATS
routine = mod_scalars.F
keyword = Lfloats
input = floats.in
LhessianEV
Switch (T/F) to compute approximated Hessian eigenpairs in the Lanzos conjugate gradient algorithm.
routine = cgradient.F, congrad.F, mod_fourdvar.F, read_asspar.F, rpcg_lanczos.F
keyword = LhessianEV
input = s4dvar.in
LhotStart
Switch (T/F) to activate hot start in weak-constraint (R4DVAR and RBL4DVAR) algorithms of subsequent outer loops.
routine = ad_congrad.F, congrad.F, mod_fourdvar.F, read_asspar.F, tl_congrad.F
keyword = LhotStart
input = s4dvar.in
Lm
Number of interior grid points in the ξ-direction. Ngrids values are expected.
dimension = Lm(Ngrids)
routine = mod_param.F
keyword = Lm
input = roms.in
Lm2CLM
Logical switch(s) (T/F) used to process 2D momentum (ubar, vbar) climatology. The CPP option M2CLIMATOLOGY is now obsolete and replaced with these switches to facilitate nesting applications. Currently, CLIMA(ng)%ubarclm and CLIMA(ng)%vbarclm are used for sponges and nudging. If using tidal forcing, the climatological values are adjusted to include tides.
dimension = Lm2CLM(Ngrids)
routine = mod_scalars.F
keyword = Lm2CLM
input = roms.in
Lm3CLM
Logical switch(s) (T/F) used to process 3D momentum (u, v) climatology. The CPP option M3CLIMATOLOGY is now obsolete and replaced with these switches to facilitate nesting applications. Currently, CLIMA(ng)%uclm and CLIMA(ng)%vclm are used for sponges and nudging.
dimension = Lm3CLM(Ngrids)
routine = mod_scalars.F
keyword = Lm3CLM
input = roms.in
LNM_depth
Level of no motion depth (m; positive) used to compute the balanced free-surface contribution in the error covariance balance operator. It is only relevant when LNM_flag=1, balance(isFsur)=T, and ZETA_ELLIPTIC is NOT activated. It is used to integrate the non-hydrostatic equation. Ngrids values are expected.
dimension = LNM_depth(Ngrids)
units = meters
routine = ad_balance.F, mod_scalars.F, read_asspar.F, tl_balance.F
keyword = LNM_depth
input = s4dvar.in
LNM_flag
Level of no motion integration flag used to used to compute the balanced free-surface contribution:
LNM_flag = 0, integrate from local bottom to the surface
LNM_flag = 1, integrate from LNM_depth to surface or integrate from local bottom if shallower than LNM_depth
routine = ad_balance.F, mod_scalars.F, read_asspar.F, tl_balance.F
keyword = LNM_flag
input = s4dvar.in
LnudgeM2CLM
Logical switch(s) (T/F) used to activate the nudging of 2D momentum climatology. The CPP option M2CLM_NUDGING is now obsolete and replaced with these switches to facilitate nesting applications.

Users also need turn on (set to T) the logical switch Lm2CLM to process the required 2D momentum climatology data. This data can be set with analytical functions (ANA_M2CLIMA) or read from input climatology NetCDF files(s).

The nudging coefficients (CLIMA(ng)%M2nudgcof) can be set with analytical functions in ana_nudgcoef.h using CPP option ANA_NUDGCOEF. Otherwise it will be read from NetCDF file NUDNAME.
dimension = LnudgeM2CLM(Ngrids)
routine = mod_scalars.F
keyword = LnudgeM2CLM
input = roms.in
LnudgeM3CLM
Logical switch(s) (T/F) used to activate the nudging of 3D momentum climatology. The CPP option M3CLM_NUDGING is now obsolete and replaced with these switches to facilitate nesting applications.

Users also need turn on (set to T) the logical switch Lm3CLM to process the required 3D momentum climatology data. This data can be set with analytical functions (ANA_M3CLIMA) or read from input climatology NetCDF files(s).

The nudging coefficients (CLIMA(ng)%M3nudgcof) can be set with analytical functions in ana_nudgcoef.h using CPP option ANA_NUDGCOEF. Otherwise it will be read from NetCDF file NUDNAME.
dimension = LnudgeM3CLM(Ngrids)
routine = mod_scalars.F
keyword = LnudgeM3CLM
input = roms.in
LnudgeTCLM
Logical switch(s) (T/F) used to activate the nudging of active and inert tracer climatology variables. These switches also control which tracer variables to nudge. The CPP option TCLM_NUDGING is now obsolete and replaced with these switches to facilitate nesting applications.

Only NAT active tracers (temperature, salinity) and NPT inert tracers need to be specified here.
LnudgeTCLM(itemp,ng) for temperature (itemp=1)
LnudgeTCLM(isalt,ng) for salinity (isalt=2)
LnudgeTCLM(NAT+1,ng) for inert tracer 1
... ...
LnudgeTCLM(NAT+NPT,ng) for inert tracer NPT
Other biological and sediment tracers switches are specified in their respective input scripts.

Users also need turn on (set to T) the logical switch LtracerCLM to process the required 3D tracer climatology data. This data can be set with analytical functions (ANA_TCLIMA) or read from input climatology NetCDF files(s).

The nudging coefficients (CLIMA(ng)%Tnudgcof) can be set with analytical functions in ana_nudgcoef.h using CPP option ANA_NUDGCOEF. Otherwise it will be read from NetCDF file NUDNAME.
dimension = LnudgeTCLM(Ngrids)
routine = mod_scalars.F
keyword = LnudgeTCLM
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
Lprecond
Switch (T/F) to activate preconditioning in the I4DVAR algorithm. Two types of Limited-Memory preconditioners (LMP) are available Tshimanga et al., (2008): Spectral and Ritz.
If Lprecond=T and Lritz=F, Spectral LMP
If Lprecond=T and Lritz=T, Ritz LMP
routine = ad_congrad.F, cgradient.F, congrad.F, mod_fourdvar.F, read_asspar.F, rpcg_lanczos.F, tl_congrad.F
keyword = Lprecond
input = s4dvar.in
Lritz
Switch to activate either Ritz Limited-Memory Preconditioner (T) or spectral Limited-Memory Preconditioner (F) in the I4DVAR algorithm using eigenpairs approximation for the Hessian matrix. The accuracy of the Hessian eigenvectors (HevecErr) can be used to fine tune the minimization. That is, HevecErr can be used to control the number of eigenvalues of the preconditioning Hessian matrix. See Tshimanga et al., (2008) for details.
routine = cgradient.F, congrad.F, mod_fourdvar.F, read_asspar.F, rpcg_lanczos.F
keyword = Lritz
input = s4dvar.in
LrstGST
Logical switch(s) (T/F) used to restart GST analysis. If TRUE, the check pointing data is read in from the GST restart NetCDF file. If FALSE and applicable, the check pointing GST data is saved and overwritten every nGST iterations of the algorithm.
dimension =
option =
routine = mod_scalars.F
keyword = LcycleTLM
input = roms.in
Lsediment
Logical switch(s) (T/F) used to control sediment model computation within nested and/or multiple connected grids. Ngrids values are expected. By default this switch is set to TRUE in mod_scalars.F for all grids when the CPP option SEDIMENT is activated. The user can control which grids to process by turning on/off this switch.
dimension = Lsediment(Ngrids)
option = SEDIMENT
routine = mod_scalars.F
keyword = Lsediment
input = sediment.in
LsshCLM
Logical switch(s) (T/F) used to process sea-surface height climatology. The CPP option ZCLIMATOLOGY is now obsolete and replaced with these switches to facilitate nesting applications. Currently, the sea-surface height climatology, CLIMA(ng)%ssh, is not used but is kept for future use.

The nudging of SSH on the free-surface governing equation (vertically integrated continuity equation) is not allowed because it violates mass/volume conservation. Recall that the time rate of change of free-surface is computed from the divergence of ubar and vbar. If such a nudging term is required, it needs to be specified on the momentum equations for (u,v) and/or (ubar,vbar). If done on (u,v) only, its effects enter the 2D momentum equations via the residual vertically integrated forcing term.
dimension = LsshCLM(Ngrids)
routine = mod_scalars.F
keyword = LsshCLM
input = roms.in
Lstate
Logical switches (T/F) to specify the adjoint state variables whose sensitivity is required. Ngrids values are expected for each state variable.
routine = mod_scalars.F
keyword = Lstate
input = roms.in
Lstations
Logical switch(s) (T/F) used to control the writing of station data within nested and/or multiple connected grids. Ngrids values are expected. By default this switch is set to TRUE in mod_scalars.F for all grids when the CPP option STATIONS is activated. The user can control which grids to process by turning on/off this switch.
dimension = Lstations(Ngrids)
option = STATIONS
routine = mod_scalars.F
keyword = Lstations
input = stations.in
LtracerCLM
Logical switch(s) (T/F) used to process active and inert climatology tracer variables. The CPP option TCLIMATOLOGY is now obsolete and replaced with these switches to facilitate nesting applications. Currently, CLIMA(ng)%tclm is used for horizontal mixing, sponges, and nudging.

Only NAT active tracers (temperature, salinity) and NPT inert tracers need to be specified here.
LtracerCLM(itemp,ng) for temperature (itemp=1)
LtracerCLM(isalt,ng) for salinity (isalt=2)
LtracerCLM(NAT+1,ng) for inert tracer 1
... ...
LtracerCLM(NAT+NPT,ng) for inert tracer NPT
Other biological and sediment tracers switches are specified in their respective input scripts.

These switches also control which climatology tracer fields (especially passive tracers) need to be processed so we may reduce the memory allocation for the CLIMA(ng)%tclm array.
dimension = LtracerCLM(MT,Ngrids)
routine = mod_scalars.F
keyword = LtracerCLM
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
LtracerSponge
Logical switch(s) (T/F) to increase/decrease horizontal diffusivity in specific areas of the domain. It can be used to specify sponge areas with larger horizontal mixing coefficients for damping of high frequency noise due to open boundary conditions or nesting. The CPP option SPONGE is now obsolete and replaced with these switches to facilitate or not sponge areas over a particular nested grid.

The horizontal mixing distribution is specified in ini_hmixcoef.F as:
diff2(i,j,itrc) = diff_factor(i,j) * diff2(i,j,itrc)
diff4(i,j,itrc) = diff_factor(i,j) * diff4(i,j,itrc)
The variable diff_factor can be read from the grid NetCDF file. Alternately, the horizontal viscosity in the sponge area can be set-up with analytical functions in ana_sponge.h using CPP ANA_SPONGE when the LuvSponge is turned ON for a particular grid.
dimension = LtracerSponge(MT,Ngrids)
routine = mod_scalars.F
keyword = LtracerSponge
input = roms.in
LtracerSrc
Logical switch(s) (T/F) used to activate tracers point Sources/Sinks (like river runoff) and to specify which tracer variables to consider. Only NAT active tracers (temperature, salinity) and NPT inert tracers need to be specified here.
dimension = LtracerSrc(MT,Ngrids)
routine = mod_scalars.F
keyword = LtracerSrc
input = bio_Fennel.in, ecosim.in, nemuro.in, npzd_Franks.in, npzd_iron.in, npzd_Powell.in, roms.in
Other biological and sediment tracers switches are activated in their respective input scripts.
In nesting applications, turn on only the grids that require activation and processing of tracers point Sources/Sinks.
LuvSponge
Logical switch(s) (T/F) to increase/decrease horizontal viscosity in specific areas of the domain. It can be used to specify sponge areas with larger horizontal mixing coefficients for damping of high frequency noise due to open boundary conditions or nesting. The CPP option SPONGE is now obsolete and replaced with these switches to facilitate or not sponge areas over a particular nested grid.

The horizontal mixing distribution is specified in ini_hmixcoef.F as:
visc2_r(i,j) = visc_factor(i,j) * visc2_r(i,j)
visc4_r(i,j) = visc_factor(i,j) * visc4_r(i,j)
The variable visc_factor can be read from the grid NetCDF file. Alternately, the horizontal viscosity in the sponge area can be set-up with analytical functions in ana_sponge.h using CPP ANA_SPONGE when the switch LuvSponge is turned ON for a particular grid.
dimension = LuvSponge(Ngrids)
routine = mod_scalars.F
keyword = LuvSponge
input = roms.in
LuvSrc
Logical switch(s) (T/F) used to activate momentum horizontal transport points Sources/Sinks. Usually it is used to turn on/off river runoff transport (u or v variables) in an application. In nesting applications, turn on only the grids that require activation and processing of momentum point Sources/Sinks.
dimension = LuvSrc(Ngrids)
routine = mod_scalars.F
keyword = LuvSrc
input = roms.in
LwSrc
Logical switch(s) (T/F) used to activate mass points Sources/Sinks. Usually it is used to turn on/off volume vertical influx (w) in an application. In nesting applications, turn on only the grids that require activation and processing of mass influx point Sources/Sinks.
dimension = LwSrc(Ngrids)
routine = mod_scalars.F
keyword = LwSrc
input = roms.in
LwrtNRM
Logical switch(s) (T/F) to write out correlation normalization factors for:
LwrtNRM(1,:) initial conditions error covariance
LwrtNRM(2,:) model error covariance
LwrtNRM(3,:) boundary conditions error covariance
LwrtNRM(4,:) surface forcing error covariance
If TRUE, these factors computed and written to NRMnameI, NRMnameM, NRMnameB, and NRMnameF NetCDF files, respectively. If FALSE, they are read from NRMname NetCDF file.
dimension = LwrtNRM(4, Ngrids)
option = I4DVAR, RBL4DVAR, R4DVAR, CORRELATION
routine = correlation.h, mod_scalars.F, normalization.F, read_asspar.F
keyword = LwrtNRM
input = s4dvar.in

M

M2nudg
Nudging time scale for 2D momentum. Ngrids values are expected.
dimension = M2nudg(Ngrids)
units = days
option =
routine = mod_scalars.F
keyword = M2NUDG
input = roms.in
M3nudg
Nudging time scale for 3D momentum. Ngrids values are expected.
dimension = M3nudg(Ngrids)
units = days
option =
routine = mod_scalars.F
keyword = M3NUDG
input = roms.in
MaxIterGST
Maximum number of GST algorithm iterations.
dimension =
option =
routine = mod_scalars.F
keyword = MaxIterGST
input = roms.in
ml_depth
Mixed-layer depth (m; positive) in deltaS_b smoothing coefficient. Ngrids values are expected.
dimension = ml_depth(Ngrids)
units = meters
routine = ad_balance.F, mod_scalars.F, read_asspar.F, tl_balance.F
keyword = ml_depth
input = s4dvar.in
Mm
Number of interior grid points in the η-direction. Ngrids values are expected.
dimension = Mm(Ngrids)
routine = mod_param.F
keyword = Mm
input = roms.in
morph_fac
Morphological scale factor for cohesive and non-cohesive sediment.
dimension = morph_fac(NST,Ngrids)
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_MORPH_FAC, SAND_MORPH_FAC
input = sediment.in
MyAppCPP
C-preprocessing flag to define the specific configuration. In versions up to 2.3 this flag was one of the predefined model applications that headed the cppdefs.h file. You must make the value of MyAppCPP consistent with variable ROMS_APPLICATION in the build script or makefile if you are not using build.sh or build.bash. ROMS converts the ROMS_APPLICATION variable to lowercase to determine the name of the file to include.
keyword = MyAppCPP
input = roms.in
MT
The maximum number of tracers between all nested grids. Basically the sum of all NT.

N

N
Number of vertical levels for each nested grid. Ngrids values are expected.
dimension = N(Ngrids)
routine = mod_param.F
keyword = N
input = roms.in
NAT
Number of active tracer-type variables. Usually, it has a value of two for potential temperature and salinty.
option = SOLVE3D
routine = mod_param.F
keyword = NAT
input = roms.in
nADJ
Number of time-steps between writing fields into adjoint model file. Ngrids values are expected.
dimension = nADJ(Ngrids)
routine = mod_scalars.F
keyword = NADJ
input = roms.in
nAVG
Number of time-steps between writing time-averaged data into averages file. Averaged date is written for all fields. Ngrids values are expected.
dimension = nAVG(Ngrids)
routine = mod_scalars.F
keyword = NAVG
input = roms.in
Nbed
Number of sediment bed layers.
routine = mod_param.F
keyword = Nbed
input = roms.in
Nbico
Number of iterations in the biconjugate gradient algorithm used to solve the elliptic equation for sea surface height in the error covariance balance operator. We need as many iterations are required to decrease the error value of the reference free-surface to 1E-8 or smaller. In some applications Nbico=200 will do the job. Ngrids values are expected.
WarningWarning: Be aware that there are 4 arrays that are allocated with this parameter and its value may be constrained by available memory:
FOURDVAR(ng) % p_r2d (LBi:UBi,LBj:UBj,Nbico(ng))
FOURDVAR(ng) % r_r2d (LBi:UBi,LBj:UBj,Nbico(ng))
FOURDVAR(ng) % bp_r2d (LBi:UBi,LBj:UBj,Nbico(ng))
FOURDVAR(ng) % br_r2d (LBi:UBi,LBj:UBj,Nbico(ng))
All the iteration values are needed in the backward stepping of the adjoint.
dimension = Nbico(Ngrids)
routine = ad_balance.F, mod_fourdvar.F, mod_param.F, read_asspar.F, tl_balance, zeta_balance.F
keyword = Nbico
input = s4dvar.in
NBT
Number of biological tracer-type variables.
option = BIOLOGY
routine = mod_param.F
keyword = NBT
input = biology.in
NCS
Number of cohesive (mud) sediment tracer-type variables.
option = SEDIMENT
routine = mod_param.F
keyword = NCS
input = roms.in
NCV
Number of eigenvectors to compute for the Lanczos/Arnoldi problem. NCV must be greater than NEV.
option =
routine = mod_storage.F
keyword = NCV
input = roms.in
ndefADJ
Number of time-steps between the creation of new adjoint file. If ndefADJ = 0, the model will only process one adjoint file. This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every ndefADJ time-steps. Ngrids values are expected.
dimension = ndefADJ(Ngrids)
routine = mod_scalars.F
keyword = NDEFADJ
input = roms.in
ndefAVG
Number of time-steps between the creation of new average file. If ndefAVG = 0, the model will only process one average file. This feature is useful for long simulations when average files get too large; it creates a new file every ndefAVG time-steps. Ngrids values are expected.
dimension = ndefAVG(Ngrids)
routine = mod_scalars.F
keyword = NDEFAVG
input = roms.in
ndefDIA
Number of time-steps between the creation of new time-averaged diagnostics file. If ndefDIA = 0, the model will only process one diagnostics file. This feature is useful for long simulations when diagnostics files get too large; it creates a new file every ndefDIA time-steps. Ngrids values are expected.
dimension = ndefDIA(Ngrids)
routine = mod_scalars.F
keyword = NDEFDIA
input = roms.in
ndefHIS
Number of time-steps between the creation of new history file. If ndefHIS = 0, the model will only process one history file. This feature is useful for long simulations when history files get too large; it creates a new file every ndefHIS time-steps. Ngrids values are expected.
dimension = ndefHIS(Ngrids)
routine = mod_scalars.F
keyword = NDEFHIS
input = roms.in
ndefTLM
Number of time-steps between the creation of new tangent linear file. If ndefTLM = 0, the model will only process one tangent linear file. This feature is useful for long simulations when output NetCDF files get too large; it creates a new file every ndefTLM time-steps. Ngrids values are expected.
dimension = ndefTLM(Ngrids)
routine = mod_scalars.F
keyword = NDEFTLM
input = roms.in
nDIA
Number of time-steps between writing time-averaged diagnostics data into diagnostics file. Averaged date is written for all fields. Ngrids values are expected.
dimension = nDIA(Ngrids)
routine = mod_scalars.F
keyword = NDIA
input = roms.in
ndtfast
Number of barotropic time-steps between each baroclinic time step. If only 2D configuration, ndtfast should be unity since there is no need to split time-stepping.
option =
routine = mod_scalars.F
keyword = NDTFAST
input = roms.in
NestLayers
Number of grid nesting layers. This parameter is used to allow refinement and composite grid combinations as shown for the Refinement and Partial Boundary Composite Sub-Classes. In non-nesting applications, set NestLayers = 1.
option =
routine = mod_param.F
keyword = NestLayers
input = roms.in
NEV
Number of eigenvalues to compute for the Lanczos/Arnoldi problem. Notice that the model memory requirement increases substantially as NEV increases. The GST requires NEV+1 copies of the model state vector. The memory requirements are decreased in distributed-memory applications.
option =
routine = mod_storage.F
keyword = NEV
input = roms.in
nFfiles
Number of forcing NetCDF files. Ngrids values are expected.
dimension = nFfiles(Ngrids)
option =
routine = mod_iounits.F
keyword = NFFILES
input = roms.in
nFLT
Number of time-steps between writing data into floats file (FLTname). Ngrids values are expected.
dimension = nFLT(Ngrids)
option = FLOATS
routine = mod_scalars.F
keyword = NFLT
input = roms.in
Nfloats
Number of floats to release in each nested grid. Value(s) are used to dynamically allocate the arrays in the FLOATS array structure. Ngrids values are expected.
dimension = Nfloats(Ngrids)
option = FLOATS
routine = mod_floats.F init_param.F
keyword = NFLOATS
input = floats.in
NGCname
Input nested grids contact points information file name. This NetCDF file is currently generated using script matlab/grid/contact.m from the ROMS Matlab repository. The nesting information is not trivial and this Matlab scripts is quite complex. See Nested_Grids and Grid_Processing_Scripts for more information.
option = NESTING
routine = mod_iounits.F
keyword = NGCNAME
input = roms.in
NghostPoints
Number of ghost points in the halo region used in distributed-memory configurations.
option = GHOST_POINTS
routine = mod_param.F
Ngrids
Number of nested and/or multiple connected grids to solve.
routine = mod_param.F
nGST
Number of GST iterations between storing of check pointing data into NetCDF file. The restart data is always saved if MaxIterGST is reached without convergence. It is also saved when convergence is achieved. It is always a good idea to save the check pointing data at regular intervals so there is a mechanism to recover from an unexpected interruption in this very expensive computation. The check pointing data can be also be used to recompute the Ritz vectors by changing some of the parameters, like convergence criteria (Ritz_tol) and number of Arnoldi iterations (iparam(3)).
routine = mod_scalars.F
keyword = NGST
input = roms.in
nHIS
Number of time-steps between writing fields into history file. Ngrids values are expected.
dimension = nHIS(Ngrids)
routine = mod_scalars.F
keyword = NHIS
input = roms.in
Nimpact
If observations impact or observations sensitivity, set the 4D-Var outer loop to consider in the computation of the observations impact or observation sensitivity. It must be less than or equal to Nouter. This facilitates the computations with multiple outer loop 4D-Var applications. The observation analysis needs to be computed separately for each outer loop. The full analysis for all outer loops is combined offline.
routine = mod_fourdvar.F, obs_sen_i4dvar_analysis.h, obs_sen_rbl4dvar_analysis.h, read_asspar.F
keyword = Nimpact
input = s4dvar.in
ninfo
Number of time-steps between printing of single line information to standard output. It also determines the interval between the computation of global energy diagnostics. Ngrids values are expected.
dimension = ninfo(Ngrids)
option =
routine = mod_scalars.F
keyword = NINFO
input = roms.in
Ninner
Maximum number of 4DVAR inner loop iterations.
option =
routine = mod_scalars.F
keyword = Ninner
input = roms.in
Nintervals
Number of time interval divisions for stochastic optimals computations. It must be a multiple of ntimes.
option =
routine = mod_scalars.F
keyword = Nintervals
input = roms.in
nLBCvar
Number of lateral boundary condition variables.
option =
routine = mod_scalars.F
Nmethod
Correlation normalization method:
[0] Exact, very expensive
[1] Approximated, randomization
Ngrids values are expected.
dimension = Nmethod(Ngrids)
routine = mod_fourdvar.F, nomalization.F, read_asspar.F
keyword = Nmethod
input = s4dvar.in
NNS
Number of non-cohesive (sand) sediment tracer-type variables.
option = SEDIMENT
routine = mod_param.F
keyword = NNS
input = roms.in
nOBC
Number of time-steps between 4DVAR adjustment of open boundary fields. Ngrids values are expected. In strong constraint 4DVAR, it is possible to adjust open boundaries at other time intervals in addition to initial time. This parameter is used to store the appropriate number of open boundary records in the output history NetCDF files: 1 + ntimes / nOBC records. nOBC must be a factor of ntimes or greater than ntimes. If nOBC > ntimes, only one record is stored in the NetCDF files and the adjustment is for constant forcing with constant correction. This parameter is only relevant in 4DVAR when activating ADJUST_BOUNDARY.
dimension = nOBC(Ngrids)
routine = mod_scalars.F
keyword = NOBC
input = roms.in
Nouter
Maximum number of 4DVAR outer loop iterations.
option =
routine = mod_scalars.F
keyword = Nouter
input = roms.in
NpostI
If weak constraint 4DVar (RBL4DVAR or R4DVAR), set number of iterations in the Lanczos algorithm used to estimate the posterior analysis error covariance matrix.
routine = mod_fourdvar.F, posterior.F, read_asspar.F
keyword = NpostI
input = s4dvar.in
NPT
Number of inert tracer-type variables. Currently, an inert passive tracer is one that it is only advected and diffused. Other processes are ignored. These tracers include, for example, dyes, pollutants, oil spills, etc.
option = T_PASSIVE
routine = mod_param.F
keyword = NPT
input = roms.in
Nrandom
Number of iterations to compute correlation normalization factors using the randomization approach of Fisher and Courtier (1995). A large number is required to be statistically meaningful and achieve zero expectation mean and unit variance, approximately. These factors ensure that the error covariance diagonal elements are equal to unity.
routine = nomalization.F, read_asspar.F
keyword = Nrandom
input = s4dvar.in
NritzEV
If preconditioning, specify number of eigenpairs to use. If zero, use HevecErr parameter to determine the number of converged eigenpairs.
routine = cgradient.F, congrad.F, mod_fourdvar.F, read_asspar.F, rpcg_lanczos.F
keyword = NritzEV
input = s4dvar.in
nrrec
Switch(s) to indicate re-start from a previous solution. Ngrids values are expected. Use nrrec = 0 for new solutions. In a re-start solution, nrrec is the time index of the re-start NetCDF file assigned for initialization. If nrrec is negative (say nrrec = -1), the model will re-start from the most recent time record. That is, the initialization record is assigned internally. Notice that it is also possible to re-start from a history or time-averaged NetCDF file. If a history or time-averaged NetCDF file is used for re-start, it must contain all the necessary primitive variables at all levels.
dimension = nrrec(Ngrids)
option = PERFECT_RESTART
routine = mod_scalars.F
keyword = NRREC
input = roms.in
nRST
Number of time-steps between writing of re-start fields. Ngrids values are expected.
dimension = nRST(Ngrids)
option = PERFECT_RESTART
routine = mod_scalars.F
keyword = NRST
input = roms.in
nSFF
Number of time-steps between 4DVAR adjustment of surface forcing fluxes. Ngrids values are expected. In strong constraint 4DVAR, it is possible to adjust surface forcing at other time intervals in addition to initial time. This parameter is used to store the appropriate number of surface forcing records in the output history NetCDF files: 1 + ntimes / nSFF records. nSFF must be a factor of ntimes or greater than ntimes. If nSFF > ntimes, only one record is stored in the NetCDF files and the adjustment is for constant forcing with constant correction. This parameter is only relevant in 4DVAR when activating either ADJUST_STFLUX or ADJUST_WSTRESS.
dimension = nSFF(Ngrids)
routine = mod_scalars.F
keyword = NSFF
input = roms.in
NSperiodic
North-South periodic boundary condition.
dimension = NSperiodic(Ngrids)
option =
NST
Number of sediment tracer-type variables, NST=NCS+NNS.
option = SEDIMENT
routine = mod_param.F
nSTA
Number of time-steps between writing data into stations file. Station data is written at all levels. Ngrids values are expected.
dimension = nSTA(Ngrids)
option = STATIONS
routine = mod_scalars.F
keyword = NSTA
input = roms.in
Nstation
Number of stations to process in each nested grid. Value(s) are used to dynamically allocate the station arrays. Ngrids values are expected.
dimension = Nstation(Ngrids)
option = STATIONS
routine = mod_param.F
keyword = NSTATION
input = stations.in
NT
Total number of tracer-type variables for each nested grid. Currently, NT=NAT+NPT+NST+NBT.
dimension = NT(Ngrids)
option = SOLVE3D
routine = mod_param.F
input = roms.in (derived from NAT+NPT+NST+NBT)
NtileI
Number of domain partitions in the I-direction (ξ-coordinate). It must be equal to or greater than one. Ngrids values are expected.
dimension = NtileI(Ngrids)
option =
routine = mod_param.F
keyword = NtileI
input = roms.in
NtileJ
Number of domain partitions in the J-direction (η-coordinate). It must be equal to or greater than one. Ngrids values are expected.
dimension = NtileJ(Ngrids)
option =
routine = mod_param.F
keyword = NtileJ
input = roms.in
ntimes
Total number time-steps in current run. If 3D configuration, ntimes is the total of baroclinic time-steps. If only 2D configuration, ntimes is the total of barotropic time-steps.
option =
routine = mod_scalars.F
keyword = NTIMES
input = roms.in
ntimes_ana
Total number time-steps for computing observations impacts interval during the analysis cycle. It is only used when RBL4DVAR_FCT_SENSITIVITY is activated.
option = RBL4DVAR_FCT_SENSITIVITY
routine = mod_fourdvar.F, obs_sen_rbl4dvar_forecast.h
keyword = NTIMES_ANA
input = roms.in
ntimes_fct
Total number of timesteps for computing observations impacts interval during the forecast cycle. It is only used when RBL4DVAR_FCT_SENSITIVITY is activated.
option = RBL4DVAR_FCT_SENSITIVITY
routine = mod_fourdvar.F, obs_sen_rbl4dvar_forecast.h
keyword = NTIMES_FCT
input = roms.in
nTLM
Number of time-steps between writing fields into tangent linear model file. Ngrids values are expected.
dimension = nTLM(Ngrids)
routine = mod_scalars.F
keyword = NTLM
input = roms.in
ntsAVG
Starting time-step for the accumulation of output time-averaged data. Ngrids values are expected.
dimension = ntsAVG(Ngrids)
routine = mod_scalars.F
keyword = NTSAVG
input = roms.in
ntsDIA
Starting time-step for the accumulation of output time-averaged diagnostics data. Ngrids values are expected.
dimension = ntsDIA(Ngrids)
routine = mod_scalars.F
keyword = NTSDIA
input = roms.in
NUD
Input nudging coefficients file(s).
dimension = NUD(Ngrids)
option = NESTING
routine = read_phypar.F, get_nudgcoef.F
keyword = NUDNAME
input = roms.in
Nuser
Number of generic user parameters to consider (integer). This integer and the number of values in USER must be the same.
routine = mod_scalars.F
keyword = NUSER
input = roms.in
NV
Maximum number of variables in information arrays. Currently, 500.
option =
routine = mod_ncparam.F
input = roms.in
Nvct
Parameter to process the Nvct eigenvector of the stabilized representer matrix when computing array modes (here, Nvct=Ninner is the most important while Nvct=1 is the least important) OR cut-off parameter for the clipped analysis to disregard potentially unphysical array modes (that is, all the eigenvectors < Nvct are disregarded).
option =
routine = mod_fourdvar.F, inp_par.F
keyword = Nvct
input = s4dvar.in

O

obcfac
Factor between passive (outflow) and active (inflow) open boundary conditions. The nudging time scales for the active (inflow) conditions are obtained by multiplying the passive values by obcfac. If obcfac > 1, nudging on inflow is stronger than on outflow (recommended). Ngrids values are expected.
dimension = obcfac(Ngrids)
option =
routine = mod_scalars.F
keyword = OBCFAC
input = roms.in
OIFA
Input forcing filename at observation locations for computing observations impacts during the analysis-forecast cycle when the forecast is initialized with the 4D-Var analysis.
dimension =
option =
routine = mod_iounits.F
keyword = OIFnameA
input = s4dvar.in
OIFB
Input forcing filename at observation locations for computing observations impacts during the analysis-forecast cycle when the forecast is initialized with the 4D-Var background.
dimension =
option =
routine = mod_iounits.F
keyword = OIFnameB
input = s4dvar.in

P

poros
Porosity for cohesive and non-cohesive sediment.
dimension = poros(NST,Ngrids)
option = SEDIMENT
routine = mod_ocean.F, mod_sediment.F
keywords = MUD_POROS, SAND_POROS
input = sediment.in

Q

R

R0
Background density value used in Linear Equation of State. Ngrids values are expected.
dimension = R0(Ngrids)
units = kilograms meters-3
option =
routine = mod_scalars.F
keyword = R0
input = roms.in
rdrg
Linear bottom drag coefficient used in the computation of momentum stress. Ngrids values are expected.
dimension = rdrg(Ngrids)
units = meters seconds-1
option =
routine = mod_scalars.F
keyword = RDRG
input = roms.in
rdrg2
Quadratic bottom drag coefficient used in the computation of momentum stress. Ngrids values are expected.
dimension = rdrg2(Ngrids)
option =
routine = mod_scalars.F
keyword = RDRG2
input = roms.in
rho
In situ density anomaly computed as a function of potential temperature, salinity, and depth.
.
dimension = rho(LBi:UBi,LBj:UBj,N(ng))
pointer = OCEAN(ng)%rho
tangent = tl_rho
adjoint = ad_rho
units = kilogram meter-3
grid = ρ-points
option = SOLVE3D, NONLIN_EOS
routine = rho_eos.F
It can computed using a linear or nonlinear equation of state. The nonlinear equation of state is based on Jackett and McDougall (1992) polynomial expressions.
rho0
Mean density used when the Boussinesq approximation is inferred.
units = kilograms meters-3
routine = mod_scalars.F
keyword = RHO0
input = roms.in
Ritz_tol
Relative accuracy of the Ritz values computed in the GST analysis.
routine = mod_scalars.F
keyword = Ritz_tol
input = roms.in
Rscheme
Random number generation scheme if randomization:
[1] Gaussian distributed deviates, numerical recipes
Ngrids values are expected.
dimension = Rscheme(Ngrids)
routine = nomalization.F, read_asspar.F, white_noise.F
keyword = Rscheme
input = s4dvar.in
RST
Restart NetCDF file name. Ngrids values are expected.
dimension = RST(Ngrids)
option =
routine = mod_iounits.F
keyword = RSTNAME
input = roms.in

S

S0
Background salinity (nondimensional) constant used in Linear Equation of State. Ngrids values are expected.
dimension = S0(Ngrids)
option =
routine = mod_scalars.F
keyword = S0
input = roms.in
Scoef
Saline contraction coefficient in Linear Equation of State. Ngrids values are expected.
dimension = Scoef(Ngrids)
option =
routine = mod_scalars.F
keyword = SCOEF
input = roms.in
Sd50
Median grain diameter for cohesive and non-cohesive sediment.
dimension = Sd50(NST,Ngrids)
units = millimeters
option = SEDIMENT
routine = mod_ncparam.F, mod_ocean.F, mod_sediment.F
keywords = MUD_SD50, SAND_SD50
input = sediment.in
settle_size
Planktonic larvae settlement size (um). Ngrids values are expected.
dimension = settle_size(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = settle_size
input = behavior_oyster.in
sink_base
Larval sinking exponential factor (mm/s) for larval sinking rate (mm/s), as a function of larval size (um). Ngrids values are expected.
dimension = sink_base(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = sink_base
input = behavior_oyster.in
sink_rate
Sinking exponential rate factor (1/um) for larval sinking rate (mm/s), as a function of larval size (um). Ngrids values are expected.
dimension = sink_rate(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = sink_rate
input = behavior_oyster.in
sink_size
Larval size (um) for mean exponential sinking for larval sinking rate (mm/s), as a function of larval size (um). Ngrids values are expected.
dimension = sink_size(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = sink_size
input = behavior_oyster.in
slope_Sdec
Coefficient {d} due to decreasing salinity. Ngrids values are expected.
dimension = slope_Sdec(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = slope_Sdec
input = behavior_oyster.in
slope_Sinc
Coefficient {c} due to increasing salinity. Ngrids values are expected.
dimension = slope_Sinc(Ngrids)
option = FLOATS, Options#FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = slope_Sinc
input = behavior_oyster.in
SO_decay
Stochastic optimals time decorrelation scale assumed for red noise processes. Ngrids values are expected.
dimension = SO_decay(Ngrids)
units = days
option =
routine = mod_scalars.F
keyword = SO_decay
input = roms.in
SO_sdev
Stochastic optimals surface forcing standard deviation for dimensionalization.
routine = mod_scalars.F
keyword = SO_sdev
input = roms.in
SOstate
Logical switches (T/F) to specify the state surface forcing variables whose stochastic optimals are required.
routine = mod_scalars.F
keyword = SOstate
input = roms.in
Sout
Set of switches that determine what fields are written to the stations output file (STAname).
dimension = Sout(NV,Ngrids)
option = STATIONS
routine = mod_ncparam.F
keyword = Sout
input = stations.in
sparnam
Input sediment transport parameters (sediment.in) file name.
option = SEDIMENT
routine = mod_iounits.F
keyword = SPARNAM
input = roms.in
sposnam
Input initial stations positions (stations.in) file name.
option = STATIONS
routine = mod_iounits.F
keyword = SPOSNAM
input = roms.in
Srho
Sediment grain density for cohesive and non-cohesive sediment.
dimension = Srho(NST,Ngrids)
units = kilograms meter-3
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_SRHO, SAND_SRHO
input = sediment.in
SSF
River runoff data. This file is separated from the regular forcing files to allow manipulations over nested grids. A particular nesting grid may or may not have Sources/Sinks forcing. Ngrids values are expected.
dimension = SSF(Ngrids)
option = TS_SOURCE
routine = read_phypar.F
keyword = SSFNAME
input = roms.in
For example, in an application with 3 nested grids but with river forcing in grids 1 and 3 we would have:
LuvSrc == T F T
LtracerSrc == 2*T 2*F 2*T

SSFNAME == my_rivers_grid1.nc \
my_rivers_grid2.nc \
my_rivers_grid3.nc
Here, my_rivers_grid2.nc is a dummy name that will never be processed in ROMS because the logical switches are FALSE in the second grid.
STA
Stations output NetCDF file name. Ngrids values are expected.
dimension = STA(Ngrids)
option =
routine = mod_iounits.F
keyword = STANAME
input = roms.in
swim_DL
Larval size J-axis increment for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_DL
input = behavior_oyster.in
swim_DT
Temperature I-axis increment for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_DT
input = behavior_oyster.in
swim_Im
Number of values in larval size I-axix for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Im
input = behavior_oyster.in
swim_Jm
Number of values in temperature J-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Jm
input = behavior_oyster.in
swim_L0
Starting value for temperature I-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_
input = behavior_oyster.in
swim_Sdec
Fraction active {f} due to decreasing salinity for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). Ngrids values are expected.
dimension = swim_Sdec(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Sdec
input = behavior_oyster.in
swim_Sinc
Fraction active {d} due to increasing salinity for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). Ngrids values are expected.
dimension = swim_Sinc(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Sinc
input = behavior_oyster.in
swim_T0
Starting value for larval size J-axis for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_T0
input = behavior_oyster.in
swim_table
Look-up table, swim_table(58,24) for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius).
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_table
input = behavior_oyster.in
swim_Tmax
Maximum swimming time fraction for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). Ngrids values are expected.
dimension = swim_Tmax(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Tmax
input = behavior_oyster.in
swim_Tmin
Minimum swimming time fraction for planktonic larvae swimming speed (mm/s) as a function of larval size (um) and temperature (Celsius). Ngrids values are expected.
dimension = swim_Tmin(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = swim_Tmin
input = behavior_oyster.in
sz_alpha
Surface flux from wave dissipation used in the various formulations of surface turbulent kinetic energy flux in the GLS. Ngrids values are expected.
dimension = sz_alpha(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = SZ_ALPHA
input = roms.in

T

t
Tracer-type variables, .
dimension = t(LBi:UBi,LBj:UBj,N(ng),3,NT(ng))
pointer = OCEAN(ng)%t
tangent = tl_t
adjoint = ad_t
grid = ρ-points
option = SOLVE3D
routine = step3d_t.F
This array contains all the tracer fields. They are classified as active (potential temperature, salinity), inert (dyes, pollutants, oil spills, etc), passive (sediment, biology). There is a index identifier for each tracer field (see table below). Notice that salinity does not have physical units. Usually PSU is used to indicate that the practical salinity scale was used to determine conductivity.
Index Field Units CPP
itemp Potential temperature Celsius SOLVE3D
isalt Salinity None SALINITY
inert(1:NPT) NPT inert tracers kilogram meter-3 T_PASSIVE
idsed(1:NST) NST sediment tracers kilogram meter-3 SEDIMENT
idbio(1:NBT) NBT biology tracers millimole meter-3 BIOLOGY
T0
Background potential temperature constant used in Linear Equation of State. Ngrids values are expected.
dimension = T0(Ngrids)
units = Celsius
option =
routine = mod_scalars.F
keyword = T0
input = roms.in
tau_cd
Kinematic critical shear for deposition of cohesive and non-cohesive sediment. This is ignored for cohesive sediment.
dimension = tau_cd(NST,Ngrids)
units = Newton meter-2
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_TAU_CD, SAND_TAU_CD
input = sediment.in
tau_ce
Kinematic critical shear for erosion of cohesive and non-cohesive sediment.
dimension = tau_ce(NST,Ngrids)
units = Newton meter-2
option = SEDIMENT
routine = mod_sediment.F
keywords = MUD_TAU_CE, SAND_TAU_CE
input = sediment.in
Tcoef
Thermal expansion coefficient in Linear Equation of State. Ngrids values are expected.
dimension = Tcoef(Ngrids)
option =
routine = mod_scalars.F
keyword = TCOEF
input = roms.in
Tcline
Width of surface or bottom boundary layer in which higher vertical resolution is required during stretching. Ngrids values are expected. WARNING: Users need to experiment with theta_b, theta_s and Tcline. We have found out that the model goes unstable with high values of theta_s. In steep and very tall topography, it is recommended to use theta_s < 3.0.
dimension = Tcline(Ngrids)
units = meters
routine = mod_scalars.F
keyword = TCLINE
input = roms.in
theta_b
S-coordinate bottom control parameter, (0 < theta_b < 1). Ngrids values are expected. WARNING: Users need to experiment with theta_b, theta_s and Tcline. We have found out that the model goes unstable with high values of theta_s. In steep and very tall topography, it is recommended to use theta_s < 3.0.
dimension = theta_b(Ngrids)
routine = mod_scalars.F
keyword = THETA_B
input = roms.in
theta_s
S-coordinate surface control parameter, (0 < theta_s < 20). Ngrids values are expected. WARNING: Users need to experiment with theta_b, theta_s and Tcline. We have found out that the model goes unstable with high values of theta_s. In steep and very tall topography, it is recommended to use theta_s < 3.0.
dimension = theta_s(Ngrids)
routine = mod_scalars.F
keyword = THETA_S
input = roms.in
TIDE
Input tidal forcing file name. Ngrids values are expected.
dimension = TIDE(Ngrids)
option =
routine = read_phypar.F
keyword = TIDENAME
input = roms.in
tide_start
Reference time origin for tidal forcing. This is the time used when processing input tidal model data. It is needed in routine set_tides.F to compute the correct phase lag with respect ROMS/TOMS initialization time.
option =
units = days
routine = mod_scalars.F
keyword = TIDE_START
input = roms.in
time_ref
Reference time (yyyymmdd.f) used to compute relative time: elapsed time interval since reference-time.
option =
routine = mod_scalars.F
keyword = TIME_REF
input = roms.in
title
Title of model run.
keyword = TITLE
input = roms.in
tkenu2
Lateral harmonic constant mixing coefficient for turbulent closure variables. Ngrids values are expected.
dimension = tkenu2(Ngrids)
units = meters2 second-1
option =
routine = mod_scalars.F
keyword = TKENU2
input = roms.in
tkenu4
Lateral biharmonic constant mixing coefficient for turbulent closure variables. Ngrids values are expected.
dimension = tkenu4(Ngrids)
units = meters4 second-1
option =
routine = mod_scalars.F
keyword = TKENU4
input = roms.in
tl_LBC
Lateral boundary conditions for tangent linear model.
dimension = tl_LBC(4,nLBCvar,Ngrids)
option =
routine = mod_param.F
tl_M2diff
If weak constraint 4DVar and the RPM_RELAXATION flag is activated, this coefficient is used to relax 2D momentum in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. Ngrids values are expected.
dimension = tl_M2diff(Ngrids)
units = meters2 second-1
routine = mod_scalars.F, read_asspar.F, rp_step2d_LF_AM3.h
keyword = tl_M2diff
input = s4dvar.in
tl_M3diff
If weak constraint 4DVar and the RPM_RELAXATION flag is activated, this coefficient is used to relax 3D momentum in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. Ngrids values are expected.
dimension = tl_M3diff(Ngrids)
units = meters2 second-1
routine = ad_uv3drelax.F, mod_scalars.F, read_asspar.F, rp_uv3drelax.F, tl_uv3drelax.F
keyword = tl_M3diff
input = s4dvar.in
tl_Tdiff
If weak constraint 4DVar and the RPM_RELAXATION flag is activated, this coefficient is used to relax tracer type variables diffusion in the representer tangent linear solution to the previous outer loop linearized trajectory during the Picard iterations. The user may turn off relaxation by setting this to zero. MT values are expected.
dimension = tl_Tdiff(NT,Ngrids)
units = meters2 second-1
routine = ad_t3drelax.F, mod_scalars.F, read_asspar.F, rp_t3drelax.F, tl_t3drelax.F
keyword = tl_Tdiff
input = s4dvar.in
TLF
Impulse tangent linear forcing output NetCDF file name. Ngrids values are expected.
dimension = TLF(Ngrids)
option =
routine = mod_iounits.F
keyword = TLFNAME
input = roms.in
TLM
Tangent linear history output NetCDF file name. Ngrids values are expected.
dimension = TLM(Ngrids)
option =
routine = mod_iounits.F
keyword = TLMNAME
input = roms.in
tnu2
Lateral harmonic constant mixing coefficient for tracer type variables. If variable horizontal diffusion is activated, tnu2 is the mixing coefficient for the largest grid-cell in the domain.
dimension = tnu2(MT,Ngrids)
units = meter2 second-1
option = SEDIMENT, BIOLOGY
routine = mod_mixing.F, mod_scalars.F
keywords = MUD_TNU2, SAND_TNU2, TNU2
input = biology.in, sediment.in
tnu4
Square root lateral biharmonic constant mixing coefficient for tracer type variables. If variable horizontal diffusion is activated, tnu4 is the mixing coefficient for the largest grid-cell in the domain.
dimension = tnu4(MT,Ngrids)
units = meter4 second-1
option = SEDIMENT, BIOLOGY
routine = mod_mixing.F, mod_scalars.F
keywords = MUD_TNU4, SAND_TNU4, TNU4
input = biology.in, sediment.in
Tnudg
Inverse time-scale for nudging tracers at open boundaries and sponge areas.
dimension = Tnudg(MT,Ngrids)
option = SEDIMENT, BIOLOGY
routine = mod_scalars.F
keywords = MUD_TNUDG, SAND_TNUDG, TNUDG
input = biology.in, sediment.in
turb_ambi
Ambient turbidity level, {turb}, (g/l) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_ambi(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_ambi
input = behavior_oyster.in
turb_axis
Turbidity linear axis crossing {c} for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_axis(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_axis
input = behavior_oyster.in
turb_base
Turbidity base factor, {b}, (g/l) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_base(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_base
input = behavior_oyster.in
turb_crit
Critical turbidity value (g/l) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_crit(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_crit
input = behavior_oyster.in
turb_mean
Turbidity mean, {turb0}, (g/l) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_mean(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_mean
input = behavior_oyster.in
turb_rate
Turbidity rate, {beta}, (1/(g/l)) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_rate(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_rate
input = behavior_oyster.in
turb_size
Minimum larvae size (um) affected by tubidity for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_size(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_size
input = behavior_oyster.in
turb_slop
Turbidity linear slope, {m}, (1/(g/l)) for turbidity effects on planktonic larvae growth. Ngrids values are expected.
dimension = turb_slop(Ngrids)
option = FLOATS, FLOAT_OYSTER
routine = oyster_floats.h, oyster_floats_def.h, oyster_floats_inp.h, oyster_floats_mod.h, oyster_floats_wrt.h
keyword = turb_slop
input = behavior_oyster.in

U

u
Total momentum component in the -direction, .
dimension = u(LBi:UBi,LBj:UBj,N(ng),2)
pointer = OCEAN(ng)%u
tangent = tl_u
adjoint = ad_u
units = meter second-1
grid = u-points
option = SOLVE3D
routine = step3d_uv.F
ubar
Vertically-integrated momentum component in the -direction, .
dimension = ubar(LBi:UBi,LBj:UBj,3)
pointer = OCEAN(ng)%ubar
tangent = tl_ubar
adjoint = ad_ubar
units = meter second-1
grid = u-points
routine = step2d.F
UBi
Array upper bound dimension in the i-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_I. In distributed-memory its value is a function of the tile partition, UBi=Iend+NghostPoints.
option = UPPER_BOUND_I
routine = get_bounds.F, get_tile.F
UBj
Array upper bound dimension in the j-direction. In serial and shared-memory applications its value is govern by the value of UPPER_BOUND_J. In distributed-memory its value is a function of the tile partition, UBj=Jend+NghostPoints.
option = UPPER_BOUND_J
routine = get_bounds.F, get_tile.F
user
Generic User parameters, NUSER values are expected.
routine = mod_scalars.F
keyword = USER
input = roms.in
USRname
USER's input generic file name.
routine = mod_iounits.F
keyword = USRNAME
input = roms.in

V

v
3D momentum component in the η-direction, .
dimension = v(LBi:UBi,LBj:UBj,N(ng),2)
pointer = OCEAN(ng)%v
tangent = tl_u
adjoint = ad_u
units = meter second-1
grid = v-points
option = SOLVE3D
routine = step3d_uv.F
varname
Input variable information file name. This file needs to be processed first so all information arrays can be initialized properly. The default file is at ROMS/External/varinfo.dat.
keyword = VARNAME
input = roms.in
vbar
Vertically-integrated momentum component in the η-direction, .
dimension = vbar(LBi:UBi,LBj:UBj,3)
pointer = OCEAN(ng)%vbar
tangent = tl_vbar
adjoint = ad_vbar
units = meter second-1
grid = v-points
routine = step2d.F
Vgamma
Vertical stability and accuracy factor (< 1) used to scale the time-step of the convolution operator below its theoretical limit. Notice that four values are needed for Vgamma to facilitate the error covariance modeling for:
[1] initial conditions
[2] model
[3] boundary conditions
[4] surface forcing
dimension = Vgamma(4)
routine = metrics.F, mod_netcdf.F, mod_scalars.F, read_asspar.F
keyword = Vgamma
input = s4dvar.in
visc2
Lateral harmonic constant mixing coefficient for momentum. Ngrids values are expected. If variable horizontal viscosity is activated, visc2 is the mixing coefficient for the largest grid-cell in the domain.
dimension = visc2(Ngrids)
units = meters2 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keyword = VISC2
input = roms.in
visc4
Lateral biharmonic constant mixing coefficient for momentum. Ngrids values are expected. If variable horizontal viscosity is activated, visc4 is the mixing coefficient for the largest grid-cell in the domain.
dimension = visc4(Ngrids)
units = meters4 second-1
option =
routine = mod_mixing.F, mod_scalars.F
keyword = VISC4
input = roms.in
VolCons
Lateral open boundary edge volume conservation switch for the nonlinear model. This is usually activated with radiation boundary conditions to enforce global mass conservation. Notice that these switches should not be activated if tidal forcing enabled.
dimension = VolCons(4,Ngrids)
option =
routine = mod_scalars.F
keyword = VolCons
input = roms.in
Vstretching
Selects the vertical stretching function, C(s). Ngrids values are expected. Possible values are:
1 - Original function in ROMS from the very beginning from Song and Haidvogel (1994)
2 - A. Shchepetkin function from UCLA-ROMS
3 - R. Geyer function for shallow sediment applications
4 - A. Shchepetkin improved double stretching
5 - Souza et al. quadratic Legendre polynomial function that allows higher resolution near the surface
See Vertical S-coordinate for more information.
dimension = Vstretching(Ngrids)
routine = mod_scalars.F
keyword = Vstretching
input = roms.in
Vtransform
Selects the vertical transform equation. Ngrids values are expected. Possible values are:
1 - Original formulation that has been in ROMS since 1999 described in Shchepetkin and McWilliams (2005)
2 - New formulation developed by A. Shchepetkin
See Vertical S-coordinate for more information.
dimension = Vtransform(Ngrids)
routine = mod_scalars.F
keyword = Vtransform
input = roms.in

W

W
Terrain-following, vertical velocity component, .
dimension = W(LBi:UBi,LBj:UBj,0:N(ng))
pointer = OCEAN(ng)%W
tangent = tl_W
adjoint = ad_W
units = meter3 second-1
sign = positive downwards (downwelling), negative upwards (upwelling)
grid = w-points
option = SOLVE3D
routine = omega.F
Wsed
Particle settling velocity for cohesive and non-cohesive sediment.
dimension = Wsed(NST,Ngrids)
option = SEDIMENT
routine = mod_ncparam.F, mod_ocean.F, mod_sediment.F
keywords = MUD_WSED, SAND_WSED
input = sediment.in
wvel
True vertical velocity component, . It is computed only for output purposes.
dimension = wvel(LBi:UBi,LBj:UBj,0:N(ng))
pointer = OCEAN(ng)%wvel
units = meter second-1
sign = positive downwards (downwelling), negative upwards (upwelling
grid = w-points
option = SOLVE3D
routine = wvelocity.F

X

Y

Z

zeta
Free-surface, .
dimension = zeta(LBi:UBi,LBj:UBj,3)
pointer = OCEAN(ng)%zeta
tangent = tl_zeta
adjoint = ad_zeta
units = meter
grid = ρ-points
routine = step2d.F
z_r
Actual depths of variables at ρ-points, .
dimension = z_r(LBi:UBi,LBj:UBj,N(ng))
pointer = GRID(ng)%z_r
units = meter
sign = negative downwards
grid = ρ-points
option = SOLVE3D
routine = set_depths.F
z_w
Actual depths of variables at w-points, .
dimension = z_w(LBi:UBi,LBj:UBj,0:N(ng))
pointer = GRID(ng)%z_w
units = meter
sign = negative downwards
grid = w-points
option = SOLVE3D
routine = set_depths.F
Znudg
Nudging time scale for free-surface. Ngrids values are expected.
dimension = Znudg(Ngrids)
units = days
option =
routine = mod_scalars.F
keyword = ZNUDG
input = roms.in
Zob
Bottom roughness used in the computation of momentum stress. Ngrids values are expected.
dimension = Zob(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = Zob
input = roms.in
Zos
Surface roughness used in the computation of momentum stress. Ngrids values are expected.
dimension = Zos(Ngrids)
units = meters
option =
routine = mod_scalars.F
keyword = Zos
input = roms.in
zos_hsig_alpha
Roughness from wave amplitude used in the various formulations of surface turbulent kinetic energy flux in the GLS. Ngrids values are expected.
dimension = zos_hsig_alpha(Ngrids)
option = GLS_MIXING
routine = mod_scalars.F
keyword = ZOS_HSIG_ALPHA
input = roms.in