01 Avril 2005 By LPX  
 

Néant

 

Added Files :

Removed Files :

 

 

Transfert des variables de VolumeMetaElement vers MechanicalVolumeIntegrationMethods et dérivées :

nb : les variables suivies du suffixe "_d" perdent leur suffixe au passage à la MechanicalVolumeIntegrationMethods (ce qui était deja le cas des passages à travers les fonctions)

Integrators (MtSfIntegratorTemplate<DIM> *) :

Variable :
Destinations :
deviatoricSfIntegrator MechanicalVolumeIntegrationMethods
volumicSfIntegrator

SriCauchyMechVolIntegMeth
SriPrCauchyMechVolIntegMeth

   

Matrices jacobiennes et inverses (OEMTK::Matr3 *) :

Variable :
Destinations :
   
JInvInitial_d Pk2MechVolIntegMeth
J1_v SriCauchyMechVolIntegMeth
SriPrCauchyMechVolIntegMeth
J0inv_v SriCauchyMechVolIntegMeth
SriPrCauchyMechVolIntegMeth
   

 

Déterminant de Jacobien (double *) :

Variable :
Destinations :
detJInitial_d MechanicalVolumeIntegrationMethods
   

GpStates (MechanicalGpState ** - ThermalGpState ** - TmGpState **)
GkStates (MechanicalGpkState **)
GpcState(MechanicalGpcState **) :

Variable :
Destinations :
GPMMidC_d ConsPk2MechVolIntegMeth
GKMidC_d ConsPk2MechVolIntegMeth
   

Ajout dans les classes MechanicalVolumeIntegrationMethods (& dérivées) des fonctions :

- virtual size_t meminfo();
- virtual void allocate( MtShapeFunction &mechanicalSF, VolumeElShcuts &elementShcut, NbIntegrationPoints npd, NbIntegrationPoints npv);
- virtual void initialise(double *detJ, OEMTK::Matr3 *J1);
- virtual void fillGaussValues(const std::vector<VEC> &Co, VolumeElShcuts &elementShcut, double *detJ, OEMTK::Matr3 *J1, double *detJ_v);
- virtual void copyGpValues();
// Temporaire A supprimer au + vite
- MtSfIntegratorTemplate<DIM> &getDeviatoricSfIntegrator() const;
- virtual MtSfIntegratorTemplate<DIM> &getVolumicSfIntegrator() const;
// FIN de Temporaire A supprimer au + vite
// gestion des erreurs
- void handleNegativeJacobian(VolumeElShcuts &elementShcut) const;
- void handleNegativeRadius(VolumeElShcuts &elementShcut) const;
// Calcul des temp et grad aux pt de gauss mechaniques :

La gestion des erreurs doit être intégrée dans le mtSfIntegrator (apres instanciation en double template selon dimSpace & dimSmoothField)

Les fonctions getDeviatoricSfIntegrator & getVolumicSfIntegrator doivent être supprimées dès que possible (dès que la classe gerera toutes ses valeurs)

Effets de bords :

- Ajout des fonctions suivantes au VolumeMetaElement (d'ici à ce que cela disparaisse)
virtual NbIntegrationPoints getNbDevIntegrationPoints();
virtual NbIntegrationPoints getNbVolIntegrationPoints();

- Calcul du pas de temps critique explicite se fait soit sur le point de gauss volumique (lorsqu'il existe) soit sur tous les points de gauss déviatoriques lorsque l'intégrateur volumique n'existe pas (std & pk2).
Des optimisations ont étés testées sans succès (to be continued).

 

Added Files :

Removed Files :

Added tests :

 

 

Back to Metafor web server
created :30 mars 2005   modified : 01 Avril 2005
contact :L.Papeleux@ulg.ac.be