/[MITgcm]/manual/s_phys_pkgs/text/obcs.tex
ViewVC logotype

Diff of /manual/s_phys_pkgs/text/obcs.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.9 by mlosch, Thu Mar 3 07:46:09 2011 UTC revision 1.10 by mlosch, Mon Mar 14 15:01:28 2011 UTC
# Line 153  their default values. Line 153  their default values.
153             ~ \\             ~ \\
154          useOBCSbalance & \code{.FALSE.} &          useOBCSbalance & \code{.FALSE.} &
155             ~ \\             ~ \\
156             OBCS\_balanceFacN/S/E/W & 0 & factor(s) determining the details             OBCS\_balanceFacN/S/E/W & 1 & factor(s) determining the details
157             of the balaning code \\             of the balaning code \\
158          useOrlanskiNorth/South/EastWest & \code{.FALSE.} &          useOrlanskiNorth/South/EastWest & \code{.FALSE.} &
159             turn on Orlanski boundary conditions for individual boundary\\             turn on Orlanski boundary conditions for individual boundary\\
# Line 386  example, we use the notation for an east Line 386  example, we use the notation for an east
386    \texttt{useStevensPhaseVel} and \texttt{useStevensAdvection} to    \texttt{useStevensPhaseVel} and \texttt{useStevensAdvection} to
387    \texttt{.FALSE.}.\end{itemize} See \citet{stevens:90} for details.    \texttt{.FALSE.}.\end{itemize} See \citet{stevens:90} for details.
388    
389  \paragraph{OBCS\_BALANCE:} ~ \\  \paragraph{OBCS\_BALANCE\_FLOW:} ~ \\
390  %  %
391  This is not (yet) a separate routine in the code, but it may become  When turned on (\code{ALLOW\_OBCS\_BALANCE}
 one to make this code more transparent. The code is part of  
 \code{S/R~OBCS\_CALC}. When turned on (\code{ALLOW\_OBCS\_BALANCE}  
392  defined in \code{OBCS\_OPTIONS.h} and \code{useOBCSbalance=.true.} in  defined in \code{OBCS\_OPTIONS.h} and \code{useOBCSbalance=.true.} in
393  \code{data.obcs/OBCS\_PARM01}), the normal velocities across each of  \code{data.obcs/OBCS\_PARM01}), this routine balances the net flow
394  the four boundaries are modified separately, so that the net volume  across the open boundaries. By default the net flow across the
395  transport across \emph{each} boundary is zero. For example, for the  boundaries is computed and all normal velocities on boundaries are
396  western boundary at $i=i_{b}$, the modified velocity is:  adjusted to obtain zero net inflow.
397    
398    This behavior can be controlled with the runtime flags
399    \code{OBCS\_balanceFacN/S/E/W}. The values of these flags determine
400    how the net inflow is redistributed as small correction velocities
401    between the individual sections. A value ``\code{-1}'' balances an
402    individual boundary, values $>0$ determine the relative size of the
403    correction. For example, with the values
404    \begin{tabbing}
405     \code{OBCS\_balanceFac\_E}\=\code{ = 1.,} \\
406     \code{OBCS\_balanceFac\_W}\>\code{ = -1.,} \\
407     \code{OBCS\_balanceFac\_N}\>\code{ = 2.,} \\
408     \code{OBCS\_balanceFac\_S}\>\code{ = 0.,}
409    \end{tabbing}
410    will make the model
411    \begin{itemize}
412    \item correct Western \code{OBWu} by substracting a uniform velocity to
413    ensure zero net transport through Western OB
414    \item correct Eastern and Northern normal flow, with the Northern
415      velocity correction two times larger than Eastern correction, but
416      not the Southern normal flow to ensure that the total inflow through
417      East, Northern, and Southern OB is balanced
418    \end{itemize}
419    
420    The old method of balancing the net flow for all sections individually
421    can be recovered by setting all flags to -1. Then the normal
422    velocities across each of the four boundaries are modified separately,
423    so that the net volume transport across \emph{each} boundary is
424    zero. For example, for the western boundary at $i=i_{b}$, the modified
425    velocity is:
426  \[  \[
427  u(y,z) - \int_{\mbox{western boundary}}u\,dy\,dz \approx OBNu(j,k) - \sum_{j,k}  u(y,z) - \int_{\mbox{western boundary}}u\,dy\,dz \approx OBNu(j,k) - \sum_{j,k}
428  OBNu(j,k) h_{w}(i_{b},j,k)\Delta{y_G(i_{b},j)}\Delta{z(k)}.  OBNu(j,k) h_{w}(i_{b},j,k)\Delta{y_G(i_{b},j)}\Delta{z(k)}.
429  \]  \]
430  This also ensures a net total inflow of zero through all boundaries to  This also ensures a net total inflow of zero through all boundaries to
431  make it a useful flag to prevent infinite sea-level change within the  make it a useful flag for preventing infinite sea-level change within
432  domain, but the flag is \emph{not} useful if you want to simulate,  the domain, but this combination of flags is \emph{not} useful if you
433  say, a sector of the Southern Ocean with a strong ACC entering through  want to simulate, say, a sector of the Southern Ocean with a strong
434  the western and leaving through the eastern boundary, because this  ACC entering through the western and leaving through the eastern
435  flag will make sure that the strong inflow is removed. It is  boundary, because the value of ``\code{-1}'' for these flags will make
436  recommended that this part of the code is adapted to the particular  sure that the strong inflow is removed.
 needs of the simulation in question.  
