DUNE-ACFEM (2.5.1)
Implementation of first-order advection terms.
Reynold's Transport Theorem, Conservation Laws
In general, we follow the terms derived from Reynold's transport theorem for the transport of some given density \(u\) with some moving ambient medium:
\[ \frac{d}{dt}\int_{V(t)}u(x,t)\,dV = \int_{V(t)}\frac{\partial u(x,t)}{\partial t}\,dV + \int_{\partial V(t)}u(x,t)\,\dot{x}\cdot dO \]
where \(V(t)\subset\Omega\) denotes some moving test-volume moving with velocity \(\dot{x}\) and \(\dot{x}\cdot dO\) denotes the scalar product of the velocity of \(\partial V(t)\) with its outer unit normal field times the surface element.
Let now \(b(x,t)\) be some vector-field and consider test-volumes \(V(t)\) which are transported by a vectorfield \(b(x,t)\) and consider that \(u(x,t)\) is conserved. Then the transport theoreme yields the point-wise equation
\[ \frac{\partial u(x,t)}{\partial t} + \nabla\cdot(b(x,t)\,u(x,t)) = 0 \text{ in }\Omega. \]
Incorporation into Weak Formulations
ACFem implements "atom" models for the divergence term. In order to arrive at an integral expression suitable for a FEM discretization we multiply by some suitable test-function \(v\) and integrate and optionally perform integration by parts:
\[ \int_\Omega \nabla\cdot(b\,u)\,v\,dV = -\int_\Omega u\,\nabla v\cdot b\,dV + \int_{\partial\Omega} u\,v\,b\cdot dO = \int_\Omega (\nabla\cdot b)\,u\,v + b\cdot\nabla u\,v\,dV \]
Available Implementatons in ACFem
ACFem implements a model TransportModel for the second variant above, incorporating the appropriate boundary integral, and an IncompressibleTransportModel for the last form, where in the implementation it is assumbe that \(\nabla\cdot b=0\). For the special case of a fluid transporting its own mass-density alongside with its own velocity, there are the additional non-linear models FluidSelfTransportModel and a IncompressibleSelfTransportModel for the respective formulations. In summary:
linear TransportModel, \(u\) may be scalar or vector-valued, derivative on the test-function
\[ -\int_\Omega u\,b\cdot\nabla v\,dV + \int_{\partial\Omega} u\,v\,b\cdot dO \]
linear IncompressibleTransportModel, \(\nabla\cdot b=0\), \(u\) may be scalar or vector-valued, derivative on the unknown
\[ \int_\Omega b\cdot\nabla u\,v\,dV \]
non-linear FluidSelfTransportModel, \(b \equiv u \), derivative on the test-function
\[ -\int_\Omega u\cdot(\nabla v\,u)\,dV + \int_{\partial\Omega} u\cdot v\,u\cdot dO = -\int_\Omega u^k\,\partial_k v^j\,u^j\,dV + \int_{\partial\Omega} u\cdot v\,u\cdot dO \]
non-linear IncompressibleSelfTransportModel, \(b \equiv u \), \(\nabla\cdot b=0\), derivative on the unknown
\[ \int_\Omega (\nabla u\,u)\cdot v\,dV = \int_\Omega u^k\partial_k u^j\,v^j\,dV \]