21 #ifndef _aspect_material_model_rheology_drucker_prager_h 22 #define _aspect_material_model_rheology_drucker_prager_h 31 namespace MaterialModel
82 parse_parameters (ParameterHandler &prm,
83 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
93 compute_drucker_prager_parameters (
const unsigned int composition,
94 const std::vector<double> &phase_function_values = std::vector<double>(),
95 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
101 compute_yield_stress (
const double cohesion,
102 const double angle_internal_friction,
104 const double max_yield_stress)
const;
113 compute_viscosity (
const double cohesion,
114 const double angle_internal_friction,
115 const double pressure,
116 const double effective_strain_rate,
117 const double max_yield_stress,
118 const double non_yielding_viscosity = std::numeric_limits<double>::infinity())
const;
124 std::pair<double, double>
125 compute_strain_rate_and_derivative (
const double stress,
126 const double pressure,
133 compute_derivative (
const double angle_internal_friction,
134 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