The original formulation of the equations in Section 2.1 describes the movement of solid mantle material. These computations also allow for taking into account how partially molten material changes the material properties and the energy balance through the release of latent heat. However, this will not consider melt extraction or any relative movement between melt and solid and there might be problems where the transport of melt is of interest. Thus, ASPECT allows for solving additional equations describing the behavior of silicate melt percolating through and interacting with a viscously deforming host rock. This requires the advection of a compositional field representing the volume fraction of melt present at any given time (the porosity ), and also a change of the mechanical part of the system. The latter is implemented using the approach of [KMK13] and changes the Stokes system to
We use the indices to indicate properties of the solid and for the properties of the fluid. The equations are solved for the solid velocity , the fluid pressure , and an additional variable, the compaction pressure , which is related to the fluid and solid pressure through the relation . is the Darcy coefficient, which is defined as the quotient of the permeability and the fluid viscosity and is the melting rate. and are the shear and compaction viscosities and can depend on the porosity, temperature, pressure, strain rate and composition. However, there are various laws for these quantities and so they are implemented in the material model. Common formulations for the dependence on porosity are with and with .
To avoid the density gradients in Equation (41), which would have to be specified individually for each material model by the user, we can use the same method as for the mass conservation (described in Section 2.10.3) and assume the change in solid density is dominated by the change in static pressure, which can be written as . This finally allows us to write
For the fluid pressure, choosing a good approximation depends on the model parameters and setup (see [DH16]). Hence, we make a model input parameter, which can be adapted based on the forces that are expected to be dominant in the model. We can then replace the second equation by
The melt velocity is computed as
but is only used for postprocessing purposes and for computing the time step length.
Moreover, melt transport requires an advection equation for the porosity field :
In order to solve this equation in the same way as the other advection equations, we replace the second term of the equation by:
Then we use the same method as described above and assume again that the change in density is dominated by the change in static pressure
so we get
More details on the implementation can be found in [DH16]. A benchmark case demonstrating the propagation of solitary waves can be found in Section 5.4.14.