ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/REPOS_ERICCA/magic/lib/microstructure/src/ve_definition.cpp
Revision: 772
Committed: Fri Jan 15 21:16:39 2016 UTC (9 years, 3 months ago) by couturad
File size: 7935 byte(s)
Log Message:
Librairie microstructure:
    -> Ajout d'un fichier de parametres
    -> Ajout d'une procedure de creation d'un cube homogene
    -> Ajout d'une procedure de creation d'un cube avec une inclusion
    -> Ajout d'une procedure de maillage (lineaire/quadratique) du VER
    -> Ajout d'une procedure d'application des conditions limites
              -> Chargement purement spherique (deformations homogenes/contraintes homogenes)
              -> Chargement purement deviatorique (deformations homogenes/contraintes homogenes)
    -> Ajout d'une procedure d'homogeneisation
              -> Calcul du tenseur des deformations
              -> Calcul du tenseur des contraintes
              -> Calcul du module de compressibilite apparent
              -> Calcul du module de cisaillement apparent

Librairie geometrie:
    -> Ajout d'une procedure de calcul du volume d'une mg_primitive

Application microstructure.exe:
    -> Ajout d'une commande pour generer le fichier de parametres du VER
    -> Ajout d'une commande pour construire le VER a partir du fichier de parametres

File Contents

