ASPECT
|
Static Public Member Functions | |
static void | declare_parameters (ParameterHandler &prm) |
Static Public Member Functions inherited from aspect::Plugins::InterfaceBase | |
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) |
Private Types | |
enum | ViscositySource { function, file, list, none } |
Private Member Functions | |
double | calculate_depth_dependent_prefactor (const double &depth) const |
Private Attributes | |
double | reference_viscosity |
ViscositySource | viscosity_source |
std::unique_ptr< Functions::InterpolatedTensorProductGridData< 1 > > | viscosity_file_function |
std::vector< double > | depth_values |
std::vector< double > | viscosity_values |
Functions::ParsedFunction< 1 > | viscosity_function |
std::unique_ptr< MaterialModel::Interface< dim > > | base_model |
std::unique_ptr< Rheology::AsciiDepthProfile< dim > > | depth_dependent_rheology |
Additional Inherited Members | |
Public Types inherited from aspect::MaterialModel::Interface< dim > | |
using | MaterialModelInputs = MaterialModel::MaterialModelInputs< dim > |
using | MaterialModelOutputs = MaterialModel::MaterialModelOutputs< dim > |
Protected Attributes inherited from aspect::MaterialModel::Interface< dim > | |
NonlinearDependence::ModelDependence | model_dependence |
A material model that applies a depth-dependent viscosity to a ''base model'' chosen from any of the other available material models. This depth-dependent material model allows the user to specify a depth-dependent reference viscosity either through a parsed function, lists of depth and viscosity values, or a file. The current implementation only allows for depth-dependence of viscosity - all other properties are derived from the base model.
Definition at line 47 of file depth_dependent.h.
|
private |
An enum to describe where the depth dependency of the viscosity is coming from.
Enumerator | |
---|---|
function | |
file | |
list | |
none |
Definition at line 93 of file depth_dependent.h.
|
overridevirtual |
Initialize the base model at the beginning of the run.
Reimplemented from aspect::Plugins::InterfaceBase.
|
overridevirtual |
Update the base model and viscosity function at the beginning of each timestep.
Reimplemented from aspect::Plugins::InterfaceBase.
|
overridevirtual |
Method that indicates whether material is compressible. Depth dependent model is compressible if and only if base model is compressible.
Implements aspect::MaterialModel::Interface< dim >.
|
override |
Function to compute the material properties in out
given the inputs in in
.
|
static |
Method to declare parameters related to depth-dependent model
|
overridevirtual |
Method to parse parameters related to depth-dependent model
Reimplemented from aspect::Plugins::InterfaceBase.
|
overridevirtual |
If this material model can produce additional named outputs that are derived from NamedAdditionalOutputs, create them in here. By default, this does nothing.
Reimplemented from aspect::MaterialModel::Interface< dim >.
|
private |
Function to calculate depth-dependent multiplicative prefactor to be applied to base model viscosity.
|
private |
The viscosity that will be used as a reference for computing the depth-dependent prefactor.
Definition at line 105 of file depth_dependent.h.
|
private |
Currently chosen source for the viscosity.
Definition at line 110 of file depth_dependent.h.
|
private |
Data structures to store depth and viscosity lookup tables as well as interpolating function to calculate viscosity for File Depth dependence method
Definition at line 116 of file depth_dependent.h.
|
private |
Values of depth specified by the user if using the depth dependence method 'list'
Definition at line 128 of file depth_dependent.h.
|
private |
Definition at line 129 of file depth_dependent.h.
|
private |
Parsed function that specifies viscosity depth-dependence when using the 'function' method.
Definition at line 135 of file depth_dependent.h.
|
private |
Pointer to the material model used as the base model
Definition at line 140 of file depth_dependent.h.
|
private |
Pointer to the rheology model used for depth-dependence from an ascii file
Definition at line 146 of file depth_dependent.h.