|
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 48 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 122 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 127 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 132 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 137 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 142 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 147 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Melt compressibility'.
Definition at line 152 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 157 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 162 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 167 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Freezing rate'.
Definition at line 172 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 177 of file katz2003_mantle_melting.h.
|
private |
This variable is read from the parameter file through a parameter called 'Reference permeability'.
Definition at line 182 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 189 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 196 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 203 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 210 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 217 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 224 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 231 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 238 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 245 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 252 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 259 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 266 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 273 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 280 of file katz2003_mantle_melting.h.