ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/microstructure/src/mstruct_analyse.h
Revision: 919
Committed: Tue Mar 6 17:51:54 2018 UTC (7 years, 2 months ago) by couturad
Content type: text/plain
File size: 12007 byte(s)
Log Message:
Correction des bugs lors de l'execution en mode RELWITHDEBINFO.
Ajouts de fichiers pour la librairie MICROSTRUCTURE

File Contents

# User Rev Content
1 couturad 919 #ifndef _MSTRUCT_ANALYSE_
2     #define _MSTRUCT_ANALYSE_
3     #include "fem_solution.h"
4     #include "ot_tenseur.h"
5     #include "ot_mathematique.h"
6     #include "ot_boite_3d.h"
7     #include "mstruct_groupe_forme.h"
8     #include "mg_maillage.h"
9     #include "fem_maillage.h"
10     namespace MICROSTRUCTURE
11     {
12     class ANALYSE
13     {
14     public:
15     ANALYSE(std::string identifiant,
16     GROUPE_FORME* groupe_forme=NULL,
17     BOITE_3D* boite_3d=NULL);
18     ~ANALYSE(void);
19     std::string get_identifiant(void);
20     void change_identifiant(std::string identifiant);
21     virtual void change_boite_analyse(BOITE_3D* boite_3d);
22     virtual BOITE_3D* get_boite_analyse(void);
23     virtual void change_groupe_forme(GROUPE_FORME* groupe_forme);
24     virtual GROUPE_FORME* get_groupe_forme(void);
25     virtual void executer(void)=0;
26     virtual void enregistrer(std::ostream& o);
27     virtual void ouvrir(std::istream& in);
28     protected:
29     std::string m_identifiant;
30     BOITE_3D* m_boite_analyse;
31     GROUPE_FORME* m_groupe_forme;
32     };
33    
34     // class ANALYSE_CHAMP: public ANALYSE
35     // {
36     // public:
37     // ANALYSE_CHAMP(std::string identifiant);
38     // ANALYSE_CHAMP(std::string identifiant,
39     // FEM_SOLUTION* fem_solution,
40     // double *largeur_colonne,
41     // GROUPE_FORME* groupe_forme=NULL,
42     // BOITE_3D* boite_3d=NULL);
43     // ~ANALYSE_CHAMP(void);
44     // virtual void change_fem_solution(FEM_SOLUTION* fem_solution);
45     // virtual FEM_SOLUTION* get_fem_solution(void);
46     // virtual int get_nb_champ(void);
47     // virtual OT_TENSEUR* get_tenseur_moyenne(void);
48     // virtual OT_TENSEUR* get_tenseur_ecart_type(void);
49     // virtual OT_TENSEUR* get_tenseur_min(void);
50     // virtual OT_TENSEUR* get_tenseur_max(void);
51     // virtual OT_HISTOGRAMME* get_distribution(int num_champ);
52     // virtual void executer(void)=0;
53     // virtual void enregistrer(std::ostream& o)=0;
54     // virtual void ouvrir(std::istream& in)=0;
55     // protected:
56     // FEM_SOLUTION* m_fem_solution;
57     // int nb_champ;
58     // OT_TENSEUR* m_tenseur_moyenne;
59     // OT_TENSEUR* m_tenseur_ecart_type;
60     // OT_TENSEUR* m_tenseur_min;
61     // OT_TENSEUR* m_tenseur_max;
62     // OT_HISTOGRAMME* m_tab_histogramme;
63     // };
64     //
65     // class ANALYSE_ORIENTATION: public ANALYSE
66     // {
67     // public:
68     // ANALYSE_ORIENTATION(std::string identifiant);
69     // ANALYSE_ORIENTATION(std::string identifiant,
70     // int ordre_tenseur,
71     // GROUPE_FORME* groupe_forme,
72     // BOITE_3D* boite_3d=NULL);
73     // ~ANALYSE_ORIENTATION(void);
74     // virtual int get_ordre_tenseur(void);
75     // virtual OT_TENSEUR* get_tenseur_moyenne(void);
76     // virtual OT_TENSEUR* get_tenseur_ecart_type(void);
77     // virtual OT_TENSEUR* get_tenseur_min(void);
78     // virtual OT_TENSEUR* get_tenseur_max(void);
79     // virtual OT_HISTOGRAMME* get_distribution(int num);
80     // virtual void executer(void);
81     // virtual void enregistrer(std::ostream& o);
82     // virtual void ouvrir(std::istream& in);
83     // protected:
84     // int m_ordre_tenseur;
85     // OT_TENSEUR* m_tenseur_moyenne;
86     // OT_TENSEUR* m_tenseur_ecart_type;
87     // OT_TENSEUR* m_tenseur_min;
88     // OT_TENSEUR* m_tenseur_max;
89     // OT_HISTOGRAMME* m_tab_histogramme;
90     // };
91     //
92     // class ANALYSE_CAO: public ANALYSE
93     // {
94     // public:
95     // ANALYSE_CAO(std::string identifiant);
96     // ANALYSE_CAO(std::string identifiant,GROUPE_FORME* groupe_forme);
97     // ~ANALYSE_CAO(void);
98     // virtual double get_volume_forme_min(void);
99     // virtual double get_volume_forme_max(void);
100     // virtual double get_volume_forme_moyenne(void);
101     // virtual double get_volume_forme_ecart_type(void);
102     // virtual OT_HISTOGRAMME* get_distribution_volume_forme(void);
103     // virtual double get_aire_forme_min(void);
104     // virtual double get_aire_forme_max(void);
105     // virtual double get_aire_forme_moyenne(void);
106     // virtual double get_aire_forme_ecart_type(void);
107     // virtual OT_HISTOGRAMME* get_distribution_aire_forme(void);
108     // virtual double get_perimetre_forme_min(void);
109     // virtual double get_perimetre_forme_max(void);
110     // virtual double get_perimetre_forme_moyenne(void);
111     // virtual double get_perimetre_forme_ecart_type(void);
112     // virtual OT_HISTOGRAMME* get_distribution_perimetre_forme(void);
113     // virtual double get_volume_groupe_forme(void);
114     // virtual double get_aire_groupe_forme(void);
115     // virtual double get_perimetre_groupe_forme(void);
116     // virtual void executer(void);
117     // virtual void enregistrer(std::ostream& o);
118     // virtual void ouvrir(std::istream& in);
119     // protected:
120     // double m_volume_forme_min;
121     // double m_volume_forme_max;
122     // double m_volume_forme_moyenne;
123     // double m_volume_forme_ecart_type;
124     // OT_HISTOGRAMME* m_volume_forme_histogramme;
125     // double m_aire_forme_min;
126     // double m_aire_forme_max;
127     // double m_aire_forme_moyenne;
128     // double m_aire_forme_ecart_type;
129     // OT_HISTOGRAMME* m_aire_forme_histogramme;
130     // double m_perimetre_forme_min;
131     // double m_perimetre_forme_max;
132     // double m_perimetre_forme_moyenne;
133     // double m_perimetre_forme_ecart_type;
134     // OT_HISTOGRAMME* m_perimetre_forme_histogramme;
135     // double m_volume_groupe_forme;
136     // double m_aire_groupe_forme;
137     // double m_perimetre_groupe_forme;
138     // };
139     //
140     // class ANALYSE_CAO_INCLUSION_CYLINDRE: public ANALYSE_CAO,public ANALYSE_ORIENTATION
141     // {
142     // public:
143     // ANALYSE_CAO_INCLUSION_CYLINDRE(std::string identifiant);
144     // ANALYSE_CAO_INCLUSION_CYLINDRE(std::string identifiant,GROUPE_FORME* groupe_forme);
145     // ~ANALYSE_CAO_INCLUSION_CYLINDRE(void);
146     // virtual double get_rayon_min(void);
147     // virtual double get_rayon_max(void);
148     // virtual double get_rayon_moyenne(void);
149     // virtual double get_rayon_ecart_type(void);
150     // virtual OT_HISTOGRAMME* get_distribution_rayon(void);
151     // virtual double get_longueur_min(void);
152     // virtual double get_longueur_max(void);
153     // virtual double get_longueur_moyenne(void);
154     // virtual double get_longueur_ecart_type(void);
155     // virtual OT_HISTOGRAMME* get_distribution_longueur(void);
156     // virtual void executer(void);
157     // virtual void enregistrer(std::ostream& o);
158     // virtual void ouvrir(std::istream& in);
159     // protected:
160     // double m_rayon_min;
161     // double m_rayon_max;
162     // double m_rayon_moyenne;
163     // double m_rayon_ecart_type;
164     // OT_HISTOGRAMME* m_rayon_histogramme;
165     // double m_longueur_min;
166     // double m_longueur_max;
167     // double m_longueur_moyenne;
168     // double m_longueur_ecart_type;
169     // OT_HISTOGRAMME* m_longueur_histogramme;
170     // };
171     //
172     // class ANALYSE_MG_MAILLAGE: public ANALYSE
173     // {
174     // public:
175     // ANALYSE_MG_MAILLAGE(std::string identifiant);
176     // ANALYSE_MG_MAILLAGE(std::string identifiant,
177     // MG_MAILLAGE* maillage,
178     // double largeur_colonne_qualite_2D,
179     // double largeur_colonne_taille_2D,
180     // double largeur_colonne_qualite_3D,
181     // double largeur_colonne_taille_3D,
182     // GROUPE_FORME* groupe_forme=NULL,
183     // BOITE_3D* boite_3d=NULL);
184     // ~ANALYSE_MG_MAILLAGE(void);
185     // virtual void change_maillage(MG_MAILLAGE* maillage);
186     // virtual MG_MAILLAGE* get_maillage(void);
187     // virtual double get_2D_qualite_min(void);
188     // virtual double get_2D_qualite_max(void);
189     // virtual double get_2D_qualite_moyenne(void);
190     // virtual double get_2D_qualite_ecart_type(void);
191     // virtual OT_HISTOGRAMME* get_2D_distribution_qualite(void);
192     // virtual double get_3D_qualite_min(void);
193     // virtual double get_3D_qualite_max(void);
194     // virtual double get_3D_qualite_moyenne(void);
195     // virtual double get_3D_qualite_ecart_type(void);
196     // virtual OT_HISTOGRAMME* get_3D_distribution_qualite(void);
197     // virtual double get_2D_taille_min(void);
198     // virtual double get_2D_taille_max(void);
199     // virtual double get_2D_taille_moyenne(void);
200     // virtual double get_2D_taille_ecart_type(void);
201     // virtual OT_HISTOGRAMME* get_2D_distribution_taille(void);
202     // virtual double get_3D_taille_min(void);
203     // virtual double get_3D_taille_max(void);
204     // virtual double get_3D_taille_moyenne(void);
205     // virtual double get_3D_taille_ecart_type(void);
206     // virtual OT_HISTOGRAMME* get_3D_distribution_taille(void);
207     // virtual double get_volume(void);
208     // virtual void executer(void);
209     // virtual void enregistrer(std::ostream& o);
210     // virtual void ouvrir(std::istream& in);
211     // protected:
212     // MG_MAILLAGE* m_maillage;
213     // double m_2D_qualite_min;
214     // double m_2D_qualite_max;
215     // double m_2D_qualite_moyenne;
216     // double m_2D_qualite_ecart_type;
217     // OT_HISTOGRAMME* m_2D_qualite_histogramme;
218     // double m_3D_qualite_min;
219     // double m_3D_qualite_max;
220     // double m_3D_qualite_moyenne;
221     // double m_3D_qualite_ecart_type;
222     // OT_HISTOGRAMME* m_3D_qualite_histogramme;
223     // double m_2D_taille_min;
224     // double m_2D_taille_max;
225     // double m_2D_taille_moyenne;
226     // double m_2D_taille_ecart_type;
227     // OT_HISTOGRAMME* m_2D_taille_histogramme;
228     // double m_3D_taille_min;
229     // double m_3D_taille_max;
230     // double m_3D_taille_moyenne;
231     // double m_3D_taille_ecart_type;
232     // OT_HISTOGRAMME* m_3D_taille_histogramme;
233     // double m_volume;
234     // };
235     //
236     // class ANALYSE_FEM_MAILLAGE: public ANALYSE
237     // {
238     // public:
239     // ANALYSE_FEM_MAILLAGE(std::string identifiant);
240     // ANALYSE_FEM_MAILLAGE(std::string identifiant,
241     // FEM_MAILLAGE* maillage,
242     // double largeur_colonne_jacobien_2D,
243     // double largeur_colonne_distortion_2D,
244     // double largeur_colonne_jacobien_3D,
245     // double largeur_colonne_distortion_3D,
246     // GROUPE_FORME* groupe_forme=NULL,
247     // BOITE_3D* boite_3d=NULL);
248     // ~ANALYSE_FEM_MAILLAGE(void);
249     // virtual void change_maillage(FEM_MAILLAGE* maillage);
250     // virtual FEM_MAILLAGE* get_maillage(void);
251     // virtual double get_2D_jacobien_min(void);
252     // virtual double get_2D_jacobien_max(void);
253     // virtual double get_2D_jacobien_moyenne(void);
254     // virtual double get_2D_jacobien_ecart_type(void);
255     // virtual OT_HISTOGRAMME* get_2D_distribution_jacobien(void);
256     // virtual double get_3D_jacobien_min(void);
257     // virtual double get_3D_jacobien_max(void);
258     // virtual double get_3D_jacobien_moyenne(void);
259     // virtual double get_3D_jacobien_ecart_type(void);
260     // virtual OT_HISTOGRAMME* get_3D_distribution_jacobien(void);
261     // virtual double get_2D_distortion_min(void);
262     // virtual double get_2D_distortion_max(void);
263     // virtual double get_2D_distortion_moyenne(void);
264     // virtual double get_2D_distortion_ecart_type(void);
265     // virtual OT_HISTOGRAMME* get_2D_distribution_distortion(void);
266     // virtual double get_3D_distortion_min(void);
267     // virtual double get_3D_distortion_max(void);
268     // virtual double get_3D_distortion_moyenne(void);
269     // virtual double get_3D_distortion_ecart_type(void);
270     // virtual OT_HISTOGRAMME* get_3D_distribution_distortion(void);
271     // virtual double get_volume(void);
272     // virtual void executer(void);
273     // virtual void enregistrer(std::ostream& o);
274     // virtual void ouvrir(std::istream& in);
275     // protected:
276     // FEM_MAILLAGE* m_maillage;
277     // double m_2D_jacobien_min;
278     // double m_2D_jacobien_max;
279     // double m_2D_jacobien_moyenne;
280     // double m_2D_jacobien_ecart_type;
281     // OT_HISTOGRAMME* m_2D_jacobien_histogramme;
282     // double m_3D_jacobien_min;
283     // double m_3D_jacobien_max;
284     // double m_3D_jacobien_moyenne;
285     // double m_3D_jacobien_ecart_type;
286     // OT_HISTOGRAMME* m_3D_jacobien_histogramme;
287     // double m_2D_distortion_min;
288     // double m_2D_distortion_max;
289     // double m_2D_distortion_moyenne;
290     // double m_2D_distortion_ecart_type;
291     // OT_HISTOGRAMME* m_2D_distortion_histogramme;
292     // double m_3D_distortion_min;
293     // double m_3D_distortion_max;
294     // double m_3D_distortion_moyenne;
295     // double m_3D_distortion_ecart_type;
296     // OT_HISTOGRAMME* m_3D_distortion_histogramme;
297     // double m_volume;
298     // };
299    
300    
301    
302    
303     }
304     #endif