ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/microstructure/src/mstruct_ves.h
Revision: 1029
Committed: Fri Jul 12 19:34:50 2019 UTC (5 years, 10 months ago) by couturad
Content type: text/plain
File size: 4283 byte(s)
Log Message:
Parralelisation des calculs des microstructures a particules

File Contents

# User Rev Content
1 couturad 919 #ifndef _MSTRUCT_VES_
2     #define _MSTRUCT_VES_
3     #include <map>
4     #include <vector>
5     #include "tpl_map_entite.h"
6     #include "mstruct_groupe_forme.h"
7     #include "fem_solution.h"
8     #include "ot_parametres.h"
9     #include "ot_mathematique.h"
10 couturad 926 #include "mstruct_analyse.h"
11 couturad 968 #include "mstruct_ves_file.h"
12 couturad 919 class MG_VOLUME;
13     class MG_GESTIONNAIRE;
14     class MG_GEOMETRIE;
15     class MG_MAILLAGE;
16     class FEM_MAILLAGE;
17     class MG_CG_MODELE;
18     class MG_CG_ASSEMBLAGE;
19     class FCT_TAILLE_FEM_SOLUTION;
20 couturad 926 class MG_CG_GROUPE_FORME;
21 couturad 951
22     typedef void fonction_affiche(char *);
23    
24     class MSTRUCT_VES
25 couturad 919 {
26 couturad 951 public:
27 couturad 968
28 couturad 951 MSTRUCT_VES(void);
29     MSTRUCT_VES(char* fichier_ves);
30     ~MSTRUCT_VES(void);
31     MG_GESTIONNAIRE* get_mg_gestionnaire(void);
32     void change_mg_gestionnaire(MG_GESTIONNAIRE* gest);
33     MG_GEOMETRIE* get_mg_geometrie(void);
34     void change_mg_geometrie(MG_GEOMETRIE* mg_geometrie);
35     MG_CG_MODELE* get_mgcg_modele(void);
36     void change_mgcg_modele(MG_CG_MODELE* mgcg_modele);
37     MG_CG_ASSEMBLAGE* get_mgcg_assemblage(void);
38     void change_mgcg_assemblage(MG_CG_ASSEMBLAGE* mgcg_assemblage);
39     MG_MAILLAGE* get_mg_maillage(void);
40     void change_mg_maillage(MG_MAILLAGE* mg_maillage);
41     FEM_MAILLAGE* get_fem_maillage(void);
42     void change_fem_maillage(FEM_MAILLAGE* fem_maillage);
43 couturad 919
44 couturad 951 BOITE_3D get_boite3d_ves(void);
45     void change_boite_3D_ves(BOITE_3D boite3D);
46    
47     double get_precision(void);
48     void change_precision(double precision);
49    
50     double get_temps_geometrie(void);
51     void change_temps_geometrie(double temps);
52     double get_temps_materiau(void);
53     void change_temps_materiau(double temps);
54     double get_temps_carte(void);
55     void change_temps_carte(double temps);
56     double get_temps_maillage(void);
57     void change_temps_maillage(double temps);
58     double get_temps_fem_maillage(void);
59     void change_temps_fem_maillage(double temps);
60     double get_temps_etude(void);
61     void change_temps_etude(double temps);
62     double get_temps_calcul(void);
63     void change_temps_calcul(double temps);
64     double get_temps_analyse(void);
65     void change_temps_analyse(double temps);
66    
67     long get_nb_analyse(void);
68     int ajouter_analyse(MSTRUCT_ANALYSE* analyse_ves);
69     MSTRUCT_ANALYSE *get_analyse(std::string identifiant);
70     MSTRUCT_ANALYSE *get_premiere_analyse(std::map<std::string,MSTRUCT_ANALYSE*>::iterator &it);
71     MSTRUCT_ANALYSE *get_suivante_analyse(std::map<std::string,MSTRUCT_ANALYSE*>::iterator &it);
72     int supprimer_analyse(std::string identifiant);
73     int supprimer_tout_analyse(void);
74    
75     int generer_geometrie(std::vector<OT_PARAMETRES*> &vector_params_geometrie);
76     int generer_materiau(std::vector<OT_PARAMETRES*> &vector_params_materiau);
77     int generer_carte(OT_PARAMETRES *param);
78     int generer_maillage(OT_PARAMETRES *param,FCT_TAILLE_FEM_SOLUTION* carte);
79     int generer_fem_maillage(OT_PARAMETRES *param);
80     int generer_etude(OT_PARAMETRES *param);
81 couturad 968 int generer_calcul(OT_PARAMETRES *param,char* param_aster,std::string nom_etude);
82     int generer_post_traitement(std::vector<OT_PARAMETRES*> &vector_params_post_traitement);
83     int generer_post_traitement(std::vector<OT_PARAMETRES*> &vector_params_post_traitement,MSTRUCT_VES_FILE *ves_sph,MSTRUCT_VES_FILE *ves_dev);
84 couturad 971 int generer_post_traitement(std::vector<OT_PARAMETRES*> &vector_params_post_traitement,MSTRUCT_VES_FILE *ves_lambda_x,MSTRUCT_VES_FILE *ves_lambda_y,MSTRUCT_VES_FILE *ves_lambda_z);
85 couturad 951
86 couturad 968 int exporter_maillage_abaqus(char* dossier);
87 couturad 951
88     int enregistrer(char *fichier_ves,char* fichier_magic);
89     int enregistrer(char *fichier_ves);
90    
91     void active_affichage(fonction_affiche *fonc);
92     void affiche(char *message);
93    
94     protected:
95    
96 couturad 982 // int appliquer_conditions_limites_plan(TPL_MAP_ENTITE<MG_FACE*> *plan, char *condition, double valeur,bool topo_sous_jacente);
97     // 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);
98 couturad 1029 int maill_struct(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int n, int m, int k);
99 couturad 951 class MSTRUCT_VES_FILE* m_ves_file;
100     MG_GESTIONNAIRE* m_mg_gestionnaire;
101     MG_CG_MODELE* m_mgcg_modele;
102     MG_CG_ASSEMBLAGE* m_mgcg_assemblage;
103     MG_GEOMETRIE* m_mg_geometrie;
104     MG_MAILLAGE *m_mg_maillage;
105     FEM_MAILLAGE *m_fem_maillage;
106 couturad 926
107 couturad 951 int affichageactif;
108     fonction_affiche *fonc_affiche;
109     };
110 couturad 919
111    
112 couturad 951
113 couturad 968 #endif