21 #ifndef _aspect_material_model_rheology_drucker_prager_h 22 #define _aspect_material_model_rheology_drucker_prager_h 31 namespace MaterialModel
87 parse_parameters (ParameterHandler &prm,
88 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
98 compute_drucker_prager_parameters (
const unsigned int composition,
99 const std::vector<double> &phase_function_values = std::vector<double>(),
100 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
106 compute_yield_stress (
const double cohesion,
107 const double angle_internal_friction,
109 const double max_yield_stress)
const;
118 compute_viscosity (
const double cohesion,
119 const double angle_internal_friction,
120 const double pressure,
121 const double effective_strain_rate,
122 const double max_yield_stress,
123 const double non_yielding_viscosity = std::numeric_limits<double>::infinity())
const;
129 std::pair<double, double>
130 compute_strain_rate_and_derivative (
const double stress,
131 const double pressure,
138 compute_derivative (
const double angle_internal_friction,
139 const double effective_strain_rate)
const;
std::vector< double > angles_internal_friction
void declare_parameters(ParameterHandler &prm)
double angle_internal_friction
std::vector< double > cohesions