MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
fct_taille_fem_solution.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.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_
23 #define _FCT_TAILLE_FEM_SOLUTION_
24 
25 
26 #include "fct_taille_metrique.h"
27 #include "tpl_octree.h"
28 #include "ot_boite_3d.h"
29 
30 class FEM_SOLUTION;
31 class MG_FILE;
32 class MG_GESTIONNAIRE;
33 class FEM_MAILLAGE;
34 class FEM_ELEMENT3;
35 class FEM_NOEUD;
36 
38 {
39 public:
40 FCT_TAILLE_FEM_SOLUTION(char *nom);
41 FCT_TAILLE_FEM_SOLUTION(MG_GESTIONNAIRE* gesttmp,int nnx,int nny,int nnz);
44 
45 virtual ~FCT_TAILLE_FEM_SOLUTION();
46 
47 virtual int valide_parametre(double *param) ;
48 virtual void evaluer(double *param,double *resultat);
49 virtual void deriver(double *param,double *resultat,int num_param=0) ;
50 virtual double get_valeur_maximale(int num=0);
51 virtual BOITE_3D get_boite_3D(void);
52 virtual void enregistrer(char* nom);
53 virtual void get_fichier_dependant(std::vector<std::string> &liste_fichier);
54 virtual void lire(char* nom);
55 virtual MG_GESTIONNAIRE* get_gestionnaire(void);
56 virtual FEM_MAILLAGE* get_maillage(void);
57 virtual FEM_SOLUTION* get_solution(void);
58 virtual bool get_isotrope(void);
59 virtual int get_num_champ(void);
60 
61 
62 virtual void structure_support(int nnx,int nny,int nnz,bool avecverif=false);
63 
64 
65 protected:
66 void cree_octree(void);
67 FEM_ELEMENT3* get_element3(double *param,double *uvw);
68 void get_param_element_fini(FEM_ELEMENT3* ele,double *xyz,double *uvw);
73 bool isotrope;
74 
77 int nx,ny,nz;
78 double pasx,pasy,pasz;
79 std::vector<FEM_ELEMENT3*> element_structure;
81 char nomfich[100];
82 
83 };
84 
85 
86 
87 
88 
89 
90 
91 #endif
virtual int valide_parametre(double *param)
virtual void get_fichier_dependant(std::vector< std::string > &liste_fichier)
virtual MG_GESTIONNAIRE * get_gestionnaire(void)
void get_param_element_fini(FEM_ELEMENT3 *ele, double *xyz, double *uvw)
virtual void enregistrer(char *nom)
virtual void deriver(double *param, double *resultat, int num_param=0)
virtual FEM_MAILLAGE * get_maillage(void)
virtual BOITE_3D get_boite_3D(void)
virtual void structure_support(int nnx, int nny, int nnz, bool avecverif=false)
virtual double get_valeur_maximale(int num=0)
TPL_OCTREE< FEM_ELEMENT3 *, FEM_NOEUD * > octree
FEM_ELEMENT3 * get_element3(double *param, double *uvw)
std::vector< FEM_ELEMENT3 * > element_structure
virtual void evaluer(double *param, double *resultat)
virtual FEM_SOLUTION * get_solution(void)
virtual void lire(char *nom)