ASPECT
drucker_prager.h
Go to the documentation of this file.
1 // ------------------------------------------------------
2 //
3 // SPDX-License-Identifier: GPL-2.0-or-later
4 //
5 // SPDX-FileCopyrightText: Copyright (C) 2015-2026 by the ASPECT authors.
6 //
7 // This file is part of ASPECT.
8 //
9 // Detailed license information governing the source code and
10 // contributions can be found in the folder LICENSES and in
11 // LICENSE and CONTRIBUTING.md at the top level directory.
12 //
13 // ------------------------------------------------------
14 
15 #ifndef _aspect_material_model_drucker_prager_h
16 #define _aspect_material_model_drucker_prager_h
17 
22 
23 namespace aspect
24 {
25  namespace MaterialModel
26  {
72  template <int dim>
74  {
75  public:
81  MaterialModel::MaterialModelOutputs<dim> &out) const override;
82 
100  bool is_compressible () const override;
112  static
113  void
115 
119  void
120  parse_parameters (ParameterHandler &prm) override;
125  private:
126 
130  double reference_T;
135 
137 
138  /*
139  * Objects for computing plastic stresses, viscosities, and additional outputs
140  */
142 
149 
154  double cohesion;
155 
165 
172  };
173 
174  }
175 }
176 
177 #endif
Rheology::DruckerPrager< dim > drucker_prager_plasticity
bool is_compressible() const override
void evaluate(const MaterialModel::MaterialModelInputs< dim > &in, MaterialModel::MaterialModelOutputs< dim > &out) const override
EquationOfState::LinearizedIncompressible< dim > equation_of_state
void parse_parameters(ParameterHandler &prm) override
static void declare_parameters(ParameterHandler &prm)