ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/microstructure/src/mstruct_outils.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: 5069 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     //####// mstruct_outils.h
15     //####//
16     //####//------------------------------------------------------------
17     //####//------------------------------------------------------------
18     //####// COPYRIGHT 2000-2024
19     //####// jeu 13 jun 2024 11:58:57 EDT
20     //####//------------------------------------------------------------
21     //####//------------------------------------------------------------
22 couturad 919 #ifndef _MSTRUCT_OUTILS_
23     #define _MSTRUCT_OUTILS_
24     #include "mstruct_ves.h"
25 couturad 926 class OT_TENSEUR;
26 couturad 951
27     class MSTRUCT_OUTILS
28 couturad 919 {
29 couturad 951 public:
30     MSTRUCT_OUTILS(void);
31     ~MSTRUCT_OUTILS(void);
32     static int statistiques_champ_volumique(FEM_SOLUTION* fem_sol,
33     MG_CG_GROUPE_FORME* groupe_forme,
34     BOITE_3D* boite_analyse,
35     double *moyenne,
36     double *ecart_type,
37     double *min,
38     double *max,
39     OT_HISTOGRAMME** tab_histogramme);
40    
41     static int statistiques_tenseur_orientation(MG_CG_GROUPE_FORME* groupe_forme,
42     BOITE_3D* boite_analyse,
43     double *moyenne,
44     double *ecart_type,
45     double *min,
46     double *max,
47     FEM_MAILLAGE *fem=NULL,
48     bool ponderation_volume=false);
49    
50     static int statistiques_CAO(BOITE_3D boite_VES,
51     TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme,
52     long &nb_forme,
53     long &nb_volume,
54     double &volume_forme_moyenne,
55     double &volume_forme_ecart_type,
56     double &volume_forme_min,
57     double &volume_forme_max,
58     OT_HISTOGRAMME &volume_forme_histogramme,
59     double &volume_total,
60     double &fraction_volumique,
61     double precision=1e-06);
62    
63     static int statistiques_mg_maillage(BOITE_3D boite_VES,
64     MG_MAILLAGE* mai,
65     TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme,
66     long &nb_element_2D,long &nb_element_3D,
67     double &qualite_moyenne_2D,double &qualite_ecart_type_2D,double &qualite_min_2D,double &qualite_max_2D,OT_HISTOGRAMME& histogramme_qualite_2D,
68     double &qualite_moyenne_3D,double &qualite_ecart_type_3D,double &qualite_min_3D,double &qualite_max_3D,OT_HISTOGRAMME& histogramme_qualite_3D,
69     double &taille_moyenne_2D,double &taille_ecart_type_2D,double &taille_min_2D,double &taille_max_2D,OT_HISTOGRAMME& histogramme_taille_2D,
70     double &taille_moyenne_3D,double &taille_ecart_type_3D,double &taille_min_3D,double &taille_max_3D,OT_HISTOGRAMME& histogramme_taille_3D,
71     double &volume,
72     double &fraction_volumique);
73    
74     static int statistiques_fem_maillage(FEM_MAILLAGE *fem,
75     BOITE_3D *boite_analyse,
76 couturad 926 TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme,
77     long &nb_element_2D,long &nb_element_3D,
78 couturad 951 double &jacobien_min_moyenne_2D,double &jacobien_min_ecart_type_2D, double &jacobien_min_min_2D, double &jacobien_min_max_2D,OT_HISTOGRAMME& histogramme_jacobien_min_2D,
79     double &jacobien_max_moyenne_2D,double &jacobien_max_ecart_type_2D, double &jacobien_max_min_2D, double &jacobien_max_max_2D,OT_HISTOGRAMME& histogramme_jacobien_max_2D,
80     double &jacobien_min_moyenne_3D,double &jacobien_min_ecart_type_3D, double &jacobien_min_min_3D, double &jacobien_min_max_3D,OT_HISTOGRAMME& histogramme_jacobien_min_3D,
81     double &jacobien_max_moyenne_3D,double &jacobien_max_ecart_type_3D, double &jacobien_max_min_3D, double &jacobien_max_max_3D,OT_HISTOGRAMME& histogramme_jacobien_max_3D,
82     double &distortion_moyenne_2D,double &distortion_ecart_type_2D, double &distortion_min_2D, double &distortion_max_2D,OT_HISTOGRAMME& histogramme_distortion_2D,
83     double &distortion_moyenne_3D,double &distortion_ecart_type_3D, double &distortion_min_3D, double &distortion_max_3D,OT_HISTOGRAMME& histogramme_distortion_3D,
84 couturad 926 double &volume,
85     double &fraction_volumique);
86 couturad 982
87     static int appliquer_conditions_limites(MG_GEOMETRIE* m_mg_geometrie, BOITE_3D boite3D_ves, int Type_etude, int Type_CL, int Type_Chargement,double Valeur_CL, int Direction=0,double eps=1.0e-06);
88 couturad 926
89 couturad 951 protected:
90     static double get_volume_mgcg_forme(MG_CG_FORME* forme,FEM_MAILLAGE *fem,BOITE_3D* boite_analyse);
91 couturad 982 static int appliquer_conditions_limites_plan(TPL_MAP_ENTITE<MG_FACE*> *plan, char *condition, double valeur,bool topo_sous_jacente);
92     static int appliquer_conditions_limites_plan(TPL_MAP_ENTITE<MG_FACE*> *plan, char *condition, std::string formule,std::vector<std::string> &listvariable,bool topo_sous_jacente);
93 couturad 951 };
94    
95 couturad 982 #endif