MMS02 manufactured solutions
----------------------------

The manufactured solutions for the two-phase, 3D, curl-based functions with constant volume fraction are listed below.

Gas pressure:

.. math::
   :label: a1eq8

   p_{g} = p_{g0}& + p_{\text{gx}}\cos\left( A_{p_{\text{gx}}}\text{Ï€x} \right) + p_{\text{gy}}\cos\left( A_{p_{\text{gy}}}\text{Ï€y} \right) + p_{\text{gxy}}\cos\left( A_{p_{\text{gxy}}}\text{Ï€xy} \right) \\
		&+ p_{\text{gz}}\sin\left( A_{p_{\text{gz}}}\text{Ï€z} \right) + p_{\text{gyz}}\sin\left( A_{p_{\text{gyz}}}\text{Ï€yz} \right) + p_{\text{gzx}}\cos\left( A_{p_{\text{gzx}}}\text{Ï€zx} \right)

Gas velocity components:


.. math::
   :label: a1eq9

   u_{g} =& A_{w_{\text{gy}}}\pi w_{\text{gy}}\cos\left( A_{w_{\text{gy}}}\text{Ï€y} \right) + A_{w_{\text{gxy}}}\pi w_{\text{gxy}}x\cos\left( A_{w_{\text{gxy}}}\text{Ï€xy} \right) \\
	  &- A_{v_{\text{gyz}}}\pi v_{\text{gyz}}y\cos\left( A_{v_{\text{gyz}}}\text{Ï€yz} \right) + A_{w_{\text{gyz}}}\pi w_{\text{gyz}}z\cos\left( A_{w_{\text{gyz}}}\text{Ï€yz} \right) \\
	  &+ A_{v_{\text{gz}}}\pi v_{\text{gz}}\sin\left( A_{v_{\text{gz}}}\text{Ï€z} \right) + A_{v_{\text{gzx}}}\pi v_{\text{gzx}}x\sin\left( A_{v_{\text{gzx}}}\text{Ï€zx} \right)

.. math::
   :label: a1eq10

   v_{g} =& - A_{w_{\text{gxy}}}\pi w_{\text{gxy}}y\cos\left( A_{w_{\text{gxy}}}\text{Ï€xy} \right) + A_{u_{\text{gyz}}}\pi u_{\text{gyz}}y\cos\left( A_{u_{\text{gyz}}}\text{Ï€yz} \right) \\
	  &+ A_{w_{\text{gx}}}\pi w_{\text{gx}}\sin\left( A_{w_{\text{gx}}}\text{Ï€x} \right) - A_{u_{\text{gz}}}\pi u_{\text{gz}}\sin\left( A_{u_{\text{gz}}}\text{Ï€z} \right) \\
	  &- A_{u_{\text{gzx}}}\pi u_{\text{gzx}}x\sin\left( A_{u_{\text{gzx}}}\text{Ï€zx} \right) + A_{w_{\text{gzx}}}\pi w_{\text{gzx}}z\sin\left( A_{w_{\text{gzx}}}\text{Ï€zx} \right)

.. math::
   :label: a1eq11

   w_{g} =& A_{v_{\text{gx}}}\pi v_{\text{gx}}\cos\left( A_{v_{\text{gx}}}\text{Ï€x} \right) - A_{u_{\text{gyz}}}\pi u_{\text{gyz}}z\cos\left( A_{u_{\text{gyz}}}\text{Ï€yz} \right) \\
	  &+ A_{u_{\text{gy}}}\pi u_{\text{gy}}\sin\left( A_{u_{\text{gy}}}\text{Ï€y} \right) + A_{u_{\text{gxy}}}\pi u_{\text{gxy}}x\sin\left( A_{u_{\text{gxy}}}\text{Ï€xy} \right) \\
	  &- A_{v_{\text{gxy}}}\pi v_{\text{gxy}}y\sin\left( A_{v_{\text{gxy}}}\text{Ï€xy} \right) - A_{v_{\text{gzx}}}\pi v_{\text{gzx}}z\sin\left( A_{v_{\text{gzx}}}\text{Ï€zx} \right)

