.. 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.