ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/fem_element2.h
Revision: 763
Committed: Wed Dec 2 19:55:53 2015 UTC (9 years, 5 months ago) by francois
Content type: text/plain
File size: 3216 byte(s)
Log Message:
Le fichier MAGiC est maintenant versionné. LA version actuelle est 2.0. L'ancienne version est 1.0.
Tout est transparent pour l'utilisateur. Les vieilles versions sont lisibles mais les nouveaux enregistrements sont dans la version la plus récente.
Changement des conditions aux limites : ajout d'un parametre pour dire si la condition numerique est une valeur ou une formule ou un lien vers une autre entité magic.
Les parametres pour saisir sont maintenant -ccf -ccfi -ccff -ccft -ccfit -ccfft

File Contents

# User Rev Content
1 francois 283 //------------------------------------------------------------
2     //------------------------------------------------------------
3     // MAGiC
4     // Jean Christophe Cuilli�e et Vincent FRANCOIS
5     // D�artement de G�ie M�anique - UQTR
6     //------------------------------------------------------------
7     // Le projet MAGIC est un projet de recherche du d�artement
8     // de g�ie m�anique de l'Universit�du Qu�ec �
9     // Trois Rivi�es
10     // Les librairies ne peuvent �re utilis�s sans l'accord
11     // des auteurs (contact : francois@uqtr.ca)
12     //------------------------------------------------------------
13     //------------------------------------------------------------
14     //
15     // mg_triangle.h
16     //
17     //------------------------------------------------------------
18     //------------------------------------------------------------
19     // COPYRIGHT 2000
20     // Version du 02/03/2006 �11H22
21     //------------------------------------------------------------
22     //------------------------------------------------------------
23 francois 399 #ifndef _FEMELEMENT2_
24     #define _FEMELEMENT2_
25 francois 283
26     #ifdef WINDOWS_VERSION
27     #ifdef BUILT_DLL_GEOMETRIE
28     #define DLLPORTGEOMETRIE __declspec(dllexport)
29     #else
30     #define DLLPORTGEOMETRIE __declspec(dllimport)
31     #endif
32     #else
33     #define DLLPORTGEOMETRIE
34     #endif
35    
36    
37     #include "fem_element_maillage.h"
38 francois 481 #include "ot_boite_3d.h"
39 francois 283
40     //const unsigned int IDFEM_SEGMENT=1001;
41    
42    
43    
44 francois 309 class DLLPORTGEOMETRIE FEM_ELEMENT2 : public FEM_ELEMENT_MAILLAGE
45 francois 283 {
46     public:
47 francois 309 FEM_ELEMENT2(unsigned long num,class MG_ELEMENT_MAILLAGE* mai);
48 francois 378 FEM_ELEMENT2(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo);
49     FEM_ELEMENT2(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai);
50 francois 309 FEM_ELEMENT2(class MG_ELEMENT_MAILLAGE* mai);
51 francois 378 FEM_ELEMENT2(class MG_ELEMENT_TOPOLOGIQUE* topo);
52     FEM_ELEMENT2(class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai);
53    
54    
55    
56 francois 309 FEM_ELEMENT2(FEM_ELEMENT2& mdd);
57     virtual ~FEM_ELEMENT2();
58 francois 283 virtual int get_type_entite(void)=0;
59    
60    
61     virtual int get_nb_fem_noeud(void)=0;
62     virtual class FEM_NOEUD* get_fem_noeud(int num)=0;
63    
64     virtual void change_noeud(int num,FEM_NOEUD* noeud)=0;
65     virtual BOITE_3D& get_boite_3D(void)=0;
66    
67     virtual int get_dimension(void)=0;
68 francois 763 virtual void enregistrer(std::ostream& o,double version)=0;
69 francois 283
70     virtual void extrapoler_solution_noeud(void);
71 francois 310
72 gervaislavoie 385 virtual int get_etat(void);
73     virtual void change_etat(int num);
74 francois 310
75 francois 637 virtual int get_nb_pt_gauss(int degre)=0;
76 francois 757 virtual void get_pt_gauss(int degre,int num,double &w,double *uv)=0;
77     virtual int get_degre_gauss(int num)=0;
78    
79 francois 638 virtual int get_degremax_fonction_interpolation(void)=0;
80     virtual int get_nb_fonction_interpolation(void)=0;
81 francois 310 virtual double get_fonction_interpolation(int num,double *uv)=0;
82     virtual double get_fonction_derive_interpolation(int num,int numvariable,double *uv)=0;
83     virtual double get_jacobien(double* jac,double *uv,int& li,int& col,double unite=1.)=0;
84 francois 628 virtual void get_inverse_jacob(double* jac,double *uv,double unite=1.)=0;
85    
86     virtual bool get_param_element_fini_2D(double *xyz,double *uv);
87     virtual void get_interpolation_xyz(double *uv,double *xyz);
88 francois 283
89     protected:
90 gervaislavoie 385 int etat;
91 francois 283 };
92    
93    
94    
95    
96    
97    
98     #endif
99    
100    
101