ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/geometrie/src/fem_segment2.h
Revision: 767
Committed: Wed Dec 23 20:52:36 2015 UTC (9 years, 4 months ago) by francois
Content type: text/plain
File size: 3021 byte(s)
Log Message:
calcul sur des structures mixtes volume poutre.
cela fonctionne pour l'instant pour des blocages appliquées uniquement aux mailles 3D et pour des résultats aux mailles 3D uniquement aux noeuds

File Contents

# User Rev Content
1 francois 283 //------------------------------------------------------------
2     //------------------------------------------------------------
3     // MAGiC
4     // Jean Christophe Cuilli�re et Vincent FRANCOIS
5     // D�partement de G�nie M�canique - UQTR
6     //------------------------------------------------------------
7     // Le projet MAGIC est un projet de recherche du d�partement
8     // de g�nie m�canique de l'Universit� du Qu�bec �
9     // Trois Rivi�res
10     // Les librairies ne peuvent �tre utilis�es sans l'accord
11     // des auteurs (contact : francois@uqtr.ca)
12     //------------------------------------------------------------
13     //------------------------------------------------------------
14     //
15     // mg_segment2.h
16     //
17     //------------------------------------------------------------
18     //------------------------------------------------------------
19     // COPYRIGHT 2000
20     // Version du 02/03/2006 � 11H22
21     //------------------------------------------------------------
22     //------------------------------------------------------------
23     #ifndef _FEMSEGMENT2_
24     #define _FEMSEGMENT2_
25    
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_template_element.h"
38 francois 309 #include "fem_element1.h"
39 francois 283
40     const unsigned int IDFEM_SEGMENT2=1102;
41    
42    
43 francois 767 class DLLPORTGEOMETRIE FEM_SEGMENT2 : public FEM_ELEMENT1,public FEM_TEMPLATE_ELEMENT<2>
44 francois 283 {
45     public:
46     FEM_SEGMENT2(unsigned long num,class MG_ELEMENT_MAILLAGE* mai,class FEM_NOEUD** tabnoeud);
47 francois 378 FEM_SEGMENT2(unsigned long num,class MG_ELEMENT_TOPOLOGIQUE* topo,class MG_ELEMENT_MAILLAGE* mai,class FEM_NOEUD** tabnoeud);
48 francois 283 FEM_SEGMENT2(class MG_ELEMENT_MAILLAGE* mai,FEM_NOEUD** tabnoeud);
49     FEM_SEGMENT2(FEM_SEGMENT2& mdd);
50 francois 378 FEM_SEGMENT2(class MG_ELEMENT_TOPOLOGIQUE* topo,class FEM_NOEUD** tabnoeud);
51 francois 283 virtual ~FEM_SEGMENT2();
52     virtual int get_type_entite(void);
53    
54     virtual int get_nb_fem_noeud(void);
55     virtual FEM_NOEUD* get_fem_noeud(int num);
56     virtual void change_noeud(int num,FEM_NOEUD* noeud);
57    
58     virtual BOITE_3D& get_boite_3D(void);
59     FEM_ELEMENT_MAILLAGE* dupliquer(FEM_MAILLAGE *femmai,long decalage);
60 francois 635 virtual bool valide_parametre_EF(double* uvw);
61 francois 684 virtual void reinit_boite_3D(void);
62 francois 283 virtual int get_dimension(void);
63 francois 763 virtual void enregistrer(std::ostream& o,double version);
64 francois 637 virtual int get_nb_pt_gauss(int degre);
65     virtual void get_pt_gauss(int degre,int num,double &w,double *u);
66 francois 757 virtual int get_degre_gauss(int num);
67    
68 francois 638 virtual int get_degremax_fonction_interpolation(void);
69     virtual int get_nb_fonction_interpolation(void);
70 francois 310 virtual double get_fonction_interpolation(int num,double *uv);
71     virtual double get_fonction_derive_interpolation(int num,int numvariable,double *uv);
72     virtual double get_jacobien(double* jac,double *uv,int& li,int& col,double unite=1.);
73     virtual void get_inverse_jacob(double* jac,double *uv,double unite=1.);
74 francois 283
75     protected:
76    
77     };
78    
79    
80    
81    
82    
83    
84     #endif
85    
86    
87