MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
fem_element_maillage.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 //####// fem_element_maillage.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:54 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef __FEMELEMENTMAILLAGE_
23 #define __FEMELEMENTMAILLAGE_
24 
25 
26 
27 
28 
29 
30 #include "mg_identificateur.h"
31 #include "mg_definition.h"
32 #include "tpl_liste_entite.h"
33 #include <vector>
34 
36 {
37 public:
38  FEM_ELEMENT_MAILLAGE(unsigned long num,class MG_ELEMENT_MAILLAGE* mai);
39  FEM_ELEMENT_MAILLAGE(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo);
40  FEM_ELEMENT_MAILLAGE(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai);
45  virtual ~FEM_ELEMENT_MAILLAGE();
46  virtual class MG_ELEMENT_TOPOLOGIQUE* get_lien_topologie(void);
47  virtual class MG_ELEMENT_MAILLAGE* get_mg_element_maillage(void);
48 
49  virtual void reinit_boite_3D(void) = 0 ;
50  virtual int get_dimension()=0;
51  virtual int get_type_entite()=0;
52  virtual void enregistrer(std::ostream& o,double version)=0;
53  virtual void change_numero(int num);
54  virtual int get_numero(void);
55  virtual FEM_ELEMENT_MAILLAGE* dupliquer(class FEM_MAILLAGE* mgmai,long decalage)=0;
56  virtual void change_solution(double val,int num=0);
57  virtual double get_solution(int num=0);
58  virtual bool valide_parametre_EF(double *uvw)=0;
59 
60  virtual int get_etat(int num);
61  virtual void change_etat(int num,int val);
62 
63  virtual void ajouter_xfem(class XFEM_ELEMENT_MAILLAGE* xele);
64  virtual void supprimer_xfem(XFEM_ELEMENT_MAILLAGE* xele);
65  virtual int get_nb_xfem(int dim);
66  virtual XFEM_ELEMENT_MAILLAGE* get_xfem(int dim,int num);
67 
68  virtual void get_voisin_noeud(class FEM_NOEUD* no,TPL_LISTE_ENTITE<FEM_NOEUD*> &voisin)=0;
69 
70 
71 protected:
74  int numero;
76  int etat[MAX_ETAT];
77  std::vector<XFEM_ELEMENT_MAILLAGE*> xfem[4];
78 };
79 
80 
81 
82 #endif
83 
84 
85 
86 
87 
FEM_ELEMENT_MAILLAGE::supprimer_xfem
virtual void supprimer_xfem(XFEM_ELEMENT_MAILLAGE *xele)
Definition: fem_element_maillage.cpp:134
FEM_ELEMENT_MAILLAGE::change_numero
virtual void change_numero(int num)
Definition: fem_element_maillage.cpp:95
FEM_ELEMENT_MAILLAGE::get_dimension
virtual int get_dimension()=0
FEM_ELEMENT_MAILLAGE::valide_parametre_EF
virtual bool valide_parametre_EF(double *uvw)=0
FEM_ELEMENT_MAILLAGE::numero
int numero
Definition: fem_element_maillage.h:74
FEM_ELEMENT_MAILLAGE::change_solution
virtual void change_solution(double val, int num=0)
Definition: fem_element_maillage.cpp:107
MG_ELEMENT_MAILLAGE
Definition: mg_element_maillage.h:38
FEM_ELEMENT_MAILLAGE::get_lien_topologie
virtual class MG_ELEMENT_TOPOLOGIQUE * get_lien_topologie(void)
Definition: fem_element_maillage.cpp:89
FEM_ELEMENT_MAILLAGE::change_etat
virtual void change_etat(int num, int val)
Definition: fem_element_maillage.cpp:124
FEM_ELEMENT_MAILLAGE::liaison_topologique
class MG_ELEMENT_TOPOLOGIQUE * liaison_topologique
Definition: fem_element_maillage.h:73
FEM_ELEMENT_MAILLAGE::get_numero
virtual int get_numero(void)
Definition: fem_element_maillage.cpp:101
FEM_ELEMENT_MAILLAGE::get_voisin_noeud
virtual void get_voisin_noeud(class FEM_NOEUD *no, TPL_LISTE_ENTITE< FEM_NOEUD * > &voisin)=0
MG_ELEMENT_TOPOLOGIQUE
Definition: mg_element_topologique.h:51
FEM_ELEMENT_MAILLAGE::etat
int etat[MAX_ETAT]
Definition: fem_element_maillage.h:76
FEM_ELEMENT_MAILLAGE::get_solution
virtual double get_solution(int num=0)
Definition: fem_element_maillage.cpp:113
FEM_ELEMENT_MAILLAGE
Definition: fem_element_maillage.h:35
FEM_MAILLAGE
Definition: fem_maillage.h:66
FEM_ELEMENT_MAILLAGE::get_type_entite
virtual int get_type_entite()=0
FEM_ELEMENT_MAILLAGE::dupliquer
virtual FEM_ELEMENT_MAILLAGE * dupliquer(class FEM_MAILLAGE *mgmai, long decalage)=0
MAX_TYPE_SOLUTION
const int MAX_TYPE_SOLUTION
Definition: mg_definition.h:42
FEM_ELEMENT_MAILLAGE::get_mg_element_maillage
virtual class MG_ELEMENT_MAILLAGE * get_mg_element_maillage(void)
Definition: fem_element_maillage.cpp:81
FEM_ELEMENT_MAILLAGE::ajouter_xfem
virtual void ajouter_xfem(class XFEM_ELEMENT_MAILLAGE *xele)
Definition: fem_element_maillage.cpp:129
FEM_ELEMENT_MAILLAGE::~FEM_ELEMENT_MAILLAGE
virtual ~FEM_ELEMENT_MAILLAGE()
Definition: fem_element_maillage.cpp:77
FEM_ELEMENT_MAILLAGE::reinit_boite_3D
virtual void reinit_boite_3D(void)=0
FEM_NOEUD
Definition: fem_noeud.h:35
XFEM_ELEMENT_MAILLAGE
Definition: xfem_element_maillage.h:33
FEM_ELEMENT_MAILLAGE::maillage
class MG_ELEMENT_MAILLAGE * maillage
Definition: fem_element_maillage.h:72
FEM_ELEMENT_MAILLAGE::get_xfem
virtual XFEM_ELEMENT_MAILLAGE * get_xfem(int dim, int num)
Definition: fem_element_maillage.cpp:145
mg_definition.h
FEM_ELEMENT_MAILLAGE::FEM_ELEMENT_MAILLAGE
FEM_ELEMENT_MAILLAGE(unsigned long num, class MG_ELEMENT_MAILLAGE *mai)
Definition: fem_element_maillage.cpp:39
TPL_LISTE_ENTITE
Definition: tpl_liste_entite.h:32
FEM_ELEMENT_MAILLAGE::enregistrer
virtual void enregistrer(std::ostream &o, double version)=0
FEM_ELEMENT_MAILLAGE::solution
double solution[MAX_TYPE_SOLUTION]
Definition: fem_element_maillage.h:75
mg_identificateur.h
MG_IDENTIFICATEUR
Definition: mg_identificateur.h:34
MAX_ETAT
const int MAX_ETAT
Definition: mg_definition.h:43
FEM_ELEMENT_MAILLAGE::get_etat
virtual int get_etat(int num)
Definition: fem_element_maillage.cpp:119
tpl_liste_entite.h
FEM_ELEMENT_MAILLAGE::get_nb_xfem
virtual int get_nb_xfem(int dim)
Definition: fem_element_maillage.cpp:140
FEM_ELEMENT_MAILLAGE::xfem
std::vector< XFEM_ELEMENT_MAILLAGE * > xfem[4]
Definition: fem_element_maillage.h:77