21 #ifndef _aspect_material_model_rheology_peierls_creep_h 22 #define _aspect_material_model_rheology_peierls_creep_h 29 namespace MaterialModel
77 compute_creep_parameters (
const unsigned int composition,
78 const std::vector<double> &phase_function_values = std::vector<double>(),
79 const std::vector<unsigned int> &n_phases_per_composition = std::vector<unsigned int>())
const;
96 parse_parameters (ParameterHandler &prm,
97 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
107 compute_approximate_viscosity (
const double strain_rate,
110 const unsigned int composition,
111 const std::vector<double> &phase_function_values = std::vector<double>(),
112 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
122 compute_exact_viscosity (
const double strain_rate,
123 const double pressure,
124 const double temperature,
125 const unsigned int composition,
126 const std::vector<double> &phase_function_values = std::vector<double>(),
127 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
139 compute_viscosity (
const double strain_rate,
140 const double pressure,
141 const double temperature,
142 const unsigned int composition,
143 const std::vector<double> &phase_function_values = std::vector<double>(),
144 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
150 std::pair<double, double>
151 compute_approximate_strain_rate_and_derivative (
const double stress,
152 const double pressure,
153 const double temperature,
160 std::pair<double, double>
161 compute_exact_strain_rate_and_derivative (
const double stress,
162 const double pressure,
163 const double temperature,
171 std::pair<double, double>
172 compute_exact_log_strain_rate_and_derivative (
const double log_stress,
173 const double pressure,
174 const double temperature,
184 std::pair<double, double>
185 compute_strain_rate_and_derivative (
const double stress,
186 const double pressure,
187 const double temperature,
207 } 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