437    
438  \paragraph{OBCS\_APPLY\_*:} ~ \\  \paragraph{OBCS\_APPLY\_*:} ~ \\
439  ~  ~
440    
441  \paragraph{OBCS\_SPONGE} Setting sponge layer characteristics \\  \paragraph{OBCS\_SPONGE:} ~ \\
442  %  %
443  ~  The sponge layer code (turned on with \code{ALLOW\_OBCS\_SPONGE} and
444    \code{useOBCSsponge}) adds a relaxation term to the right-hand-side of
445    the momentum and tracer equations. The variables are relaxed towards
446    the boundary values with a relaxation time scale that increases
447    linearly with distance from the boundary
448    \[
449    G_{\chi}^{\mbox{(sponge)}} =
450    - \frac{\chi - [( L - \delta{L} ) \chi_{BC} + \delta{L}\chi]/L}
451    {[(L-\delta{L})\tau_{b}+\delta{L}\tau_{i}]/L}
452    = - \frac{\chi - [( 1 - l ) \chi_{BC} + l\chi]}
453    {[(1-l)\tau_{b}+l\tau_{i}]}
454    \]
455    where $\chi$ is the model variable (U/V/T/S) in the interior,
456    $\chi_{BC}$ the boundary value, $L$ the thickness of the sponge layer
457    (runtime parameter \code{spongeThickness} in number of grid points),
458    $\delta{L}\in[0,L]$ ($l\in[0,1]$) the distance from the boundary (also in grid points), and
459    $\tau_{b}$ (runtime parameters \code{Urelaxobcsbound} and
460    \code{Vrelaxobcsbound}) and $\tau_{i}$ (runtime parameters
461    \code{Urelaxobcsinner} and \code{Vrelaxobcsinner}) the relaxation time
462    scales on the boundary and at the interior termination of the sponge
463    layer. The parameters \code{Urelaxobcsbound/inner} set the relaxation
464    time scales for the Eastern and Western boundaries,
465    \code{Vrelaxobcsbound/inner} for the Northern and Southern boundaries.
466    
467  \paragraph{OB's with nonlinear free surface} ~ \\  \paragraph{OB's with nonlinear free surface} ~ \\
468  %  %

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

  ViewVC Help
Powered by ViewVC 1.1.22