MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
fct_taille_fem_solution_generateur_microstructure.h
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
2 //####//------------------------------------------------------------
3 //####// MAGiC
4 //####// Jean Christophe Cuilliere et Vincent FRANCOIS
5 //####// Departement de Genie Mecanique - UQTR
6 //####//------------------------------------------------------------
7 //####// MAGIC est un projet de recherche de l equipe ERICCA
8 //####// du departement de genie mecanique de l Universite du Quebec a Trois Rivieres
9 //####// http://www.uqtr.ca/ericca
10 //####// http://www.uqtr.ca/
11 //####//------------------------------------------------------------
12 //####//------------------------------------------------------------
13 //####//
14 //####// fct_taille_fem_solution_generateur_microstructure.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:52 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE_
23 #define _FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE_
25 #include "mg_gestionnaire.h"
26 #include "tpl_grille.h"
27 class VOLUME_GRILLE;
28 
30 
31 {
32 public:
34  MG_GEOMETRIE* geotmp,
35  double dg,
36  double dg_eps_particule,
37  int fechantillon,
38  int nb_cellule_direction,
39  char *nomsolution,
40  TPL_MAP_ENTITE<MG_VOLUME*>& tpl_map_volume_matrice,
41  long nb_couche_min=2,
42  long nb_pas=32,
43  double facteur_augmentation=25);
46 
47  virtual void construit_particulier(void);
48 protected:
49  int echantillonnage(void);
51  void echantillonnage_face_face(MG_FACE* mgface1,MG_FACE* mgface2);
52  void echantillonnage_arete_face(MG_ARETE* mgarete,MG_FACE* mgface);
53  void echantillonnage_sommet_face(MG_SOMMET* mgsommet,MG_FACE* mgface);
54  void echantillonnage_arete_arete(MG_ARETE* mgarete1,MG_ARETE* mgarete2);
55  void echantillonnage_sommet_arete(MG_SOMMET* mgsommet,MG_ARETE* mgarete);
56  void echantillonnage_sommet_sommet(MG_SOMMET* mgsommet1,MG_SOMMET* mgsommet2);
57  void echantillonnage_arete(MG_ARETE* mgarete);
58  void echantillonnage_face(MG_FACE* mgface);
60  void lisser_solution(void);
61  void extrapoler_solution_noeud(void);
62  void cree_grille(void);
63  void get_fem_ele3_droite(double *xyz1,double *xyz2,TPL_MAP_ENTITE<FEM_ELEMENT3*> &tpl_map_ele3,int nb_pas=32);
66  long m_nb_pas;
70  std::map<FEM_ELEMENT3*,FEM_ELEMENT3*> m_map_fem_ele3;
72 
73 };
74 
76 {
77 public:
79  {
80  m_mgeletopo=mgeletopo;
81  m_id=id;
83  }
85  {
86  return m_boite;
87  }
89  {
90  return m_mgeletopo;
91  }
92  long get_id(void)
93  {
94  return m_id;
95  }
96 protected:
99  long m_id;
100 };
101 
102 
104 {
105 public:
106  VOLUME_GRILLE(MG_VOLUME* volume,long id)
107  {
108  m_volume=volume;
109  m_id=id;
111  }
113  {
114  return m_boite;
115  }
117  {
118  return m_volume;
119  }
120  long get_id(void)
121  {
122  return m_id;
123  }
124 protected:
127  long m_id;
128 };
129 
131 {
132 public:
133  FACE_GRILLE(MG_FACE* face,long id)
134  {
135  m_face=face;
136  m_id=id;
138  }
140  {
141  return m_boite;
142  }
144  {
145  return m_face;
146  }
147  long get_id(void)
148  {
149  return m_id;
150  }
151 protected:
154  long m_id;
155 };
156 
158 {
159 public:
160  ARETE_GRILLE(MG_ARETE* arete,long id)
161  {
162  m_arete=arete;
163  m_id=id;
165  }
167  {
168  return m_boite;
169  }
171  {
172  return m_arete;
173  }
174  long get_id(void)
175  {
176  return m_id;
177  }
178 protected:
181  long m_id;
182 };
183 
184 
185 #endif
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_nb_pas
long m_nb_pas
Definition: fct_taille_fem_solution_generateur_microstructure.h:66
ARETE_GRILLE::m_boite
BOITE_3D m_boite
Definition: fct_taille_fem_solution_generateur_microstructure.h:180
fct_taille_fem_solution_generateur_isotrope.h
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_ele_topo_ele_topo
void echantillonnage_ele_topo_ele_topo(MG_ELEMENT_TOPOLOGIQUE *eletopo1, MG_ELEMENT_TOPOLOGIQUE *eletopo2)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:231
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_dg_eps_particule
double m_dg_eps_particule
Definition: fct_taille_fem_solution_generateur_microstructure.h:68
ELE_TOPO_GRILLE::ELE_TOPO_GRILLE
ELE_TOPO_GRILLE(MG_ELEMENT_TOPOLOGIQUE *mgeletopo, long id)
Definition: fct_taille_fem_solution_generateur_microstructure.h:78
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_map_fem_ele3
std::map< FEM_ELEMENT3 *, FEM_ELEMENT3 * > m_map_fem_ele3
Definition: fct_taille_fem_solution_generateur_microstructure.h:70
TPL_MAP_ENTITE< MG_VOLUME * >
ARETE_GRILLE
Definition: fct_taille_fem_solution_generateur_microstructure.h:157
mg_gestionnaire.h
FACE_GRILLE::m_id
long m_id
Definition: fct_taille_fem_solution_generateur_microstructure.h:154
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_sommet_face
void echantillonnage_sommet_face(MG_SOMMET *mgsommet, MG_FACE *mgface)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:391
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_arete_face
void echantillonnage_arete_face(MG_ARETE *mgarete, MG_FACE *mgface)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:331
ELE_TOPO_GRILLE
Definition: fct_taille_fem_solution_generateur_microstructure.h:75
VOLUME_GRILLE::get_boite_3D
BOITE_3D get_boite_3D(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:112
ELE_TOPO_GRILLE::get_id
long get_id(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:92
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_facteur_augmentation
double m_facteur_augmentation
Definition: fct_taille_fem_solution_generateur_microstructure.h:67
VOLUME_GRILLE::m_id
long m_id
Definition: fct_taille_fem_solution_generateur_microstructure.h:127
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_nb_cellule_direction
int m_nb_cellule_direction
Definition: fct_taille_fem_solution_generateur_microstructure.h:64
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_grille_ele3
TPL_GRILLE< FEM_ELEMENT3 * > m_grille_ele3
Definition: fct_taille_fem_solution_generateur_microstructure.h:71
FACE_GRILLE
Definition: fct_taille_fem_solution_generateur_microstructure.h:130
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::~FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE
~FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE()
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:74
FACE_GRILLE::m_face
MG_FACE * m_face
Definition: fct_taille_fem_solution_generateur_microstructure.h:152
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_sommet_arete
void echantillonnage_sommet_arete(MG_SOMMET *mgsommet, MG_ARETE *mgarete)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:493
ARETE_GRILLE::get_boite_3D
BOITE_3D get_boite_3D(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:166
TPL_GRILLE< FEM_ELEMENT3 * >
MG_VOLUME
Definition: mg_volume.h:33
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_ISOTROPE
Definition: fct_taille_fem_solution_generateur_isotrope.h:34
VOLUME_GRILLE::get_id
long get_id(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:120
MG_GESTIONNAIRE
Definition: mg_gestionnaire.h:57
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_nb_couche_min
long m_nb_couche_min
Definition: fct_taille_fem_solution_generateur_microstructure.h:65
ARETE_GRILLE::get_arete
MG_ARETE * get_arete(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:170
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_arete_arete
void echantillonnage_arete_arete(MG_ARETE *mgarete1, MG_ARETE *mgarete2)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:455
MG_ELEMENT_TOPOLOGIQUE
Definition: mg_element_topologique.h:51
FACE_GRILLE::get_boite_3D
BOITE_3D get_boite_3D(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:139
ELE_TOPO_GRILLE::get_boite_3D
BOITE_3D get_boite_3D(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:84
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_arete
void echantillonnage_arete(MG_ARETE *mgarete)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:566
ARETE_GRILLE::ARETE_GRILLE
ARETE_GRILLE(MG_ARETE *arete, long id)
Definition: fct_taille_fem_solution_generateur_microstructure.h:160
ELE_TOPO_GRILLE::m_id
long m_id
Definition: fct_taille_fem_solution_generateur_microstructure.h:99
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::get_fem_ele3_droite
void get_fem_ele3_droite(double *xyz1, double *xyz2, TPL_MAP_ENTITE< FEM_ELEMENT3 * > &tpl_map_ele3, int nb_pas=32)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:747
MG_FACE::get_boite_3D
virtual BOITE_3D get_boite_3D(void)
Definition: mg_face.cpp:336
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::lisser_solution
void lisser_solution(void)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:617
tpl_grille.h
FACE_GRILLE::get_id
long get_id(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:147
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE(MG_GESTIONNAIRE *gesttmp, MG_GEOMETRIE *geotmp, double dg, double dg_eps_particule, int fechantillon, int nb_cellule_direction, char *nomsolution, TPL_MAP_ENTITE< MG_VOLUME * > &tpl_map_volume_matrice, long nb_couche_min=2, long nb_pas=32, double facteur_augmentation=25)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:27
VOLUME_GRILLE::m_volume
MG_VOLUME * m_volume
Definition: fct_taille_fem_solution_generateur_microstructure.h:125
MG_VOLUME::get_boite_3D
virtual BOITE_3D get_boite_3D(void)
Definition: mg_volume.cpp:109
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::construit_particulier
virtual void construit_particulier(void)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:79
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::lien_topologique_entre
bool lien_topologique_entre(MG_ELEMENT_TOPOLOGIQUE *mg_ele_topo1, MG_ELEMENT_TOPOLOGIQUE *mg_ele_topo2)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:84
VOLUME_GRILLE::VOLUME_GRILLE
VOLUME_GRILLE(MG_VOLUME *volume, long id)
Definition: fct_taille_fem_solution_generateur_microstructure.h:106
MG_ELEMENT_TOPOLOGIQUE::get_boite_3D
virtual BOITE_3D get_boite_3D(void)=0
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::cree_grille
void cree_grille(void)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:715
BOITE_3D
Definition: ot_boite_3d.h:27
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_face
void echantillonnage_face(MG_FACE *mgface)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:592
MG_ARETE::get_boite_3D
virtual BOITE_3D get_boite_3D(void)
Definition: mg_arete.cpp:116
FACE_GRILLE::m_boite
BOITE_3D m_boite
Definition: fct_taille_fem_solution_generateur_microstructure.h:153
FACE_GRILLE::get_face
MG_FACE * get_face(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:143
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE
Definition: fct_taille_fem_solution_generateur_microstructure.h:29
MG_GEOMETRIE
Definition: mg_geometrie.h:84
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_sommet_sommet
void echantillonnage_sommet_sommet(MG_SOMMET *mgsommet1, MG_SOMMET *mgsommet2)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:535
VOLUME_GRILLE::get_volume
MG_VOLUME * get_volume(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:116
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage_face_face
void echantillonnage_face_face(MG_FACE *mgface1, MG_FACE *mgface2)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:271
MG_ARETE
Definition: mg_arete.h:36
MG_FACE
Definition: mg_face.h:34
MG_SOMMET
Definition: mg_sommet.h:35
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::echantillonnage
int echantillonnage(void)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:99
FACE_GRILLE::FACE_GRILLE
FACE_GRILLE(MG_FACE *face, long id)
Definition: fct_taille_fem_solution_generateur_microstructure.h:133
ELE_TOPO_GRILLE::get_mgeletopo
MG_ELEMENT_TOPOLOGIQUE * get_mgeletopo(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:88
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::extrapoler_solution_noeud
void extrapoler_solution_noeud(void)
Definition: fct_taille_fem_solution_generateur_microstructure.cpp:698
ARETE_GRILLE::m_id
long m_id
Definition: fct_taille_fem_solution_generateur_microstructure.h:181
ARETE_GRILLE::m_arete
MG_ARETE * m_arete
Definition: fct_taille_fem_solution_generateur_microstructure.h:179
VOLUME_GRILLE::m_boite
BOITE_3D m_boite
Definition: fct_taille_fem_solution_generateur_microstructure.h:126
ELE_TOPO_GRILLE::m_mgeletopo
MG_ELEMENT_TOPOLOGIQUE * m_mgeletopo
Definition: fct_taille_fem_solution_generateur_microstructure.h:97
FCT_TAILLE_FEM_SOLUTION_GENERATEUR_MICROSTRUCTURE::m_tpl_map_volume_matrice
TPL_MAP_ENTITE< MG_VOLUME * > m_tpl_map_volume_matrice
Definition: fct_taille_fem_solution_generateur_microstructure.h:69
ARETE_GRILLE::get_id
long get_id(void)
Definition: fct_taille_fem_solution_generateur_microstructure.h:174
VOLUME_GRILLE
Definition: fct_taille_fem_solution_generateur_microstructure.h:103
ELE_TOPO_GRILLE::m_boite
BOITE_3D m_boite
Definition: fct_taille_fem_solution_generateur_microstructure.h:98