1 |
couturad |
919 |
#ifndef _MSTRUCT_OUTILS_ |
2 |
|
|
#define _MSTRUCT_OUTILS_ |
3 |
|
|
#include "mstruct_ves.h" |
4 |
couturad |
926 |
class OT_TENSEUR; |
5 |
couturad |
919 |
// class FEM_SOLUTION; |
6 |
|
|
// class OT_HISTOGRAMME; |
7 |
couturad |
951 |
|
8 |
|
|
class MSTRUCT_OUTILS |
9 |
couturad |
919 |
{ |
10 |
couturad |
951 |
public: |
11 |
|
|
MSTRUCT_OUTILS(void); |
12 |
|
|
~MSTRUCT_OUTILS(void); |
13 |
|
|
static int statistiques_champ_volumique(FEM_SOLUTION* fem_sol, |
14 |
|
|
MG_CG_GROUPE_FORME* groupe_forme, |
15 |
|
|
BOITE_3D* boite_analyse, |
16 |
|
|
double *moyenne, |
17 |
|
|
double *ecart_type, |
18 |
|
|
double *min, |
19 |
|
|
double *max, |
20 |
|
|
OT_HISTOGRAMME** tab_histogramme); |
21 |
|
|
|
22 |
|
|
static int statistiques_tenseur_orientation(MG_CG_GROUPE_FORME* groupe_forme, |
23 |
|
|
BOITE_3D* boite_analyse, |
24 |
|
|
double *moyenne, |
25 |
|
|
double *ecart_type, |
26 |
|
|
double *min, |
27 |
|
|
double *max, |
28 |
|
|
FEM_MAILLAGE *fem=NULL, |
29 |
|
|
bool ponderation_volume=false); |
30 |
|
|
|
31 |
|
|
static int statistiques_CAO(BOITE_3D boite_VES, |
32 |
|
|
TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme, |
33 |
|
|
long &nb_forme, |
34 |
|
|
long &nb_volume, |
35 |
|
|
double &volume_forme_moyenne, |
36 |
|
|
double &volume_forme_ecart_type, |
37 |
|
|
double &volume_forme_min, |
38 |
|
|
double &volume_forme_max, |
39 |
|
|
OT_HISTOGRAMME &volume_forme_histogramme, |
40 |
|
|
double &volume_total, |
41 |
|
|
double &fraction_volumique, |
42 |
|
|
double precision=1e-06); |
43 |
|
|
|
44 |
|
|
static int statistiques_mg_maillage(BOITE_3D boite_VES, |
45 |
|
|
MG_MAILLAGE* mai, |
46 |
|
|
TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme, |
47 |
|
|
long &nb_element_2D,long &nb_element_3D, |
48 |
|
|
double &qualite_moyenne_2D,double &qualite_ecart_type_2D,double &qualite_min_2D,double &qualite_max_2D,OT_HISTOGRAMME& histogramme_qualite_2D, |
49 |
|
|
double &qualite_moyenne_3D,double &qualite_ecart_type_3D,double &qualite_min_3D,double &qualite_max_3D,OT_HISTOGRAMME& histogramme_qualite_3D, |
50 |
|
|
double &taille_moyenne_2D,double &taille_ecart_type_2D,double &taille_min_2D,double &taille_max_2D,OT_HISTOGRAMME& histogramme_taille_2D, |
51 |
|
|
double &taille_moyenne_3D,double &taille_ecart_type_3D,double &taille_min_3D,double &taille_max_3D,OT_HISTOGRAMME& histogramme_taille_3D, |
52 |
|
|
double &volume, |
53 |
|
|
double &fraction_volumique); |
54 |
|
|
|
55 |
|
|
static int statistiques_fem_maillage(FEM_MAILLAGE *fem, |
56 |
|
|
BOITE_3D *boite_analyse, |
57 |
couturad |
926 |
TPL_MAP_ENTITE<MG_CG_FORME*> &tpl_map_forme, |
58 |
|
|
long &nb_element_2D,long &nb_element_3D, |
59 |
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, |
60 |
|
|
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, |
61 |
|
|
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, |
62 |
|
|
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, |
63 |
|
|
double &distortion_moyenne_2D,double &distortion_ecart_type_2D, double &distortion_min_2D, double &distortion_max_2D,OT_HISTOGRAMME& histogramme_distortion_2D, |
64 |
|
|
double &distortion_moyenne_3D,double &distortion_ecart_type_3D, double &distortion_min_3D, double &distortion_max_3D,OT_HISTOGRAMME& histogramme_distortion_3D, |
65 |
couturad |
926 |
double &volume, |
66 |
|
|
double &fraction_volumique); |
67 |
couturad |
982 |
|
68 |
|
|
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); |
69 |
couturad |
926 |
|
70 |
couturad |
951 |
protected: |
71 |
|
|
static double get_volume_mgcg_forme(MG_CG_FORME* forme,FEM_MAILLAGE *fem,BOITE_3D* boite_analyse); |
72 |
couturad |
982 |
static int appliquer_conditions_limites_plan(TPL_MAP_ENTITE<MG_FACE*> *plan, char *condition, double valeur,bool topo_sous_jacente); |
73 |
|
|
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); |
74 |
couturad |
951 |
}; |
75 |
|
|
|
76 |
couturad |
982 |
#endif |