Multiphase mechanical equilibrium flows

Mechanical equilibrium flows are solved in ECOGEN using the pressure-velocity-equilibrium model (previously named Kapila’s model) [KMB+01]. In the particular case of 2 phases involved and without any extra physics (surface tension, viscosity…), this model reads:

\begin{equation} \label{system_PUEq} \left\{ {\begin{array}{*{20}{l}} {\cfrac{{\partial {\alpha _1}}}{{\partial t}} + \mathbf{u} \cdot \nabla {\alpha _1}}&{ = K div( \mathbf{u} ),} \\ {\cfrac{{\partial {\alpha _1}{\rho _1}}}{{\partial t}} + div \left( {{\alpha _1}{\rho _1}\mathbf{u}} \right) } &{ = 0 ,} \\ {\cfrac{{\partial {\alpha _2}{\rho _2}}}{{\partial t}} + div \left( {{\alpha _2}{\rho _2}\mathbf{u}} \right)}&{ = 0 ,} \\ {\cfrac{{\partial \rho \mathbf{u}}}{{\partial t}} + div \left( {\rho \mathbf{u} \otimes \mathbf{u} + p \mathbf{I}} \right)}&{ = \mathbf{0} ,} \\ {\cfrac{{\partial \rho E}}{{\partial t}} + div \left( {\left( {\rho E + p} \right) \mathbf{u}} \right)}&{ = 0 ,} \end{array}} \right.\ \end{equation}

where subscripts \(1\) and \(2\) correspond to one of the two phases, respectively. \(\alpha_k\) and \(\rho_k\) are the volume fraction and density of phase \(k\).

\(\rho = \sum\limits_{k} \alpha_k \rho_k\), \(\mathbf{u}\), \(p\), \(E = e + \cfrac{1}{2} \| \mathbf{u} \|^2\) and \(e = \sum_k \alpha_k \rho_k e_k\) are the mixture density, velocity, pressure, total energy and internal energy, respectively.

The term \(K div (\mathbf{u})\) accounts for the differences in the acoustic behavior of both phases or in other words, for the differences in expansion and compression of each phase in mixture regions. \(K\) is given by:

\begin{equation*} K = \cfrac{\rho _2 s_2^2 - \rho _1 s_1^2}{\cfrac{\rho _2 s_2^2}{\alpha _2} + \cfrac{\rho _1 s_1^2}{\alpha _1}}, \end{equation*}

\(s_k\) being the speed of sound of phase \(k\).

This model is solved thanks to the numerical method presented in [SPB09].

Advection test cases

The code is provided with the following test cases for advections:

<testCase>./libTests/referenceTestCases/PUEq/1D/transports/interfaceWaterAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/transportWaterSquareInAir/</testCase>

interfaceWaterAir

This first test case is important since it validates the capacity of the numerical method to treat simple advection of an interface between pure fluid without creating spurious oscillations on pressure or velocity profiles. Input files for this test are available in ./libTests/referenceTestCases/PUEq/1D/transports/interfaceWaterAir/.

_images/advection1DCI.png

Fig. 26 Initial condition for 1D advection of water–air interface.

The initial characteristics of the run are:

Characteristic

Value

dimension

1 m

Mesh size

800

interface position

0.3 m

boundary conditions

non-reflecting

final solution time

0.7 ms

solution printing frequency

0.025 ms

precision

1st order

In the default test case, the computation is performed with a 1st order scheme. We compare this solution with those obtained using the 2nd order scheme with THINC limiter [SX14].

_images/advection1D.gif

Fig. 27 Advection of a water–air interface. Visualization using Paraview software.

Shock tubes

The test cases relative to the pressure-velocity-equilibrium model (previously named Kapila’s model) are those presented in [SPB09]. They are here reproduced using ECOGEN.

<testCase>./libTests/referenceTestCases/PUEq/1D/shockTubes/interfaceWaterAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/1D/shockTubes/epoxySpinel/</testCase>

interfaceWaterAir shock tube

A shock tube between a high-pressure chamber filled with water and a low-pressure chamber filled with air is released. Input files for this test are available in ./libTests/referenceTestCases/PUEq/1D/shockTubes/interfaceWaterAir/.

_images/schemaCI.png

Fig. 28 Initial condition for 1D water–air shock tube.

The initial characteristics of the run are:

Characteristic

Value

dimension

1 m

Initial mesh size / max size

100 / 230

number of refinement level

4

diaphragm position

0.7 m

boundary conditions

non-reflecting

final solution time

0.240 ms

solution printing frequency

0.012 ms

precision

2nd order (Vanleer/THINC)

AMR technique of [SPD19] is used with 4 refinement levels such that a maximum of 230 computational cells are used for this run.

_images/shockTubeWaterAir.gif

Fig. 29 Water–air shock tube. Visualization using Paraview software.

epoxySpinel

This test deals with shocks in mixture of materials. Epoxy and spinel are supposed mixed such that caracteristic times for wave propagation and drag effects are very small, allowing to consider the mixture as evolving in mechanical equilibrium. Input files for this test are available in ./libTests/referenceTestCases/PUEq/1D/shockTubes/epoxySpinel/.

_images/schemaCI1.png

Fig. 30 Initial condition for mixture shock tube with epoxy and spinel.

The initial characteristics of the run are:

Characteristic

Value

dimension

1 m

Initial mesh size / max size

200 / 237

number of refinement level

2

diaphragm position

0.6 m

boundary conditions

non-reflecting

final solution time

0.1 ms

solution printing frequency

0.025 ms

precision

2nd order (Vanleer)

_images/shockTubeEpoSpi.gif

Fig. 31 Mixture shock tube with expoxy and spinel. Visualization using Paraview software.

Other tests cases

Other tests are provided with ECOGEN package. They will soon be described in details.

<testCase>./libTests/referenceTestCases/PUEq/1D/cavitation/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/transportWaterSquareInAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/squareWaterExplosion/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/shockBubble/heliumAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/richtmyerMeshkov/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/2D/testUnstructured/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/evap/evapShockTube/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/evap/dodEvapShockTube/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/surfaceTension/squareToCircle/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/surfaceTension/squareToCircleSymmetry/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/surfaceTension/waterCylinderInAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/surfaceTension/waterDropletInAir/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/surfaceTension/dropletImpact/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/AddPhysicalEffects/gravity/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/3D/unstructured/</testCase>
<testCase>./libTests/referenceTestCases/PUEq/3D/shockBubble/heliumAir/</testCase>