|
ASPECT
|

Static Public Member Functions | |
| static void | declare_parameters (ParameterHandler &prm) |
Static Public Member Functions inherited from aspect::SimulatorAccess< dim > | |
| static void | get_composition_values_at_q_point (const std::vector< std::vector< double >> &composition_values, const unsigned int q, std::vector< double > &composition_values_at_q_point) |
A melt model that calculates melt fraction and entropy change according to the melting model for dry peridotite of Katz, 2003. This also includes a computation of the latent heat of melting (if the latent heat heating model is active).
These functions can be used in the calculation of melting and melt transport in the melt_simple material model and can be extended to other material models.
Definition at line 42 of file katz2003_mantle_melting.h.
|
static |
Declare the parameters this function takes through input files.
| void aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::parse_parameters | ( | ParameterHandler & | prm | ) |
Read the parameters from the parameter file.
| double aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::melt_fraction | ( | const double | temperature, |
| const double | pressure | ||
| ) | const |
Percentage of material that is molten for a given temperature and pressure (assuming equilibrium conditions). Melting model after Katz, 2003, for dry peridotite.
| double aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::entropy_change | ( | const double | temperature, |
| const double | pressure, | ||
| const double | maximum_melt_fraction, | ||
| const NonlinearDependence::Dependence | dependence | ||
| ) | const |
Compute the change in entropy due to melting for a given temperature and pressure, and under the assumption that a fraction maximum_melt_fraction of the material has already been molten previously. The entropy change is computed with respect to temperature or pressure, depending on dependence. This is needed to calculate the latent heat of melt.
| void aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::calculate_reaction_rate_outputs | ( | const typename Interface< dim >::MaterialModelInputs & | in, |
| typename Interface< dim >::MaterialModelOutputs & | out | ||
| ) | const |
Compute all the reaction rate variables needed for a reactive transport model based on the Katz 2003 formulation. Takes the material model inputs in to compute the material model outputs out. This function mainly fills the reaction_rate_out object but populates out.reaction_terms, out.entropy_derivative_pressure and entropy_derivative_temperature
| void aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::calculate_fluid_outputs | ( | const typename Interface< dim >::MaterialModelInputs & | in, |
| typename Interface< dim >::MaterialModelOutputs & | out, | ||
| const double | reference_T | ||
| ) | const |
Compute all the fluid variables needed for a reactive transport model based on the Katz 2003 formulation. This function fills melt outputs, the out object should already contain outputs for the solid and this function uses the inputs in and the solid outputs out to fill MeltOutputs. Solid outputs such as out.Thermal_expansion_coefficients are expected to have already been computed when this function is called. Solid viscosities are also modified in the out object here because the presence of melt weakens the material.
| double aspect::MaterialModel::ReactionModel::Katz2003MantleMelting< dim >::reference_darcy_coefficient | ( | ) | const |
Return a reference Darcy coefficient at a reference melt fraction.
|
private |
Parameters for anhydrous melting of peridotite after Katz, 2003.
This variable is read from the parameter file through a parameter called 'Reference melt density'.
Definition at line 116 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Reference bulk viscosity'.
Definition at line 121 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Reference melt viscosity'.
Definition at line 126 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Thermal bulk viscosity exponent'.
Definition at line 131 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Exponential melt weakening factor'.
Definition at line 136 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Melt extraction depth'.
Definition at line 141 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Melt compressibility'.
Definition at line 146 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Melt bulk modulus derivative'.
Definition at line 151 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Depletion solidus change'.
Definition at line 156 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Use fractional melting'.
Definition at line 161 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Freezing rate'.
Definition at line 166 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Melting time scale for operator splitting'.
Definition at line 171 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Reference permeability'.
Definition at line 176 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the solidus temperature, in degrees Celsius.
This variable is read from the parameter file through a parameter called 'A1'.
Definition at line 183 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the solidus temperature, in degrees Celsius/Pa.
This variable is read from the parameter file through a parameter called 'A2'.
Definition at line 190 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the solidus temperature, in degrees Celsius/Pa^2.
This variable is read from the parameter file through a parameter called 'A3'.
Definition at line 197 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the lherzolite liquidus temperature, in degrees Celsius.
This variable is read from the parameter file through a parameter called 'B1'.
Definition at line 204 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the lherzolite liquidus temperature, in degrees Celsius/Pa.
This variable is read from the parameter file through a parameter called 'B2'.
Definition at line 211 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the lherzolite liquidus temperature, in degrees Celsius/Pa^2.
This variable is read from the parameter file through a parameter called 'B3'.
Definition at line 218 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the liquidus temperature, in degrees Celsius.
This variable is read from the parameter file through a parameter called 'C1'.
Definition at line 225 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the liquidus temperature, in degrees Celsius/Pa.
This variable is read from the parameter file through a parameter called 'C2'.
Definition at line 232 of file katz2003_mantle_melting.h.
|
private |
Coefficient for the liquidus temperature, in degrees Celsius/Pa^2.
This variable is read from the parameter file through a parameter called 'C3'.
Definition at line 239 of file katz2003_mantle_melting.h.
|
private |
Constant in the reaction coefficient of pyroxene.
This variable is read from the parameter file through a parameter called 'r1'.
Definition at line 246 of file katz2003_mantle_melting.h.
|
private |
Pressure dependence of the reaction coefficient of pyroxene.
This variable is read from the parameter file through a parameter called 'r2'.
Definition at line 253 of file katz2003_mantle_melting.h.
|
private |
Mass fraction of pyroxene.
This variable is read from the parameter file through a parameter called 'Mass fraction cpx'.
Definition at line 260 of file katz2003_mantle_melting.h.
|
private |
Melt fraction exponent.
This variable is read from the parameter file through a parameter called 'beta'.
Definition at line 267 of file katz2003_mantle_melting.h.
|
private |
Entropy change upon melting.
This variable is read from the parameter file through a parameter called 'Peridotite melting entropy change'.
Definition at line 274 of file katz2003_mantle_melting.h.