ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/mtu/src/fem_element3.h
Revision: 1158
Committed: Thu Jun 13 22:18:49 2024 UTC (11 months, 1 week ago) by francois
Content type: text/plain
File size: 2967 byte(s)
Log Message:
compatibilité Ubuntu 22.04
Suppression des refeences à Windows
Ajout d'une banière

File Contents

# User Rev Content
1 francois 1158 //####//------------------------------------------------------------
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_element3.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:53 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 francois 399 #ifndef _FEMELEMENT3_
23     #define _FEMELEMENT3_
24 francois 283
25    
26    
27 francois 1158
28 francois 283 #include "fem_element_maillage.h"
29 francois 481 #include "ot_boite_3d.h"
30 francois 339 #include <vector>
31 francois 283
32    
33    
34 francois 1158 class FEM_ELEMENT3 : public FEM_ELEMENT_MAILLAGE
35 francois 283 {
36     public:
37 francois 309 FEM_ELEMENT3(unsigned long num,class MG_ELEMENT_MAILLAGE* mai);
38 francois 378 FEM_ELEMENT3(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo);
39     FEM_ELEMENT3(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai);
40 francois 309 FEM_ELEMENT3(class MG_ELEMENT_MAILLAGE* mai);
41 francois 378 FEM_ELEMENT3(class MG_ELEMENT_TOPOLOGIQUE* topo);
42     FEM_ELEMENT3(class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai);
43    
44 francois 309 FEM_ELEMENT3(FEM_ELEMENT3& mdd);
45     virtual ~FEM_ELEMENT3();
46 francois 283 virtual int get_type_entite(void)=0;
47     virtual int get_nb_fem_noeud(void)=0;
48     virtual class FEM_NOEUD* get_fem_noeud(int num)=0;
49    
50 francois 637 virtual int get_nb_pt_gauss(int degre)=0;
51     virtual void get_pt_gauss(int degre,int num,double &w,double *uvw)=0;
52 francois 757 virtual int get_degre_gauss(int num)=0;
53 francois 283
54 francois 638 virtual int get_nb_fonction_interpolation(void)=0;
55     virtual int get_degremax_fonction_interpolation(void)=0;
56 francois 283 virtual double get_fonction_interpolation(int num,double *uv)=0;
57     virtual double get_fonction_derive_interpolation(int num,int numvariable,double *uv)=0;
58 francois 1104 virtual double get_jacobien(double* jac,double *uv,double unite=1.);
59     virtual void get_inverse_jacob(double* jac,double *uv,double unite=1.);
60 francois 635 virtual bool get_param_element_fini(double *xyz,double *uvw);
61 francois 628 virtual void get_interpolation_xyz(double *uvw,double *xyz);
62 francois 1104
63    
64 francois 283 virtual void change_noeud(int num,FEM_NOEUD* noeud)=0;
65     virtual BOITE_3D& get_boite_3D(void)=0;
66     virtual int get_dimension(void)=0;
67 couturad 909 virtual void enregistrer(std::ostream& o,double version)=0;
68 francois 339
69 couturad 909 virtual int verifie_validite_decoupage_xfem(double *vol=NULL)=0;
70 francois 339
71 francois 283 protected:
72 francois 399
73 francois 339
74 francois 283 };
75    
76    
77    
78    
79    
80    
81     #endif
82    
83    
84