1 /*!
2  * \file
3  * mfront/include/MFront/BehaviourBrick/RousselierTanguyBesson2002StressCriterion.hxx
4  * \brief
5  * \author Thomas Helfer, Jérémy Hure, Mohamed Shokeir
6  * \date   14/04/2020
7  * \copyright Copyright (C) 2006-2018 CEA/DEN, EDF R&D. All rights
8  * reserved.
9  * This project is publicly released under either the GNU GPL Licence
10  * or the CECILL-A licence. A copy of thoses licences are delivered
11  * with the sources of TFEL. CEA or EDF may also distribute this
12  * project under specific licensing conditions.
13  */
14 
15 #ifndef LIB_MFRONT_BEHAVIOURBRICK_ROUSSELIER_TANGUY_BESSON_2002_STRESSCRITERION_HXX
16 #define LIB_MFRONT_BEHAVIOURBRICK_ROUSSELIER_TANGUY_BESSON_2002_STRESSCRITERION_HXX
17 
18 #include "MFront/BehaviourBrick/StandardPorousStressCriterionBase.hxx"
19 
20 namespace mfront {
21 
22   namespace bbrick {
23 
24     /*!
25      * \brief implementation of the RousselierTanguyBesson2002 stress criterion
26      */
27     struct RousselierTanguyBesson2002StressCriterion
28         : StandardPorousStressCriterionBase {
29       /*!
30        * \brief constructor
31        */
32       RousselierTanguyBesson2002StressCriterion();
33 
34       std::vector<BehaviourSymmetry> getSupportedBehaviourSymmetries()
35           const override;
36 
37       std::vector<OptionDescription> getOptions() const override;
38 
39       PorosityEffectOnFlowRule getPorosityEffectOnEquivalentPlasticStrain()
40           const override;
41 
42       std::string updatePorosityUpperBound(const BehaviourDescription&,
43                                            const std::string&,
44                                            const Role) const override;
45 
46       //! \brief destructor
47       ~RousselierTanguyBesson2002StressCriterion() override;
48     };  // end of struct RousselierTanguyBesson2002StressCriterion
49 
50   }  // end of namespace bbrick
51 
52 }  // end of namespace mfront
53 
54 #endif /* LIB__MFRONT_BEHAVIOURBRICK_ROUSSELIER_TANGUY_BESSON_2002_STRESSCRITERION_HXX \
55           */
56