|
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) |
Private Attributes | |
| std::vector< double > | prefactors |
| std::vector< double > | stress_exponents |
| std::vector< double > | grain_size_exponents |
| std::vector< double > | activation_energies |
| std::vector< double > | activation_volumes |
| double | fixed_grain_size |
Definition at line 57 of file diffusion_creep.h.
| aspect::MaterialModel::Rheology::DiffusionCreep< dim >::DiffusionCreep | ( | ) |
Constructor.
|
static |
Declare the parameters this function takes through input files.
| void aspect::MaterialModel::Rheology::DiffusionCreep< dim >::parse_parameters | ( | ParameterHandler & | prm, |
| const std::unique_ptr< std::vector< unsigned int >> & | expected_n_phases_per_composition = nullptr |
||
| ) |
Read the parameters this class declares from the parameter file. If expected_n_phases_per_composition points to a vector of unsigned integers this is considered the number of phases for each compositional field and will be checked against the parsed parameters.
| const DiffusionCreepParameters aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_creep_parameters | ( | const unsigned int | composition, |
| const std::vector< double > & | phase_function_values = std::vector< double >(), |
||
| const std::vector< unsigned int > & | n_phase_transitions_per_composition = std::vector< unsigned int >() |
||
| ) | const |
Compute the creep parameters for the diffusion creep law. If n_phase_transitions_per_composition points to a vector of unsigned integers this is considered the number of phase transitions for each compositional field and viscosity will be first computed on each phase and then averaged for each compositional field.
| double aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_viscosity | ( | const double | pressure, |
| const double | temperature, | ||
| const unsigned int | composition, | ||
| const std::vector< double > & | phase_function_values = std::vector< double >(), |
||
| const std::vector< unsigned int > & | n_phase_transitions_per_composition = std::vector< unsigned int >() |
||
| ) | const |
Compute the viscosity based on the diffusion creep law with the fixed grain size given in the input file. If n_phase_transitions_per_composition points to a vector of unsigned integers this is considered the number of phase transitions for each compositional field and viscosity will be first computed on each phase and then averaged for each compositional field.
| double aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_viscosity | ( | const double | pressure, |
| const double | temperature, | ||
| const double | grain_size, | ||
| const unsigned int | composition, | ||
| const std::vector< double > & | phase_function_values = std::vector< double >(), |
||
| const std::vector< unsigned int > & | n_phase_transitions_per_composition = std::vector< unsigned int >() |
||
| ) | const |
Compute the viscosity based on the diffusion creep law for the given grain_size. If n_phase_transitions_per_composition points to a vector of unsigned integers this is considered the number of phase transitions for each compositional field and viscosity will be first computed on each phase and then averaged for each compositional field.
| std::pair<double, double> aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_strain_rate_and_derivative | ( | const double | stress, |
| const double | pressure, | ||
| const double | temperature, | ||
| const DiffusionCreepParameters | creep_parameters | ||
| ) | const |
Compute the strain rate and first stress derivative as a function of stress based on the diffusion creep law with the fixed grain size given in the input file.
| std::pair<double, double> aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_strain_rate_and_derivative | ( | const double | stress, |
| const double | pressure, | ||
| const double | temperature, | ||
| const double | grain_size, | ||
| const DiffusionCreepParameters | creep_parameters | ||
| ) | const |
Compute the strain rate and first stress derivative as a function of stress based on the diffusion creep law for the given grain_size.
| std::pair<double, double> aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_log_strain_rate_and_derivative | ( | const double | log_stress, |
| const double | pressure, | ||
| const double | temperature, | ||
| const DiffusionCreepParameters | creep_parameters | ||
| ) | const |
Compute the logarithm of strain rate and first derivative with respect to the logarithm of the stress based on the diffusion creep law with the fixed grain size given in the input file.
| std::pair<double, double> aspect::MaterialModel::Rheology::DiffusionCreep< dim >::compute_log_strain_rate_and_derivative | ( | const double | log_stress, |
| const double | pressure, | ||
| const double | temperature, | ||
| const double | grain_size, | ||
| const DiffusionCreepParameters | creep_parameters | ||
| ) | const |
Compute the logarithm of strain rate and first derivative with respect to the logarithm of the stress based on the diffusion creep law for the given grain_size.
|
private |
List of diffusion creep prefactors A.
This variable is read from the parameter file through a parameter called 'Prefactors for diffusion creep'.
Definition at line 178 of file diffusion_creep.h.
|
private |
List of diffusion creep stress exponents n (usually = 1). This variable is read from the parameter file through a parameter called 'Stress exponents for diffusion creep'.
Definition at line 184 of file diffusion_creep.h.
|
private |
List of diffusion creep grain size exponents m. This variable is read from the parameter file through a parameter called 'Grain size exponents for diffusion creep'.
Definition at line 190 of file diffusion_creep.h.
|
private |
List of diffusion creep activation energies E. This variable is read from the parameter file through a parameter called 'Activation energies for diffusion creep'.
Definition at line 196 of file diffusion_creep.h.
|
private |
List of diffusion creep activation volumes V. This variable is read from the parameter file through a parameter called 'Activation volumes for diffusion creep'.
Definition at line 202 of file diffusion_creep.h.
|
private |
Diffusion creep grain size d. This is read from the input file, and is only used by the functions that do not take the grain size as additional argument.
This variable is read from the parameter file through a parameter called 'Grain size'.
Definition at line 211 of file diffusion_creep.h.