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 |
|
|
//####// xfem_element1.h |
15 |
|
|
//####// |
16 |
|
|
//####//------------------------------------------------------------ |
17 |
|
|
//####//------------------------------------------------------------ |
18 |
|
|
//####// COPYRIGHT 2000-2024 |
19 |
|
|
//####// jeu 13 jun 2024 11:58:54 EDT |
20 |
|
|
//####//------------------------------------------------------------ |
21 |
|
|
//####//------------------------------------------------------------ |
22 |
francois |
380 |
#ifndef _XFEMELEMENT1_ |
23 |
|
|
#define _XFEMELEMENT1_ |
24 |
|
|
|
25 |
|
|
|
26 |
|
|
|
27 |
francois |
1158 |
|
28 |
francois |
399 |
#include "xfem_element_maillage.h" |
29 |
francois |
481 |
#include "ot_boite_3d.h" |
30 |
francois |
380 |
#include <vector> |
31 |
|
|
|
32 |
|
|
|
33 |
|
|
|
34 |
francois |
1158 |
class XFEM_ELEMENT1 : public XFEM_ELEMENT_MAILLAGE |
35 |
francois |
380 |
{ |
36 |
|
|
public: |
37 |
francois |
399 |
XFEM_ELEMENT1(unsigned long num,class FEM_ELEMENT_MAILLAGE* mai,class MG_ELEMENT_TOPOLOGIQUE *mgtopo); |
38 |
|
|
XFEM_ELEMENT1(class FEM_ELEMENT_MAILLAGE* mai,class MG_ELEMENT_TOPOLOGIQUE *mgtopo); |
39 |
francois |
380 |
XFEM_ELEMENT1(XFEM_ELEMENT1& mdd); |
40 |
|
|
virtual ~XFEM_ELEMENT1(); |
41 |
|
|
virtual int get_type_entite(void)=0; |
42 |
|
|
virtual int get_nb_fem_noeud(void)=0; |
43 |
|
|
virtual class FEM_NOEUD* get_fem_noeud(int num)=0; |
44 |
|
|
|
45 |
|
|
|
46 |
|
|
|
47 |
|
|
virtual int nb_fonction_interpolation(void)=0; |
48 |
|
|
virtual double get_fonction_interpolation(int num,double *uv)=0; |
49 |
|
|
virtual double get_fonction_derive_interpolation(int num,int numvariable,double *uv)=0; |
50 |
|
|
virtual double get_jacobien(double* jac,double *uv,int& li,int& col,double unite=1.)=0; |
51 |
|
|
virtual void get_inverse_jacob(double* jac,double *uv,double unite=1.)=0; |
52 |
|
|
|
53 |
|
|
|
54 |
|
|
|
55 |
|
|
virtual void change_noeud(int num,FEM_NOEUD* noeud)=0; |
56 |
|
|
virtual BOITE_3D& get_boite_3D(void)=0; |
57 |
|
|
virtual int get_dimension(void)=0; |
58 |
francois |
763 |
virtual void enregistrer(std::ostream& o,double version)=0; |
59 |
francois |
380 |
|
60 |
francois |
399 |
|
61 |
francois |
380 |
|
62 |
francois |
399 |
|
63 |
francois |
380 |
|
64 |
|
|
|
65 |
|
|
protected: |
66 |
francois |
399 |
|
67 |
francois |
380 |
|
68 |
|
|
}; |
69 |
|
|
|
70 |
|
|
|
71 |
|
|
|
72 |
|
|
|
73 |
|
|
|
74 |
|
|
|
75 |
|
|
#endif |
76 |
|
|
|
77 |
|
|
|
78 |
|
|
|