ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/mg_definition.h
Revision: 932
Committed: Tue May 22 15:13:10 2018 UTC (6 years, 11 months ago) by mejri
Content type: text/plain
File size: 3832 byte(s)
Log Message:
Ajout de la methode de cycle jump pour un calcul de fatigue

File Contents

# User Rev Content
1 francois 283 //------------------------------------------------------------
2     //------------------------------------------------------------
3     // MAGiC
4     // Jean Christophe Cuilli�re et Vincent FRANCOIS
5     // D�partement de G�nie M�canique - UQTR
6     //------------------------------------------------------------
7     // Le projet MAGIC est un projet de recherche du d�partement
8     // de g�nie m�canique de l'Universit� du Qu�bec �
9     // Trois Rivi�res
10     // Les librairies ne peuvent �tre utilis�es sans l'accord
11     // des auteurs (contact : francois@uqtr.ca)
12     //------------------------------------------------------------
13     //------------------------------------------------------------
14     //
15     // geom.h
16     //
17     //------------------------------------------------------------
18     //------------------------------------------------------------
19     // COPYRIGHT 2000
20     // Version du 02/03/2006 � 11H22
21     //------------------------------------------------------------
22     //------------------------------------------------------------
23     #ifndef __MAGIC_
24     #define __MAGIC_
25    
26    
27    
28    
29     #ifdef BORLANDCPP
30     #include <set.h>
31     #else
32     #include <set>
33    
34     #endif
35    
36     #include <functional>
37    
38     const int MEME_SENS=1;
39     const int SENS_CONTRAIRE=-1;
40    
41     const int OK=1;
42     const int FAIL=0;
43    
44 francois 375
45     const int MAX_TYPE_SOLUTION=9;
46 francois 410 const int MAX_ETAT=2;
47 francois 375
48 francois 283 template <class T>
49     struct inf : std::binary_function<T, T, bool> {
50     bool operator() ( const T& x, const T& y) const {
51     return x->get_id() < y->get_id();
52     }
53     };
54    
55 francois 791 /*#define MAILLEUR_AUTO 1000
56     #define TRIANGULATION 1010
57     #define IMPOSE 1020
58     #define DUPLIQUER 1030
59     #define MODIFICATION 1040
60     #define OPTIMISE 1050
61     #define DEFORME 1060
62     #define GMSH 1070
63     #define SQUELETTE 1080*/
64 francois 283
65 francois 791
66 francois 375 namespace MAGIC
67     {
68 francois 791 class ORIGINE
69     {
70     public:
71 francois 902 enum origine {MAILLEUR_AUTO=1000,TRIANGULATION=1010,IMPOSE=1020,DUPLIQUER=1030,MODIFICATION=1040,OPTIMISE=1050,DEFORME=1060,GMSH=1070,SQUELETTE=1080,TRIANGULATION_ARETE=1090,TRIANGULATION_ARETEORIGINE=1091,DISCONTINUITE=1100,DISCONTINUITE2=1110,SECTION=1120};
72 francois 791 };
73    
74    
75 francois 375 class ENTITE_SOLUTION
76     {
77     public:
78 francois 767 enum entite_solution {ENTITE_NOEUD=1,ENTITE_ELEMENT1, ENTITE_ELEMENT2,ENTITE_ELEMENT3,ENTITE_ELEMENT1_NOEUD,ENTITE_ELEMENT2_NOEUD, ENTITE_ELEMENT3_NOEUD,ENTITE_ELEMENT1_GAUSS,ENTITE_ELEMENT2_GAUSS, ENTITE_ELEMENT3_GAUSS,ENTITE_ELEMENTND, ENTITE_ELEMENTND_NOEUD};
79 francois 375
80     };
81 francois 283
82 francois 375 class TYPE_SOLUTION
83     {
84     public:
85     enum type_solution {SCALAIRE=1,VECTEUR=3, TENSEUR_SYM=6 ,TENSEUR=9};
86    
87     };
88 francois 551
89     class VERSION_CARTE_TAILLE
90     {
91     public:
92     enum version_carte_taille {ANCIENNE=0,NOUVELLE=1};
93 francois 581 };
94    
95 francois 876 class OPERATION_FEM_SOLUTION
96     {
97     public:
98 francois 902 enum operateur {ADDITION=0,SOUSTRACTION=1,MULTIPLICATION=2,DIVISION=3,VALEUR_ABSOLUE=50,COMPARAISON=51,COMPARAISON_RELATIVE=52,GRAD=53,EXTRAPOLATION=54,NORMESUP=55};
99 francois 876 };
100 francois 581
101     class CALCUL_ASTER
102     {
103     public:
104 couturad 719 enum typecalcul {ELASTIQUE=0,
105 francois 721 PLASTIQUE=1,
106 couturad 719 OPTIMISATIONTOPOLOGIQUE=2,
107     THERMIQUE=3,
108     CONTRAINTE_PLANE=4,
109     DEFORMATION_PLANE=5,
110 francois 786 RIGIDITE=6,
111     RIGIDITE_CONTRAINTE_PLANE=7,
112     RIGIDITE_DEFORMATION_PLANE=8,
113 couturad 719 ELASTIQUE_3D=100,
114     ELASTIQUE_PLAQUE=101,
115     ELASTIQUE_COQUE=102,
116     THERMIQUE_3D=200,
117     ELASTIQUE_GROT_GDEF=103,
118 francois 721 PLASTIQUE_BILINEAIRE=104,
119 sattarpa 849 PLASTIQUE_BILINEAIRE_PLAQUE=1044,
120     PLASTIQUE_BILINEAIRE_COQUE=1045,
121 francois 767 PLASTIQUE_COURBE=105,
122 francois 786 ELASTIQUE_MIXTE_1D3D=106,
123     RIGIDITE_3D=107,
124     RIGIDITE_PLAQUE=108,
125     RIGIDITE_COQUE=109,
126 francois 787 RIGIDITE_MIXTE_1D3D=110,
127     ELASTIQUE_GROT_GDEF_3D=111,
128     ELASTIQUE_GROT_GDEF_PLAQUE=112,
129 mejri 888 ELASTIQUE_GROT_GDEF_COQUE=113,
130 mejri 932 ELASTIQUE_NON_LINEAIRE_3D=114,
131     ELASTIQUE_NON_LINEAIRE_3D_FATIGUE=115
132 francois 721 };
133 francois 375 };
134 francois 635
135    
136     class PROJECTION
137     {
138     public:
139     enum RESULTAT {SUCCES=0,TYPE_SOLUTION_INCORRECT=1,DIMENSION_MAILLAGE_INCOMPATIBLE=2,NON_IMPLEMENTER=3};
140     };
141 francois 686
142    
143    
144     class SEMANTIQUECSG
145     {
146     public:
147 couturad 906 enum semantiquecsg {SANS=100,UNION,SOUSTRACTION,INTERSECTION,FRAGMENT,ROTATION,ECHELLE,PERCAGE,CONGE,CHAMFREIN,EXTRUSION,ERREUR=1000};
148 francois 551 };
149 francois 686
150    
151     };
152 francois 283 #endif
153    
154