Difference between revisions of "Lateral Boundary Conditions"
m (Text replacement - "ocean.in" to "roms.in") (change visibility) |
|||
(15 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<div class="title">Lateral Boundary Conditions</div> | <div class="title">Lateral Boundary Conditions</div> | ||
The lateral boundary conditions are | The lateral boundary conditions are specified by logical switches to facilitate applications with nested grids. It also allows to set different boundary conditions between the nonlinear model and the adjoint/tangent models. In addition, we can have different boundary conditions between active and passive tracers. The LBC structure is allocated as:<div class="box">[[Variables#LBC|LBC]](1:4, [[Variables#nLBCvar|nLBCvar]], [[Ngrids]])</div>where '''1:4''' are the numbered boundary edges, [[Variables#nLBCvar|nLBCvar]] is the number of LBC state variables, and [[Ngrids]] is the number of nested grids. The boundary order is: '''1'''=west, '''2'''=south, '''3'''=east, and '''4'''=north. That is, anticlockwise starting at the western boundary. | ||
[[Image:LBC_indices.png|250px]] | |||
For example, the free-surface gradient boundary conditions are specified as:<div class="box"> [[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % gradient<br /> [[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % gradient<br /> [[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % gradient<br /> [[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % gradient</div>The structure is declared in [[mod_param.F]] as:<div class="box"> integer :: [[Variables#nLBCvar|nLBCvar]]<br /><br /> TYPE T_LBC<br /> logical :: acquire ! process lateral boundary data<br /><br /> logical :: Chapman<br /> logical :: clamped<br /> logical :: closed<br /> logical :: Flather<br /> logical :: gradient<br /> logical :: nested<br /> logical :: nudging<br /> logical :: periodic<br /> logical :: radiation<br /> logical :: reduced<br /> END TYPE T_LBC<br /><br /> TYPE (T_LBC), allocatable :: [[Variables#LBC|LBC]](:,:,:)<br /><br /> TYPE (T_LBC), allocatable :: [[Variables#ad_LBC|ad_LBC]](:,:,:)<br /> TYPE (T_LBC), allocatable :: [[Variables#tl_LBC|tl_LBC]](:,:,:) </div> | |||
Line 8: | Line 12: | ||
== | ==Conversion Tables== | ||
Starting with ROMS version 3.6, the [[Options|CPP options]] for lateral boundary conditions (user defined and internal) are deprecated and replaced with logical switches that are specified in the [[Input_Parameter_Files|standard input]] files. The following tables show the conversion from [[Options|CPP options]] to logical switches for each state variable using the [[Variables#LBC|LBC]] structure: | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | {| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | ||
! colspan="2" | Free-surface | |||
|- | |||
! align="center" | CPP | ! align="center" | CPP | ||
! align="center" | Logical Switch | ! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | ||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_FSCHAPMAN|WEST_FSCHAPMAN]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % Chapman | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_FSCHAPMAN|EAST_FSCHAPMAN]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % Chapman | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_FSCHAPMAN|SOUTH_FSCHAPMAN]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % Chapman | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_FSCHAPMAN|NORTH_FSCHAPMAN]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % Chapman | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_FSCLAMPED|WEST_FSCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_FSCLAMPED|EAST_FSCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_FSCLAMPED|SOUTH_FSCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_FSCLAMPED|NORTH_FSCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_FSGRADIENT|WEST_FSGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_FSGRADIENT|EAST_FSGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_FSGRADIENT|SOUTH_FSGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_FSGRADIENT|NORTH_FSGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_FSNUDGING|WEST_FSNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_FSNUDGING|EAST_FSNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_FSNUDGING|SOUTH_FSNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_FSNUDGING|NORTH_FSNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % periodic | |||
|- bgcolor="white" | |- bgcolor="white" | ||
|align="right" | [[Options#WEST_FSRADIATION|WEST_FSRADIATION]] | |align="right" | [[Options#WEST_FSRADIATION|WEST_FSRADIATION]] | ||
Line 25: | Line 100: | ||
|align="right" | [[Options#NORTH_FSRADIATION|NORTH_FSRADIATION]] | |align="right" | [[Options#NORTH_FSRADIATION|NORTH_FSRADIATION]] | ||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % radiation | |[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % radiation | ||
|- bgcolor="# | |- bgcolor="#E0E0E0" | ||
|align="right" | [[Options#WEST_FSOBC|WEST_FSOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isFsur|isFsur]], ng) % acquire | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_FSOBC|EAST_FSOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isFsur|isFsur]], ng) % acquire | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_FSOBC|SOUTH_FSOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isFsur|isFsur]], ng) % acquire | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_FSOBC|NORTH_FSOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isFsur|isFsur]], ng) % acquire | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | 2D U-momentum | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2CLAMPED|WEST_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2CLAMPED|EAST_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2CLAMPED|SOUTH_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2CLAMPED|NORTH_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2FLATHER|WEST_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2FLATHER|EAST_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2FLATHER|SOUTH_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2FLATHER|NORTH_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % Flather | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M2GRADIENT|WEST_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M2GRADIENT|EAST_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M2GRADIENT|SOUTH_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M2GRADIENT|NORTH_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2NUDGING|WEST_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2NUDGING|EAST_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2NUDGING|SOUTH_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2NUDGING|NORTH_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2RADIATION|WEST_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2RADIATION|EAST_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2RADIATION|SOUTH_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2RADIATION|NORTH_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M2REDUCED|WEST_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M2REDUCED|EAST_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M2REDUCED|SOUTH_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M2REDUCED|NORTH_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % reduced | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2OBC|WEST_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUbar|isUbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2OBC|EAST_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUbar|isUbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2OBC|SOUTH_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUbar|isUbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2OBC|NORTH_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUbar|isUbar]], ng) % acquire | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | 2D V-momentum | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2CLAMPED|WEST_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2CLAMPED|EAST_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2CLAMPED|SOUTH_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2CLAMPED|NORTH_M2CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2FLATHER|WEST_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2FLATHER|EAST_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2FLATHER|SOUTH_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % Flather | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2FLATHER|NORTH_M2FLATHER]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % Flather | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M2GRADIENT|WEST_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M2GRADIENT|EAST_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M2GRADIENT|SOUTH_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M2GRADIENT|NORTH_M2GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2NUDGING|WEST_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2NUDGING|EAST_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2NUDGING|SOUTH_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2NUDGING|NORTH_M2NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2RADIATION|WEST_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2RADIATION|EAST_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2RADIATION|SOUTH_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2RADIATION|NORTH_M2RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M2REDUCED|WEST_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M2REDUCED|EAST_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M2REDUCED|SOUTH_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % reduced | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M2REDUCED|NORTH_M2REDUCED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % reduced | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M2OBC|WEST_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVbar|isVbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M2OBC|EAST_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVbar|isVbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M2OBC|SOUTH_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVbar|isVbar]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M2OBC|NORTH_M2OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVbar|isVbar]], ng) % acquire | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | 3D U-momentum | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3CLAMPED|WEST_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3CLAMPED|EAST_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3CLAMPED|SOUTH_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3CLAMPED|NORTH_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3GRADIENT|WEST_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3GRADIENT|EAST_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3GRADIENT|SOUTH_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3GRADIENT|NORTH_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M3NUDGING|WEST_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M3NUDGING|EAST_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M3NUDGING|SOUTH_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M3NUDGING|NORTH_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M3RADIATION|WEST_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M3RADIATION|EAST_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M3RADIATION|SOUTH_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M3RADIATION|NORTH_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3OBC|WEST_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isUvel|isUvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3OBC|EAST_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isUvel|isUvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3OBC|SOUTH_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isUvel|isUvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3OBC|NORTH_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isUvel|isUvel]], ng) % acquire | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | 3D V-momentum | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3CLAMPED|WEST_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3CLAMPED|EAST_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3CLAMPED|SOUTH_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3CLAMPED|NORTH_M3CLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3GRADIENT|WEST_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3GRADIENT|EAST_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3GRADIENT|SOUTH_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3GRADIENT|NORTH_M3GRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M3NUDGING|WEST_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M3NUDGING|EAST_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M3NUDGING|SOUTH_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M3NUDGING|NORTH_M3NUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSeriodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_M3RADIATION|WEST_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_M3RADIATION|EAST_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_M3RADIATION|SOUTH_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_M3RADIATION|NORTH_M3RADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % radiation | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_M3OBC|WEST_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isVvel|isVvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_M3OBC|EAST_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isVvel|isVvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_M3OBC|SOUTH_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isVvel|isVvel]], ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_M3OBC|NORTH_M3OBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isVvel|isVvel]], ng) % acquire | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | TKE mixing | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isMtke|isMtke]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isMtke|isMtke]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isMtke|isMtke]], ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isMtke|isMtke]], ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_KGRADIENT|WEST_KGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isMtke|isMtke]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_KGRADIENT|EAST_KGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isMtke|isMtke]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_KGRADIENT|SOUTH_KGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isMtke|isMtke]], ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_KGRADIENT|NORTH_KGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isMtke|isMtke]], ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isMtke|isMtke]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isMtke|isMtke]], ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isMtke|isMtke]], ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isMtke|isMtke]], ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_KRADIATION|WEST_KRADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isMtke|isMtke]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_KRADIATION|EAST_KRADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isMtke|isMtke]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_KRADIATION|SOUTH_KRADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isMtke|isMtke]], ng) % radiation | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_KRADIATION|NORTH_KRADIATION]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isMtke|isMtke]], ng) % radiation | |||
|} | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | Tracers | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_TCLAMPED|WEST_TCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_TCLAMPED|EAST_TCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_TCLAMPED|SOUTH_TCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % clamped | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_TCLAMPED|NORTH_TCLAMPED]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % clamped | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WESTERN_WALL|WESTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EASTERN_WALL|EASTERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTHERN_WALL|SOUTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % closed | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTHERN_WALL|NORTHERN_WALL]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % closed | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_TGRADIENT|WEST_TGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_TGRADIENT|EAST_TGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_TGRADIENT|SOUTH_TGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % gradient | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_TGRADIENT|NORTH_TGRADIENT]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % gradient | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_TNUDGING|WEST_TNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#EAST_TNUDGING|EAST_TNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#SOUTH_TNUDGING|SOUTH_TNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % nudging | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#NORTH_TNUDGING|NORTH_TNUDGING]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % nudging | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EW_PERIODIC|EW_PERIODIC]] | |||
|[[Variables#EWperiodic|EWperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % periodic | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NS_PERIODIC|NS_PERIODIC]] | |||
|[[Variables#NSperiodic|NSperiodic]](ng)<br />[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % periodic<br />[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % periodic | |||
|- bgcolor="#E0E0E0" | |||
|align="right" | [[Options#WEST_TRADIATION|WEST_TRADIATION]] | |align="right" | [[Options#WEST_TRADIATION|WEST_TRADIATION]] | ||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % radiation | |[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % radiation | ||
|- bgcolor="# | |- bgcolor="#E0E0E0" | ||
|align="right" | [[Options#EAST_TRADIATION|EAST_TRADIATION]] | |align="right" | [[Options#EAST_TRADIATION|EAST_TRADIATION]] | ||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % radiation | |[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % radiation | ||
|- bgcolor="# | |- bgcolor="#E0E0E0" | ||
|align="right" | [[Options#SOUTH_TRADIATION|SOUTH_TRADIATION]] | |align="right" | [[Options#SOUTH_TRADIATION|SOUTH_TRADIATION]] | ||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % radiation | |[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % radiation | ||
|- bgcolor="# | |- bgcolor="#E0E0E0" | ||
|align="right" | [[Options#NORTH_TRADIATION|NORTH_TRADIATION]] | |align="right" | [[Options#NORTH_TRADIATION|NORTH_TRADIATION]] | ||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % radiation | |[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % radiation | ||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_TOBC|WEST_TOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#iwest|iwest]], [[Variables#isTvar|isTvar]](:), ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_TOBC|EAST_TOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#ieast|ieast]], [[Variables#isTvar|isTvar]](:), ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_TOBC|SOUTH_TOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#isouth|isouth]], [[Variables#isTvar|isTvar]](:), ng) % acquire | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_TOBC|NORTH_TOBC]] | |||
|[[Variables#LBC|LBC]]([[Variables#inorth|inorth]], [[Variables#isTvar|isTvar]](:), ng) % acquire | |||
|} | |||
Starting with ROMS version 3.6, the [[Options|CPP options]] for volume conservation are deprecated and replaced with logical switches that are specified in the [[roms.in]] file. The following tables show the conversion from [[Options|CPP options]] to logical switches: | |||
{| id="var_tab" style="font-family: monospace" border="1" cellspacing="0" cellpadding="5" align="center" | |||
! colspan="2" | Volume Conservation | |||
|- | |||
! align="center" | CPP | |||
! align="center" | Logical Switch, <span class="red">IF</span> (...) <span class="red">THEN</span> | |||
|- bgcolor="white" | |||
|align="right" | [[Options#WEST_VOLCONS|WEST_VOLCONS]] | |||
|[[Variables#VolCons|VolCons]]([[Variables#iwest|iwest]], ng) | |||
|- bgcolor="white" | |||
|align="right" | [[Options#EAST_VOLCONS|EAST_VOLCONS]] | |||
|[[Variables#VolCons|VolCons]]([[Variables#ieast|ieast]], ng) | |||
|- bgcolor="white" | |||
|align="right" | [[Options#SOUTH_VOLCONS|SOUTH_VOLCONS]] | |||
|[[Variables#VolCons|VolCons]]([[Variables#isouth|isouth]], ng) | |||
|- bgcolor="white" | |||
|align="right" | [[Options#NORTH_VOLCONS|NORTH_VOLCONS]] | |||
|[[Variables#VolCons|VolCons]]([[Variables#inorth|inorth]], ng) | |||
|} | |} | ||
{{note}}'''NOTE:''' The internal C-preprocessing option '''NUDGING_COEF''', defined previously in <span class="forestGreen">globaldefs.h</span>, is eliminated and replaced with logical switch [[Variables#NudgingCoeff|NudgingCoeff]](ng). This switch is used in <span class="forestGreen">ana_nudgcoef.h</span>. We recommend that you start with new version of <span class="forestGreen">ana_nudgecoef.h</span> and add the code needed for your application. | |||
{{note}}'''NOTE:''' Also, the internal C-preprocessing option '''OBC_DATA''', defined previously in <span class="forestGreen">globaldefs.h</span>, is eliminated and replaced with logical switch [[Variables#ObcData|ObcData]](ng). This switch is activated internally in <span class="forestGreen">read_phypar.F</span> to process lateral boundary conditions NetCDF file. |
Latest revision as of 15:13, 17 July 2019
The lateral boundary conditions are specified by logical switches to facilitate applications with nested grids. It also allows to set different boundary conditions between the nonlinear model and the adjoint/tangent models. In addition, we can have different boundary conditions between active and passive tracers. The LBC structure is allocated as:
where 1:4 are the numbered boundary edges, nLBCvar is the number of LBC state variables, and Ngrids is the number of nested grids. The boundary order is: 1=west, 2=south, 3=east, and 4=north. That is, anticlockwise starting at the western boundary.
For example, the free-surface gradient boundary conditions are specified as:
LBC(ieast, isFsur, ng) % gradient
LBC(isouth, isFsur, ng) % gradient
LBC(inorth, isFsur, ng) % gradient
The structure is declared in mod_param.F as:
TYPE T_LBC
logical :: acquire ! process lateral boundary data
logical :: Chapman
logical :: clamped
logical :: closed
logical :: Flather
logical :: gradient
logical :: nested
logical :: nudging
logical :: periodic
logical :: radiation
logical :: reduced
END TYPE T_LBC
TYPE (T_LBC), allocatable :: LBC(:,:,:)
TYPE (T_LBC), allocatable :: ad_LBC(:,:,:)
TYPE (T_LBC), allocatable :: tl_LBC(:,:,:)
Conversion Tables
Starting with ROMS version 3.6, the CPP options for lateral boundary conditions (user defined and internal) are deprecated and replaced with logical switches that are specified in the standard input files. The following tables show the conversion from CPP options to logical switches for each state variable using the LBC structure:
TKE mixing | |
---|---|
CPP | Logical Switch, IF (...) THEN |
WESTERN_WALL | LBC(iwest, isMtke, ng) % closed |
EASTERN_WALL | LBC(ieast, isMtke, ng) % closed |
SOUTHERN_WALL | LBC(isouth, isMtke, ng) % closed |
NORTHERN_WALL | LBC(inorth, isMtke, ng) % closed |
WEST_KGRADIENT | LBC(iwest, isMtke, ng) % gradient |
EAST_KGRADIENT | LBC(ieast, isMtke, ng) % gradient |
SOUTH_KGRADIENT | LBC(isouth, isMtke, ng) % gradient |
NORTH_KGRADIENT | LBC(inorth, isMtke, ng) % gradient |
EW_PERIODIC | EWperiodic(ng) LBC(iwest, isMtke, ng) % periodic LBC(ieast, isMtke, ng) % periodic |
NS_PERIODIC | NSperiodic(ng) LBC(isouth, isMtke, ng) % periodic LBC(inorth, isMtke, ng) % periodic |
WEST_KRADIATION | LBC(iwest, isMtke, ng) % radiation |
EAST_KRADIATION | LBC(ieast, isMtke, ng) % radiation |
SOUTH_KRADIATION | LBC(isouth, isMtke, ng) % radiation |
NORTH_KRADIATION | LBC(inorth, isMtke, ng) % radiation |
Starting with ROMS version 3.6, the CPP options for volume conservation are deprecated and replaced with logical switches that are specified in the roms.in file. The following tables show the conversion from CPP options to logical switches:
Volume Conservation | |
---|---|
CPP | Logical Switch, IF (...) THEN |
WEST_VOLCONS | VolCons(iwest, ng) |
EAST_VOLCONS | VolCons(ieast, ng) |
SOUTH_VOLCONS | VolCons(isouth, ng) |
NORTH_VOLCONS | VolCons(inorth, ng) |
NOTE: The internal C-preprocessing option NUDGING_COEF, defined previously in globaldefs.h, is eliminated and replaced with logical switch NudgingCoeff(ng). This switch is used in ana_nudgcoef.h. We recommend that you start with new version of ana_nudgecoef.h and add the code needed for your application.
NOTE: Also, the internal C-preprocessing option OBC_DATA, defined previously in globaldefs.h, is eliminated and replaced with logical switch ObcData(ng). This switch is activated internally in read_phypar.F to process lateral boundary conditions NetCDF file.