21 #ifndef _aspect_material_model_rheology_peierls_creep_h 22 #define _aspect_material_model_rheology_peierls_creep_h 29 namespace MaterialModel
82 compute_creep_parameters (
const unsigned int composition,
83 const std::vector<double> &phase_function_values = std::vector<double>(),
84 const std::vector<unsigned int> &n_phases_per_composition = std::vector<unsigned int>())
const;
101 parse_parameters (ParameterHandler &prm,
102 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
112 compute_approximate_viscosity (
const double strain_rate,
115 const unsigned int composition,
116 const std::vector<double> &phase_function_values = std::vector<double>(),
117 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
127 compute_exact_viscosity (
const double strain_rate,
128 const double pressure,
129 const double temperature,
130 const unsigned int composition,
131 const std::vector<double> &phase_function_values = std::vector<double>(),
132 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
144 compute_viscosity (
const double strain_rate,
145 const double pressure,
146 const double temperature,
147 const unsigned int composition,
148 const std::vector<double> &phase_function_values = std::vector<double>(),
149 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
155 std::pair<double, double>
156 compute_approximate_strain_rate_and_derivative (
const double stress,
157 const double pressure,
158 const double temperature,
165 std::pair<double, double>
166 compute_exact_strain_rate_and_derivative (
const double stress,
167 const double pressure,
168 const double temperature,
176 std::pair<double, double>
177 compute_exact_log_strain_rate_and_derivative (
const double log_stress,
178 const double pressure,
179 const double temperature,
187 std::pair<double, double>
188 compute_approximate_log_strain_rate_and_derivative (
const double log_stress,
189 const double pressure,
190 const double temperature,
200 std::pair<double, double>
201 compute_strain_rate_and_derivative (
const double stress,
202 const double pressure,
203 const double temperature,
223 } peierls_creep_flow_law;
std::vector< double > activation_energies
std::vector< double > stress_cutoffs
std::vector< double > glide_parameters_q
void declare_parameters(ParameterHandler &prm)
std::vector< double > stress_exponents
std::vector< double > prefactors
std::vector< double > activation_volumes
std::vector< double > fitting_parameters
unsigned int stress_max_iteration_number
std::vector< double > peierls_stresses
double strain_rate_residual_threshold
std::vector< double > glide_parameters_p