# User Rev Content
1 couturad 772 #include "ve_definition.h"
2    
3     void ini_param_VER(OT_PARAMETRES* param)
4     {
5     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_nom_fichier_MAGiC],"ver.magic",OT_PARAMETRES::STRING,"Proprietes IO VER : Nom fichier MAGiC");
6     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_Bool_export_STEP],0,OT_PARAMETRES::DOUBLE,"Proprietes IO VER : Exportation fichier STEP");
7     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_nom_fichier_STEP_BREP],"ver",OT_PARAMETRES::STRING,"Proprietes IO VER : Nom fichier STEP");
8     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_Bool_fusion],1,OT_PARAMETRES::DOUBLE,"Proprietes IO VER : Fusion entites communes");
9     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_Bool_import_STL],1,OT_PARAMETRES::DOUBLE,"Proprietes IO VER : Importation triangulation OpenCascade");
10     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_STL_eps],0.1,OT_PARAMETRES::DOUBLE,"Proprietes IO VER : Precision triangulation OpenCascade");
11     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_nom_fichier_CARTE],"ver.ctt",OT_PARAMETRES::STRING,"Proprietes IO VER : Nom fichier CARTE taille");
12     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_nom_fichier_ETUDE],"ver",OT_PARAMETRES::STRING,"Proprietes IO VER : Nom fichier ETUDE");
13     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_nom_fichier_param_ASTER],"param_aster.txt",OT_PARAMETRES::STRING,"Proprietes IO VER : Nom fichier parametres ASTER");
14     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_IO_code_resu],"11111111",OT_PARAMETRES::STRING,"Proprietes IO VER : Code resolution ASTER");
15     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_Dim_precision],1.0e-06,OT_PARAMETRES::DOUBLE,"Proprietes VER : Precision");
16     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_Type],VE_TYPE_VER::HOMOGENE,OT_PARAMETRES::DOUBLE,"Proprietes VER : Type VER : {HOMOGENE=0, UNE_INCLUSION=1, ALEATOIRE=2}");
17     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_Dim_longueur_x],1.0,OT_PARAMETRES::DOUBLE,"Proprietes VER : Longueur x (DEFAUT=1) ");
18     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_Dim_longueur_y],1.0,OT_PARAMETRES::DOUBLE,"Proprietes VER : Longueur y (DEFAUT=1) ");
19     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_Dim_longueur_z],1.0,OT_PARAMETRES::DOUBLE,"Proprietes VER : Longueur z (DEFAUT=1) ");
20     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Type_INCLUSION],VE_TYPE_INCLUSION::BOITE,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Type inclusion : {BOITE=0, SPHERE=1, CYLINDRE=2}");
21     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_pourcentage_volumique],10.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Pourcentage volumique inclusion");
22     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_nb_max],500,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Nombre maximal inclusion");
23     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_rayon],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne rayon : {SPHERE, CYLINDRE}");
24     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_rayon],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type rayon : {SPHERE, CYLINDRE}");
25     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_longueur_cylindre],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne longueur cylindre : {CYLINDRE}");
26     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_longueur_cylindre],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type longueur cylindre : {CYLINDRE}");
27     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_longitude_cylindre],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne longitude cylindre : {CYLINDRE}");
28     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_longitude_cylindre],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type longitude cylindre : {CYLINDRE}");
29     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_latitude_cylindre],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne latitude cylindre : {CYLINDRE}");
30     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_latitude_cylindre],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type latitude cylindre : {CYLINDRE}");
31     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_longueur_x],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne longueur x : {BOITE}");
32     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_longueur_x],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type longueur x : {BOITE}");
33     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_longueur_y],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne longueur y : {BOITE}");
34     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_longueur_y],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type longueur y : {BOITE}");
35     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_longueur_z],0.05,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne longueur z : {BOITE}");
36     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_longueur_z],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type longueur z : {BOITE}");
37     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_nu],0.3,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne coefficient Poisson");
38     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_nu],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type coefficient Poisson");
39     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_mu_Em],69e9,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Moyenne module Young");
40     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_INCLU_Dim_sigma_Em],0.0,OT_PARAMETRES::DOUBLE,"Proprietes INCLUSION VER : Ecart-type module Young");
41     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MATRICE_Dim_mu_nu],0.3,OT_PARAMETRES::DOUBLE,"Proprietes MATRICE VER : Moyenne coefficient Poisson");
42     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MATRICE_Dim_sigma_nu],0.0,OT_PARAMETRES::DOUBLE,"Proprietes MATRICE VER : Ecart-type coefficient Poisson");
43     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MATRICE_Dim_mu_Em],69e9,OT_PARAMETRES::DOUBLE,"Proprietes MATRICE VER : Moyenne module Young");
44     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MATRICE_Dim_sigma_Em],0.0,OT_PARAMETRES::DOUBLE,"Proprietes MATRICE VER : Ecart-type module Young");
45     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MAIL_Bool_Mailler],1,OT_PARAMETRES::DOUBLE,"Proprietes MAILLAGE VER : Mailler VER");
46     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MAIL_Type_ELEMENT],0,OT_PARAMETRES::DOUBLE,"Proprietes MAILLAGE VER : Type ELEMENT : {TETRA=0, HEXA=1}");
47     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_MAIL_Dim_degre_maillage],2,OT_PARAMETRES::DOUBLE,"Proprietes MAILLAGE VER : Degre maillage : {LINEAIRE=1, QUADRATIQUE=2}");
48     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_CARTE_Dim_ecart_nodal],0.1,OT_PARAMETRES::DOUBLE,"Proprietes MAILLAGE VER : Ecart nodal");
49     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_CARTE_Type],0,OT_PARAMETRES::DOUBLE,"Proprietes CARTE MAILLAGE VER : Type CARTE : {CONSTANTE=0, COURBURE=1}");
50     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_CARTE_Dim_fechantillonnage],20,OT_PARAMETRES::DOUBLE,"Proprietes CARTE MAILLAGE VER : Nombre echantillon entite");
51     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_CARTE_Dim_festimation],20,OT_PARAMETRES::DOUBLE,"Proprietes CARTE MAILLAGE VER : Nombre cellule dans une direction pour grille virtuelle");
52     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_CL_Type],VE_TYPE_CL::DEFORMATION_HOMOGENE,OT_PARAMETRES::DOUBLE,"Proprietes CONDITIONS LIMITES VER : Type conditions limites : {DEFORMATION HOMOGENE, CONTRAINTE_HOMOGENE, GRADIENT TEMPERATURE HOMOGENE, FLUX CHALEUR HOMOGENE}");
53     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_CL_CHARGEMENT_type],VE_TYPE_CHARGEMENT::SPHERIQUE,OT_PARAMETRES::DOUBLE,"Proprietes CONDITIONS LIMITES VER CHARGEMENT : Type chargement : {SPHERIQUE, DEVIATORIQUE}");
54     param->ajouter(VE_PARAM_CHAR[VE_PARAM::VE_VER_CL_Dim_valeur],0.0001,OT_PARAMETRES::DOUBLE,"Proprietes CONDITIONS LIMITES VER : Valeur conditions limites");
55     }
56    
57