.. include:: /images.rst

MMS01: Single-phase, 2D, sinusoidal functions
---------------------------------------------

.. _description-3:

Description
~~~~~~~~~~~

A sinusoidal divergence-free manufactured solution [12, 13] for the fluid pressure, :math:`P_{g}`, and :math:`x` and :math:`y` velocity components, :math:`u_{g}` and :math:`v_{g}`, respectively, is used for the verification of steady-state, single-phase flows on a 2D grid.

.. math::
   u_{g} = u_{g0}\operatorname{}\left( 2\pi\left( x + y \right) \right)\\
   v_{g} = v_{g0}\operatorname{}\left( 2\pi\left( x + y \right) \right)\\
   P_{g} = P_{g0}\cos\left( 2\pi\left( x + y \right) \right)
   :label: mms1eq1

:numref:`fig9` shows a color contour of the pressure field and velocity streamlines for the manufactured solution using constants :math:`P_{g0} = 100\ \text{Pa}`, :math:`u_{g0} = 5.0\ \mathrm{m \cdot sec}^{- 1}`, and , :math:`v_{g0} = 5.0\mathrm{\ m \cdot sec}^{- 1}`.

.. _fig9:
.. figure:: /media/image11.png
   :align: center

   Pressure contours and velocity streamlines for 2D, single-phase, simple sinusoidal manufactured solution on a 64x64 cell grid.

.. _setup-3:

Setup
~~~~~

.. _table13:
.. csv-table:: MMS-01 Setup, Initial and Boundary Conditions.
   :widths: auto
   :header: "Computational/Physical model", " ", " "

   "2D, Steady-state, incompressible", " ", " "
   "Single-phase (no solids)", " ", " "
   "No gravity", " ", " "
   "Thermal energy equation is not solved", " ", " "
   "Turbulence equations are not solved (Laminar)", " ", " "
   "Uniform mesh", " ", " "
   "Superbee and Central discretization schemes", " ", " "
   " ", " ", " "
   "**Geometry**", " ", " "
   "Coordinate system", "Cartesian", " "
   "x-length", "1.0", "\(m\)"
   "y-length", "1.0", "\(m\)"
   " ", " ", " "
   "**Material** :sup:`†`", " ", " "
   "Fluid density, :math:`\rho_{g}`", "1.0", "(kg·m\ :sup:`-3`)"
   "Fluid viscosity, :math:`\mu_{g}`", "1.0", "(Pa·s)"
    " ", " ", " "
   "**Initial Conditions**", " ", " "
   "Pressure *(gauge)*, :math:`P_{g}`", "0.0", "(Pa)"
   "x-velocity, :math:`u_{g}`", "5.0", "(m·s\ :sup:`-1`)"
   "y-velocity, :math:`v_{g}`", "5.0", "(m·s\ :sup:`-1`)"
    " ", " ", " "
   "**Boundary Conditions** :sup:`‡`", " ", " "
   "All boundaries", "Mass inflow", " "

**†** Material properties selected to ensure comparable contribution from convection and diffusion terms.

:sup:`‡` The manufactured solution is imposed on all boundaries (i.e., Dirichlet specification).

.. _results-3:

Results
~~~~~~~

Numerical solutions were obtained using both Superbee and Central discretization schemes for 8x8, 16x16, 32x32, 64x64, and 128x128 grid meshes. The Superbee scheme order of accuracy tests show a first-order rate of convergence for pressure under the :math:`L_{\infty}\ `\ norm as illustrated in :numref:`fig10` (a), whereas the formal order for this scheme is two. The largest errors in pressure are local to boundary cells along the West (y=0) and South (x=0) edges of the domain as shown in :numref:`fig11` (a). This is an artifact of the staggered grid implementation in MFIX where only a single ghost cell layer is present along West and South boundaries, reducing higher-order upwind schemes to first-order. This effect also occurs along the Bottom (z=0) edge of the domain for three-dimensional simulations. Further investigation is needed to determine to what extent the errors introduced at the boundary propagate into the domain interior.

.. _fig10:
.. figure:: /media/image13.png
   :align: center

   Observed orders of accuracy for 2D, single-phase, sinusoidal manufactured solution. (a) Superbee scheme, (b) Central scheme.

.. _fig11:
.. figure:: /media/image15.png
   :align: center

   Errors in pressure for 2D, single-phase, sinusoidal manufactured solution for grid resolution (64x64). (a) Superbee scheme, (b) Central scheme

The Central scheme results, depicted in :numref:`fig10` (b), show second order accuracy for all variables. The formal order for the Central scheme is recovered because no up-winding is performed, thereby averting solution deterioration at the boundaries. The errors in pressure near the boundaries are consistent with the scheme’s formal order as can be seen from :numref:`fig11` (b).

Notes
~~~~~

During initial testing, it was discovered that the strain-tensor cross terms for the momentum equations were not calculated within steady-state sub-iterations which lead to large errors (not shown). These errors do not appear in cases with zero shear at the boundaries. Transient simulations recalculate these cross-terms at the start of each time-step making it difficult to determine the effect on the solution. The significance of this simplification (likely done to reduce computational expense) on real-world application problems is unknown and should be investigated. For MMS tests, this issue was circumvented by recalculating the cross-terms of the strain-tensor at each sub-iteration.