21 #ifndef _aspect_material_model_rheology_peierls_creep_h 22 #define _aspect_material_model_rheology_peierls_creep_h 29 namespace MaterialModel
80 compute_creep_parameters (
const unsigned int composition,
81 const std::vector<double> &phase_function_values = std::vector<double>(),
82 const std::vector<unsigned int> &n_phases_per_composition = std::vector<unsigned int>())
const;
99 parse_parameters (ParameterHandler &prm,
100 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
110 compute_approximate_viscosity (
const double strain_rate,
113 const unsigned int composition,
114 const std::vector<double> &phase_function_values = std::vector<double>(),
115 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
125 compute_exact_viscosity (
const double strain_rate,
126 const double pressure,
127 const double temperature,
128 const unsigned int composition,
129 const std::vector<double> &phase_function_values = std::vector<double>(),
130 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
142 compute_viscosity (
const double strain_rate,
143 const double pressure,
144 const double temperature,
145 const unsigned int composition,
146 const std::vector<double> &phase_function_values = std::vector<double>(),
147 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
153 std::pair<double, double>
154 compute_approximate_strain_rate_and_derivative (
const double stress,
155 const double pressure,
156 const double temperature,
163 std::pair<double, double>
164 compute_exact_strain_rate_and_derivative (
const double stress,
165 const double pressure,
166 const double temperature,
174 std::pair<double, double>
175 compute_exact_log_strain_rate_and_derivative (
const double log_stress,
176 const double pressure,
177 const double temperature,
185 std::pair<double, double>
186 compute_approximate_log_strain_rate_and_derivative (
const double log_stress,
187 const double pressure,
188 const double temperature,
198 std::pair<double, double>
199 compute_strain_rate_and_derivative (
const double stress,
200 const double pressure,
201 const double temperature,
221 } 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