Solids velocity components:


.. math::
   u_{m} = u_{m0}\operatorname{}\left( \frac{\pi}{2}\left( x + y + z \right) \right)
   :label: a1eq12

.. math::
   v_{m} = v_{m0}\operatorname{}\left( \frac{\pi}{2}\left( x + y + z \right) \right)
   :label: a1eq13


.. math::
   w_{m} = w_{m0}
   :label: a1eq14



Gas and solids temperature:

.. math::
   :label: a1eq15

   T_{g} = T_{g0}& + T_{\text{gx}}\cos\left( A_{T_{\text{gx}}}\text{Ï€x} \right) + T_{\text{gy}}\cos\left( A_{T_{\text{gy}}}\text{Ï€y} \right) + T_{\text{gxy}}\cos\left( A_{T_{\text{gxy}}}\text{Ï€xy} \right) \\ 
		 &+ T_{\text{gz}}\sin\left( A_{T_{\text{gz}}}\text{Ï€z} \right) + T_{\text{gyz}}\sin\left( A_{T_{\text{gyz}}}\text{Ï€yz} \right) + T_{\text{gzx}}\cos\left( A_{T_{\text{gzx}}}\text{Ï€zx} \right)

.. math::
   :label: a1eq16

   T_{m} = T_{m0}& + T_{\text{mx}}\cos\left( A_{T_{\text{mx}}}\text{Ï€x} \right) + T_{\text{my}}\cos\left( A_{T_{\text{my}}}\text{Ï€y} \right) + T_{\text{mxy}}\cos\left( A_{T_{\text{mxy}}}\text{Ï€xy} \right) \\
		 &+ T_{\text{mz}}\sin\left( A_{T_{\text{mz}}}\text{Ï€z} \right) + T_{\text{myz}}\sin\left( A_{T_{\text{myz}}}\text{Ï€yz} \right) + T_{\text{mzx}}\cos\left( A_{T_{\text{mzx}}}\text{Ï€zx} \right)

Gas and solids volume fractions:


.. math::
   :label: a1eq17

   \varepsilon_{g} = 1 - \big(& \varepsilon_{m0} + \varepsilon_{\text{mx}}\cos\left( A_{\varepsilon_{\text{mx}}}\text{Ï€x} \right) + \varepsilon_{\text{my}}\cos\left( A_{\varepsilon_{\text{my}}}\text{Ï€y} \right) + \varepsilon_{\text{mxy}}\cos\left( A_{\varepsilon_{\text{mxy}}}\text{Ï€xy} \right) \\
		      & + \varepsilon_{\text{mz}}\sin\left( A_{\varepsilon_{\text{mz}}}\text{Ï€z} \right) + \varepsilon_{\text{myz}}\sin\left( A_{\varepsilon_{\text{myz}}}\text{Ï€yz} \right) + \varepsilon_{\text{mzx}}\cos\left( A_{\varepsilon_{\text{mzx}}}\text{Ï€zx} \right) \big)

.. math::
   :label: a1eq18

   \varepsilon_{m} = \varepsilon_{m0}&+ \varepsilon_{\text{mx}}\cos\left( A_{\varepsilon_{\text{mx}}}\text{Ï€x} \right) + \varepsilon_{\text{my}}\cos\left( A_{\varepsilon_{\text{my}}}\text{Ï€y} \right) + \varepsilon_{\text{mxy}}\cos\left( A_{\varepsilon_{\text{mxy}}}\text{Ï€xy} \right) \\
				     &+ \varepsilon_{\text{mz}}\sin\left( A_{\varepsilon_{\text{mz}}}\text{Ï€z} \right) + \varepsilon_{\text{myz}}\sin\left( A_{\varepsilon_{\text{myz}}}\text{Ï€yz} \right) + \varepsilon_{\text{mzx}}\cos\left( A_{\varepsilon_{\text{mzx}}}\text{Ï€zx} \right)

