MAGiC  V5.0
Mailleurs Automatiques de Géometries intégrés à la Cao
mstruct_ves.h
Aller à la documentation de ce fichier.
1 //####//------------------------------------------------------------
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_ves.h
15 //####//
16 //####//------------------------------------------------------------
17 //####//------------------------------------------------------------
18 //####// COPYRIGHT 2000-2024
19 //####// jeu 13 jun 2024 11:58:57 EDT
20 //####//------------------------------------------------------------
21 //####//------------------------------------------------------------
22 #ifndef _MSTRUCT_VES_
23 #define _MSTRUCT_VES_
24 #include <map>
25 #include <vector>
26 #include "tpl_map_entite.h"
27 #include "mstruct_groupe_forme.h"
28 #include "fem_solution.h"
29 #include "ot_parametres.h"
30 #include "ot_mathematique.h"
31 #include "mstruct_analyse.h"
32 #include "mstruct_ves_file.h"
33 class MG_VOLUME;
34 class MG_GESTIONNAIRE;
35 class MG_GEOMETRIE;
36 class MG_MAILLAGE;
37 class FEM_MAILLAGE;
38 class MG_CG_MODELE;
39 class MG_CG_ASSEMBLAGE;
41 class MG_CG_GROUPE_FORME;
42 
43 typedef void fonction_affiche(char *);
44 
46 {
47 
48 
49 public:
50  MSTRUCT_VES(class OT_PARAMETRES* param);
51  MSTRUCT_VES(char* fichier_ves);
52  virtual ~MSTRUCT_VES(void);
53  virtual MG_GESTIONNAIRE* get_mg_gestionnaire(void);
54  virtual void change_mg_gestionnaire(MG_GESTIONNAIRE* gest);
55  virtual MG_GEOMETRIE* get_mg_geometrie(void);
56  virtual void change_mg_geometrie(MG_GEOMETRIE* mg_geometrie);
57  virtual MG_CG_MODELE* get_mgcg_modele(void);
58  virtual void change_mgcg_modele(MG_CG_MODELE* mgcg_modele);
60  virtual void change_mgcg_assemblage(MG_CG_ASSEMBLAGE* mgcg_assemblage);
61  virtual MG_MAILLAGE* get_mg_maillage(void);
62  virtual void change_mg_maillage(MG_MAILLAGE* mg_maillage);
63  virtual FEM_MAILLAGE* get_fem_maillage(void);
64  virtual void change_fem_maillage(FEM_MAILLAGE* fem_maillage);
65 
66  virtual BOITE_3D get_boite3d_ves(void);
67  virtual void change_boite_3D_ves(BOITE_3D boite3D);
68 
69  virtual double get_precision(void);
70  virtual void change_precision(double precision);
71 
72  virtual double get_temps_geometrie(void);
73  virtual void change_temps_geometrie(double temps);
74  virtual double get_temps_materiau(void);
75  virtual void change_temps_materiau(double temps);
76  virtual double get_temps_carte(void);
77  virtual void change_temps_carte(double temps);
78  virtual double get_temps_maillage(void);
79  virtual void change_temps_maillage(double temps);
80  virtual double get_temps_fem_maillage(void);
81  virtual void change_temps_fem_maillage(double temps);
82  virtual double get_temps_etude(void);
83  virtual void change_temps_etude(double temps);
84  virtual double get_temps_calcul(void);
85  virtual void change_temps_calcul(double temps);
86  virtual double get_temps_analyse(void);
87  virtual void change_temps_analyse(double temps);
88 
89  virtual long get_nb_analyse(void);
90  virtual int ajouter_analyse(MSTRUCT_ANALYSE* analyse_ves);
91  virtual MSTRUCT_ANALYSE *get_analyse(std::string identifiant);
92  virtual MSTRUCT_ANALYSE *get_premiere_analyse(std::map<std::string,MSTRUCT_ANALYSE*>::iterator &it);
93  virtual MSTRUCT_ANALYSE *get_suivante_analyse(std::map<std::string,MSTRUCT_ANALYSE*>::iterator &it);
94  virtual int supprimer_analyse(std::string identifiant);
95  virtual int supprimer_tout_analyse(void);
96 
97  virtual int generer_geometrie(std::vector<OT_PARAMETRES*> &vector_params_geometrie);
98  virtual int generer_materiau(std::vector<OT_PARAMETRES*> &vector_params_materiau);
99  virtual int generer_carte(OT_PARAMETRES *param);
100  virtual int generer_maillage(OT_PARAMETRES *param,FCT_TAILLE_FEM_SOLUTION* carte);
101  virtual int generer_fem_maillage(OT_PARAMETRES *param);
102  virtual int generer_etude(OT_PARAMETRES *param);
103  virtual int generer_calcul(OT_PARAMETRES *param,char* param_aster,std::string nom_etude);
104  virtual int generer_post_traitement(std::vector<OT_PARAMETRES*> &vector_params_post_traitement);
105  virtual int generer_post_traitement(std::vector<OT_PARAMETRES*> &vector_params_post_traitement,MSTRUCT_VES_FILE *ves_sph,MSTRUCT_VES_FILE *ves_dev);
106  virtual 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);
107 
108  virtual int exporter_maillage_abaqus(char* dossier);
109 
110  virtual int enregistrer(char *fichier_ves,char* fichier_magic);
111  virtual int enregistrer(char *fichier_ves);
112 
113  virtual void active_affichage(fonction_affiche *fonc);
114  virtual void affiche(char *message);
115 
116 protected:
117 
118  int maill_struct(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int n, int m, int k);
126 
129 };
130 
131 
132 
133 #endif
virtual MG_CG_ASSEMBLAGE * get_mgcg_assemblage(void)
virtual int generer_maillage(OT_PARAMETRES *param, FCT_TAILLE_FEM_SOLUTION *carte)
virtual void change_temps_etude(double temps)
virtual MSTRUCT_ANALYSE * get_suivante_analyse(std::map< std::string, MSTRUCT_ANALYSE * >::iterator &it)
virtual double get_temps_geometrie(void)
fonction_affiche * fonc_affiche
Definition: mstruct_ves.h:128
virtual void change_mgcg_assemblage(MG_CG_ASSEMBLAGE *mgcg_assemblage)
virtual int generer_geometrie(std::vector< OT_PARAMETRES * > &vector_params_geometrie)
virtual void change_fem_maillage(FEM_MAILLAGE *fem_maillage)
virtual int generer_carte(OT_PARAMETRES *param)
virtual void change_temps_maillage(double temps)
virtual void affiche(char *message)
virtual MG_CG_MODELE * get_mgcg_modele(void)
virtual long get_nb_analyse(void)
virtual MSTRUCT_ANALYSE * get_premiere_analyse(std::map< std::string, MSTRUCT_ANALYSE * >::iterator &it)
virtual double get_precision(void)
virtual void change_precision(double precision)
virtual MSTRUCT_ANALYSE * get_analyse(std::string identifiant)
virtual double get_temps_materiau(void)
virtual void change_temps_geometrie(double temps)
MG_GESTIONNAIRE * m_mg_gestionnaire
Definition: mstruct_ves.h:120
virtual int ajouter_analyse(MSTRUCT_ANALYSE *analyse_ves)
virtual void active_affichage(fonction_affiche *fonc)
virtual void change_mg_maillage(MG_MAILLAGE *mg_maillage)
virtual double get_temps_fem_maillage(void)
virtual double get_temps_carte(void)
MG_CG_MODELE * m_mgcg_modele
Definition: mstruct_ves.h:121
virtual MG_MAILLAGE * get_mg_maillage(void)
virtual int supprimer_tout_analyse(void)
virtual int generer_fem_maillage(OT_PARAMETRES *param)
virtual void change_temps_carte(double temps)
FEM_MAILLAGE * m_fem_maillage
Definition: mstruct_ves.h:125
virtual int generer_etude(OT_PARAMETRES *param)
virtual MG_GEOMETRIE * get_mg_geometrie(void)
virtual double get_temps_etude(void)
MSTRUCT_VES(class OT_PARAMETRES *param)
Definition: mstruct_ves.cpp:76
virtual MG_GESTIONNAIRE * get_mg_gestionnaire(void)
virtual void change_mg_geometrie(MG_GEOMETRIE *mg_geometrie)
virtual void change_temps_calcul(double temps)
virtual BOITE_3D get_boite3d_ves(void)
virtual double get_temps_calcul(void)
MG_GEOMETRIE * m_mg_geometrie
Definition: mstruct_ves.h:123
virtual double get_temps_maillage(void)
virtual void change_temps_materiau(double temps)
virtual int generer_materiau(std::vector< OT_PARAMETRES * > &vector_params_materiau)
virtual int generer_calcul(OT_PARAMETRES *param, char *param_aster, std::string nom_etude)
MG_MAILLAGE * m_mg_maillage
Definition: mstruct_ves.h:124
int affichageactif
Definition: mstruct_ves.h:127
class MSTRUCT_VES_FILE * m_ves_file
Definition: mstruct_ves.h:119
int maill_struct(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int n, int m, int k)
virtual int generer_post_traitement(std::vector< OT_PARAMETRES * > &vector_params_post_traitement)
virtual void change_boite_3D_ves(BOITE_3D boite3D)
virtual double get_temps_analyse(void)
virtual void change_temps_fem_maillage(double temps)
virtual ~MSTRUCT_VES(void)
virtual int supprimer_analyse(std::string identifiant)
virtual int enregistrer(char *fichier_ves, char *fichier_magic)
virtual void change_mgcg_modele(MG_CG_MODELE *mgcg_modele)
MG_CG_ASSEMBLAGE * m_mgcg_assemblage
Definition: mstruct_ves.h:122
virtual FEM_MAILLAGE * get_fem_maillage(void)
virtual void change_mg_gestionnaire(MG_GESTIONNAIRE *gest)
virtual int exporter_maillage_abaqus(char *dossier)
virtual void change_temps_analyse(double temps)
void fonction_affiche(char *)
Definition: mstruct_ves.h:43
#define m(i, j)