v0.14.0
UserGelModel.hpp
Go to the documentation of this file.
1 /** \file UserGelModel.hpp
2  \brief Implementation of Gel finite element
3  \ingroup gel
4 */
5 
6 /* This file is part of MoFEM.
7  * MoFEM is free software: you can redistribute it and/or modify it under
8  * the terms of the GNU Lesser General Public License as published by the
9  * Free Software Foundation, either version 3 of the License, or (at your
10  * option) any later version.
11  *
12  * MoFEM is distributed in the hope that it will be useful, but WITHOUT
13  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
15  * License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with MoFEM. If not, see <http://www.gnu.org/licenses/>. */
19 
20 
21 #ifndef __UESRGELMODEL_HPP__
22 #define __UESRGELMODEL_HPP__
23 
24 #ifndef WITH_ADOL_C
25  #error "MoFEM need to be compiled with ADOL-C"
26 #endif
27 
28 namespace GelModule {
29 
30 /** \brief User (hackable) Gel model
31 
32  Member functions of \ref Gel::ConstitutiveEquation can be overloaded and
33  user constitutive equation can be implemented. Since ADOL-C is used all
34  tangent matrices are automatically calculated and physical nonlinearities easily
35  added to the model.
36 
37 */
38 template<typename TYPE>
40 
41  UserGelConstitutiveEquation(map<int,Gel::BlockMaterialData> &data):
42  Gel::ConstitutiveEquation<TYPE>(data) {
43  }
44 
45  /*PetscErrorCode calculateStressAlpha() {
46  PetscFunctionBegin;
47  PetscFunctionReturn(0);
48  }*/
49 
50  /*PetscErrorCode calculateStressBeta() {
51  PetscFunctionBegin;
52  PetscFunctionReturn(0);
53  }*/
54 
55  /*PetscErrorCode calculateStrainHatFlux() {
56  PetscFunctionBegin;
57  PetscFunctionReturn(0);
58  }*/
59 
60  /*PetscErrorCode calculateStressBetaHat() {
61  PetscFunctionBegin;
62  PetscFunctionReturn(0);
63  }*/
64 
65  /*PetscErrorCode calculateSolventFlux() {
66  PetscFunctionBegin;
67  PetscFunctionReturn(0);
68  }*/
69 
70  /*PetscErrorCode calculateVolumeDot() {
71  PetscFunctionBegin;
72  volumeDot = traceStrainTotalDot;
73  PetscFunctionReturn(0);
74  }*/
75 
76 };
77 
78 }
79 
80 #endif // __UESRGELMODEL_HPP__
GelModule::UserGelConstitutiveEquation
User (hackable) Gel model.
Definition: UserGelModel.hpp:39
GelModule
Definition: Gels.hpp:27
GelModule::Gel::ConstitutiveEquation::ConstitutiveEquation
ConstitutiveEquation(map< int, BlockMaterialData > &data)
Definition: Gels.hpp:119
GelModule::Gel
Implementation of Gel constitutive model.
Definition: Gels.hpp:74
GelModule::UserGelConstitutiveEquation::UserGelConstitutiveEquation
UserGelConstitutiveEquation(map< int, Gel::BlockMaterialData > &data)
Definition: UserGelModel.hpp:41
GelModule::Gel::ConstitutiveEquation
Constitutive model functions.
Definition: Gels.hpp:114