Solids granular temperature:

.. math::
   :label: a1eq19

   \theta_{m} = \theta_{m0}& + \theta_{\text{mx}}\cos\left( A_{\theta_{\text{mx}}}\text{Ï€x} \right) + \theta_{\text{my}}\cos\left( A_{\theta_{\text{my}}}\text{Ï€y} \right) + \theta_{\text{mxy}}\cos\left( A_{\theta_{\text{mxy}}}\text{Ï€xy} \right) \\
			   & + \theta_{\text{mz}}\sin\left( A_{\theta_{\text{mz}}}\text{Ï€z} \right) + \theta_{\text{myz}}\sin\left( A_{\theta_{\text{myz}}}\text{Ï€yz} \right) + \theta_{\text{mzx}}\cos\left( A_{\theta_{\text{mzx}}}\text{Ï€zx} \right)

The parameters appearing in the manufactured solutions are as follows:

.. _tableA4:
.. csv-table:: Parameters in MMS02 manufactured solutions.
   :widths: auto

   ":math:`p_{g0}`", "100.0", ":math:`v_{\text{gx}}`", "-5.0", ":math:`w_{m0}`", "5.0", ":math:`\varepsilon_{m0}`", "0.3"
   ":math:`p_{\text{gx}}`", "20.0", ":math:`v_{\text{gy}}`", "4.0", ":math:`T_{g0}`", "350", ":math:`\varepsilon_{\text{mx}}`","0.0"
   ":math:`p_{\text{gy}}`", "-50.0", ":math:`v_{\text{gz}}`", "5.0", ":math:`T_{\text{gx}}`", "10", ":math:`\varepsilon_{\text{my}}`", "0.0"
   ":math:`p_{\text{gz}}`", "20.0", ":math:`v_{\text{gxy}}`", "-3.0", ":math:`T_{\text{gy}}`", "-30", ":math:`\varepsilon_{\text{mz}}`", "0.0"
   ":math:`p_{\text{gxy}}`", "-25.0", ":math:`v_{\text{gyz}}`", "2.5", ":math:`T_{\text{gz}}`", "20", ":math:`\varepsilon_{\text{mxy}}`", "0.0"
   ":math:`p_{\text{gyz}}`", "-10.0", ":math:`v_{\text{gzx}}`", "3.5", ":math:`T_{\text{gxy}}`", "-12", ":math:`\varepsilon_{\text{myz}}`", "0.0"
   ":math:`p_{\text{gzx}}`", "10.0", ":math:`A_{v_{\text{gx}}}`", "0.8", ":math:`T_{\text{gyz}}`", "10", ":math:`\varepsilon_{\text{mzx}}`", "0.0"
   ":math:`A_{p_{\text{gx}}}`", "0.4", ":math:`A_{v_{\text{gy}}}`", "0.8", ":math:`T_{\text{gzx}}`", "8", ":math:`A_{\varepsilon_{\text{mx}}}`", "0.5"
   ":math:`A_{p_{\text{gy}}}`", "0.45", ":math:`A_{v_{\text{gz}}}`", "0.5", ":math:`A_{T_{\text{gx}}}`", "0.75", ":math:`A_{\varepsilon_{\text{my}}}`", "0.5"
   ":math:`A_{p_{\text{gz}}}`", "0.85", ":math:`A_{v_{\text{gxy}}}`", "0.9", ":math:`A_{T_{\text{gy}}}`", "1.25", ":math:`A_{\varepsilon_{\text{mz}}}`", "0.5"
   ":math:`A_{p_{\text{gxy}}}`", "0.75", ":math:`A_{v_{\text{gyz}}}`", "0.4", ":math:`A_{T_{\text{gz}}}`", "0.8", ":math:`A_{\varepsilon_{\text{mxy}}}`", "0.4"
   ":math:`A_{p_{\text{gyz}}}`", "0.7", ":math:`A_{v_{\text{gzx}}}`", "0.6", ":math:`A_{T_{\text{gxy}}}`", "0.65", ":math:`A_{\varepsilon_{\text{myz}}}`", "0.4"
   ":math:`A_{p_{\text{gzx}}}`", "0.8", ":math:`w_{g0}`", "8.0", ":math:`A_{T_{\text{gyz}}}`", "0.5", ":math:`A_{\varepsilon_{\text{mzx}}}`", "0.4"
   ":math:`u_{g0}`", "7.0", ":math:`w_{\text{gx}}`", "-4.0", ":math:`A_{T_{\text{gzx}}}`", "0.6", ":math:`\theta_{m0}`", "100.0"
   ":math:`u_{\text{gx}}`", "3.0", ":math:`w_{\text{gy}}`", "3.5", ":math:`T_{m0}`", "300", ":math:`\theta_{\text{mx}}`", "5.0"
   ":math:`u_{\text{gy}}`", "-4.0", ":math:`w_{\text{gz}}`", "4.2", ":math:`T_{\text{mx}}`", "15", ":math:`\theta_{\text{my}}`", "-10.0"
   ":math:`u_{\text{gz}}`", "-3.0", ":math:`w_{\text{gxy}}`", "-2.2", ":math:`T_{\text{my}}`", "-20", ":math:`\theta_{\text{mz}}`", "12.0"
   ":math:`u_{\text{gxy}}`", "2.0", ":math:`w_{\text{gyz}}`", "2.1", ":math:`T_{\text{mz}}`", "15", ":math:`\theta_{\text{mxy}}`", "-8.0"
   ":math:`u_{\text{gyz}}`", "1.5", ":math:`w_{\text{gzx}}`", "2.5", ":math:`T_{\text{mxy}}`", "-10", ":math:`\theta_{\text{myz}}`", "10.0"
   ":math:`u_{\text{gzx}}`", "-2.0", ":math:`A_{w_{\text{gx}}}`", "0.85", ":math:`T_{\text{myz}}`", "12", ":math:`\theta_{\text{mzx}}`", "7.0"
   ":math:`A_{u_{\text{gx}}}`", "0.5", ":math:`A_{w_{\text{gy}}}`", "0.9", ":math:`T_{\text{mzx}}`", "10", ":math:`A_{\theta_{\text{mx}}}`", "0.8"
   ":math:`A_{u_{\text{gy}}}`", "0.85", ":math:`A_{w_{\text{gz}}}`", "0.5", ":math:`A_{T_{\text{mx}}}`", "0.5", ":math:`A_{\theta_{\text{my}}}`", "1.25"
   ":math:`A_{u_{\text{gz}}}`", "0.4", ":math:`A_{w_{\text{gxy}}}`", "0.4", ":math:`A_{T_{\text{my}}}`", "0.9", ":math:`A_{\theta_{\text{mz}}}`", "0.7"
   ":math:`A_{u_{\text{gxy}}}`", "0.6", ":math:`A_{w_{\text{gyz}}}`", "0.8", ":math:`A_{T_{\text{mz}}}`", "0.8", ":math:`A_{\theta_{\text{mxy}}}`", "0.5"
   ":math:`A_{u_{\text{gyz}}}`", "0.8", ":math:`A_{w_{\text{gzx}}}`", "0.75", ":math:`A_{T_{\text{mxy}}}`", "0.5", ":math:`A_{\theta_{\text{myz}}}`", "0.6"
   ":math:`A_{u_{\text{gzx}}}`", "0.9", ":math:`u_{m0}`", "5.0", ":math:`A_{T_{\text{myz}}}`", "0.65", ":math:`A_{\theta_{\text{mzx}}}`", "0.7"
   ":math:`v_{g0}`", "9.0", ":math:`v_{m0}`", "5.0", ":math:`A_{T_{\text{mzx}}}`", "0.4", " ", " "