21 #ifndef _aspect_material_model_rheology_composite_visco_plastic_h 22 #define _aspect_material_model_rheology_composite_visco_plastic_h 35 namespace MaterialModel
66 parse_parameters (ParameterHandler &prm,
67 const std::unique_ptr<std::vector<unsigned int>> &expected_n_phases_per_composition =
nullptr);
77 compute_viscosity (
const double pressure,
79 const std::vector<double> &volume_fractions,
81 std::vector<double> &partial_strain_rates,
82 const std::vector<double> &phase_function_values = std::vector<double>(),
83 const std::vector<unsigned int> &n_phase_transitions_per_composition = std::vector<unsigned int>())
const;
94 compute_composition_viscosity (
const double pressure,
95 const double temperature,
96 const unsigned int composition,
97 const SymmetricTensor<2,dim> &strain_rate,
98 std::vector<double> &partial_strain_rates,
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 std::pair<double, double>
107 compute_strain_rate_and_derivative (
const double creep_stress,
108 const double pressure,
109 const double temperature,
std::unique_ptr< Rheology::PeierlsCreep< dim > > peierls_creep
double strain_rate_residual_threshold
bool use_dislocation_creep
void declare_parameters(ParameterHandler &prm)
std::unique_ptr< Rheology::DislocationCreep< dim > > dislocation_creep
std::unique_ptr< Rheology::DiffusionCreep< dim > > diffusion_creep
unsigned int number_of_compositions
unsigned int stress_max_iteration_number
DruckerPragerParameters drucker_prager_parameters
std::unique_ptr< Rheology::DruckerPrager< dim > > drucker_prager