Skip to content

Commit d64093f

Browse files
author
Thomas Helfer
committed
Almost complete the load function
1 parent a4f5d27 commit d64093f

8 files changed

+714
-353
lines changed

include/MFront/Behaviour/Description.hxx

+30-21
Original file line numberDiff line numberDiff line change
@@ -21,31 +21,18 @@ namespace mfront {
2121
* \brief structure describing a behaviour
2222
*/
2323
struct Description {
24-
//! \behaviour type
25-
enum {
26-
GENERALBEHAVIOUR,
27-
STANDARDSTRAINBASEDBEHAVIOUR,
28-
STANDARDFINITESTRAINBEHAVIOUR,
29-
COHESIVEZONEMODEL
30-
} btype;
31-
//! kinematic of the behaviour treated
32-
enum Kinematic {
33-
UNDEFINEDKINEMATIC,
34-
SMALLSTRAINKINEMATIC,
35-
COHESIVEZONEKINEMATIC,
36-
FINITESTRAINKINEMATIC_F_CAUCHY,
37-
FINITESTRAINKINEMATIC_ETO_PK1
38-
} ktype;
24+
//! \behaviour symmetry
25+
enum Symmetry { ISOTROPIC, ORTHOTROPIC };
3926
//! \brief constructor
4027
Description();
4128
//! \brief move constructor
42-
Description(Description&&);
29+
Description(Description &&);
4330
//! \brief copy constructor
44-
Description(const Description&);
31+
Description(const Description &);
4532
//! \brief move assignement
46-
Description& operator=(Description&&);
33+
Description &operator=(Description &&);
4734
//! \brief standard assignement
48-
Description& operator=(const Description&);
35+
Description &operator=(const Description &);
4936
//! \brief destructor
5037
~Description();
5138
//! \brief name of the library providing the behaviour
@@ -59,18 +46,39 @@ namespace mfront {
5946
* modelling hypothesis)
6047
*/
6148
std::string function;
49+
//! \brief name of the `MFront` source file used to generate the behaviour
50+
std::string source;
51+
//! \brief version of `TFEL` used to generate the behaviour
52+
std::string tfel_version;
6253
//! pointer to the function implementing the behaviour
6354
Behaviour b;
55+
//! \behaviour type
56+
enum {
57+
GENERALBEHAVIOUR,
58+
STANDARDSTRAINBASEDBEHAVIOUR,
59+
STANDARDFINITESTRAINBEHAVIOUR,
60+
COHESIVEZONEMODEL
61+
} btype;
62+
//! kinematic of the behaviour treated
63+
enum Kinematic {
64+
UNDEFINEDKINEMATIC,
65+
SMALLSTRAINKINEMATIC,
66+
COHESIVEZONEKINEMATIC,
67+
FINITESTRAINKINEMATIC_F_CAUCHY,
68+
FINITESTRAINKINEMATIC_ETO_PK1
69+
} kinematic;
70+
//! behaviour symmetry
71+
Symmetry symmetry;
6472
//! gradients
6573
std::vector<Variable> gradients;
6674
//! fluxes associated to gradients
6775
std::vector<Variable> fluxes;
6876
//! material properties
6977
std::vector<Variable> mps;
7078
//! internal state variables
71-
std::vector<Variable> ivs;
79+
std::vector<Variable> isvs;
7280
//! external state variables
73-
std::vector<Variable> evs;
81+
std::vector<Variable> esvs;
7482
//! parameters
7583
std::vector<Variable> parameters;
7684
}; // end of struct Description
@@ -91,3 +99,4 @@ namespace mfront {
9199
} // end of namespace mfront
92100

93101
#endif /* LIB_MFRONT_BEHAVIOUR_DESCRIPTION_HXX */
102+

include/MFront/Behaviour/Variable.hxx

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ namespace mfront {
2424
//! name of the variable
2525
std::string name;
2626
//! type of the variable
27-
enum { SCALAR, STENSOR, TENSOR } type;
27+
enum { SCALAR, VECTOR, STENSOR, TENSOR } type;
2828
}; // end of struct Description
2929

3030
/*!

0 commit comments

Comments
 (0)