Download poudre5.dgibi

Back to the list

* fichier :  poudre5.dgibi
debproc charmeca tapas*'TABLE'  ttt*'FLOTTANT';
mata= tapas.'MA_TABLE' ;
pres1 = mata . 'CHAMPPRES';evpres= mata.'EVOLPRES';
xx = evpres extr 'ABSC' ; yy = evpres extr 'ORDO';
mo1= mata.'MODPRES'; 
coefp= ipol ttt  xx yy;
pres2= pres1 * coefp;
fpres= pressi massif   mo1  pres2 ;
tja=table;
tja.'ADDI_SECOND'=fpres;
finproc tja;



*
******************************************************************
*                                                                *
*                       Cylindre de poudre                       *
*                                                                *
*   Programme test numero 5 de la loi poudre_A - le 14/03/1997   *
*                                                                *
*                        Laurent Sanchez                         *
*                                                                *
******************************************************************
*   loi a 3 parametres log A 
*   Un cylindre de poudre seul en TA6V est densifie.                            
*   Simulation d'un essai isotrope
*   La densite initiale de la poudre est uniforme.     
*   Calcul avec Gdes Rotations, Gdes deformations, Pression  
*   Suiveuse, log A & les vrais coefficients thermiques, New E
*   ATTENTION : PRG fonctionnant avec k2001
*               utilation de POUDRE_A : loi a 3 parametres
*   Le maillage est regulier en Q8.
*
OPTION DIME 2 ELEM QUA8 MODE AXIS ;
*
*
******************************************************************
*                                                                *
*    Maillage                                                    *
*                                                                *
******************************************************************
*
*
*    Parametres du maillage en mm
*
rayon_1 = 2.0 ;
haute_1 = 2.0 ;
*
*
*    Definition des coordonnees des points
*
xa00 = 0.0 ;
ya00 = 0.0 ;
*
xa01 = rayon_1 ;
ya01 = ya00 ;
*
xa02 = xa01 ;
ya02 = ya01 + haute_1 ;
*
xa03 = 0.0 ;
ya03 = ya02 ;
*
*
*    Definition des points
*
a00 = xa00 ya00 ;
a01 = xa01 ya01 ;
a02 = xa02 ya02 ;
a03 = xa03 ya03 ;
*
*
*    Definition du nombre d'elements
*
nba00a01 = 1 ;
nba01a02 = 1 ;
nba02a03 = 1 ;
nba03a00 = 1 ;
*
*
*    Definition des lignes
*
la00a01 = DROI nba00a01 a00 a01 ;
la01a02 = DROI nba01a02 a01 a02 ;
la02a03 = DROI nba02a03 a02 a03 ;
la03a00 = DROI nba03a00 a03 a00 ;
*
*
*    Definition des surfaces
*
elmat1 = SURF ( la00a01 ET la01a02 ET la02a03 ET la03a00 )
 PLAN COUL bleu ;
*
piece_1 = elmat1 ;
tot     = piece_1 ;
*
*
******************************************************************
*                                                                *
*    Contour exterieur et symetrie                               *
*                                                                *
******************************************************************
*
*
l_ext = la01a02 ET la02a03 ;
*
l_sym = la00a01 ;
*
*TRAC l_ext ;
*TRAC l_sym ;
TITR 'Maillage regulier en Q8 d un quart de piece: tot' ; 
*TRAC tot ;
*
*                                                                         
*****************************************************************       
*                                                               *        
*    Conditions de l'essai                                      *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
T0tempe = 800. ;                                                        
T1tempe = 800. ;                                                        
T2tempe = 800. ;                                                        
T3tempe = 800. ;                                                        
*                                                                         
T0temps =   0. ;                                                          
T1temps = 600. ;                                                       
T2temps = T1temps + 600. ;                                             
T3temps = T2temps + 600. ;                                             
*                                                                         
*                                                                         
*****************************************************************       
*                                                               *        
*    Champ-point de temperature                                 *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
T0CHTEM  = MANU 'CHPO' tot 1 'T' T0tempe ;                               
*                                                                         
clth0001 = BLOQ 'T' l_ext ;                                             
p_bloth1 = DEPI clth0001 1. ;                                           
p_temps1 = PROG T0temps T1temps T2temps T3temps ;                       
p_theta1 = PROG T0tempe T1tempe T2tempe T3tempe ;                       
ev_ther1 = EVOL MANU TEMPS p_temps1 'T' p_theta1 ;                      
*DESS ev_ther1 TITR 'Evolution du chargement en temperature (C)' ;      
ch_ther1 = CHAR 'TIMP' p_bloth1 ev_ther1 ;                              
*                                                                         
*                                                                         
*****************************************************************       
*                                                               *        
*    Fichier Materiau Mecanique - Poudre TA6V                   *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
p1model = MODE piece_1 MECANIQUE ELASTIQUE VISCOPLASTIQUE               
 POUDRE_A CONS DEUX ;                                                   
*
*                                                                         
V1YOUN  = 76.0e+03 ;                                                    
V1NU    = 0.33 ;                                                           
V1ALPHA = 1.06e-5 ;                                                    
*                                                                         
V1logA  = -9.28 ;                                                     
V1N     = 3.04 ;                                                           
V1QSRT  = 0. ;                                                           
*
V1RHOR  = 0.70 ;                                                         
V1F0    = 0.1627 ;                                                         
V1F1    = 0. ;                                                             
V1F2    = 0.8743 ;                                                         
V1F3    = 0. ;                                                             
V1F4    = 2. ;                                                             
V1F5    = 0.66 ;                                                           
V1C0    = 1.9325 ;                                                         
V1C1    = 0. ;                                                             
V1C2    = 0.6013 ;                                                         
V1C3    = 0. ;                                                             
V1C4    = 0. ;                                                             
V1C5    = 50. ;                                                            
*                                                                         
*                                                                         
p1mater = MATER p1model YOUN V1YOUN NU V1NU ALPHA V1ALPHA             
 A V1logA N V1N QSRT V1QSRT F0 V1F0 F1 V1F1 F2 V1F2 F3 V1F3           
 F4 V1F4 F5 V1F5 C0 V1C0 C1 V1C1 C2 V1C2 C3 V1C3 C4 V1C4                
 C5 V1C5 RHOR V1RHOR ;                                                  
*                                                                         
*                                                                         
*****************************************************************       
*                                                               *        
*    Fichier Materiau Thermique - Poudre TA6V                   *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
p2model = MODE piece_1 THERMIQUE ISOTROPE CONS UN ;                     
*                                                                         
V2C     = 845. ;                                                            
V2K     = 18.0e-3 ;                                                         
V2RHO   = 4.0e-6 ;                                                        
*
*                                                                         
p2mater = MATER p2model 'C' V2C 'K' V2K 'RHO' V2RHO ;                   
*                                                                         
*                                                                         
*****************************************************************       
*                                                               *        
*    Chargement                                                 *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
p0bloca  = BLOQ UZ l_sym ;                                               
p_bloca  = p0bloca ;                                                     
*                                                                         
T0pres   = 100. ;                                                         
T1pres   = 100. ;                                                         
T2pres   = 100. ;                                                          
T3pres   = 100. ;                                                          
*                                                                         
li_temps = PROG T0temps T1temps T2temps T3temps ;                       
li_pres  = PROG T0pres T1pres T2pres T3pres ;                            
ev_pres  = EVOL MANU TEMPS li_temps PRES li_pres ;                       
*DESS ev_pres TITR 'Evolution du chargement en pression (MPa)' ;        
*                                                                         
p_force  = MANU 'CHPO' l_ext 1 'P' 1.0 ; 
mata= table ;mata.'MODPRES' = p1model; 
mata.'CHAMPPRES'= p_force; mata.'EVOLPRES' = ev_pres;

                                
*                                                                         
*p_charg  = CHAR 'PSUI' p_force ev_pres ;                                 
*                                                                         
*                                                                         
*****************************************************************       
*                                                               *        
*    Calcul                                                     *        
*                                                               *        
*****************************************************************       
*                                                                         
*                                                                         
p_model = p1model ET p2model ;                    
p_mater = p1mater ET p2mater ;                    
*                                                                         
*                                                                         
TAB1                         = TABLE ;                                          
TAB1 . 'TEMPERATURES'        = TABLE ;                                         
TAB1 . 'TEMPERATURES' . 0    = T0CHTEM ;                                   
TAB1 . 'CHARGEMENT'          =  ch_ther1  ;                           
TAB1 . 'MODELE'              = p_model ;                                        
TAB1 . 'CARACTERISTIQUES'    = p_mater ;                                   
TAB1 . 'BLOCAGES_MECANIQUES' = p_bloca ;                                
TAB1 . 'BLOCAGES_THERMIQUES' = clth0001 ;                               
*                                                                               
TAB1 . 'TEMPS_CALCULES'      = PROG 0. 50. PAS 50. 600. ;            
*                                                                         
TAB1 . 'TEMPS_SAUVES'        = PROG 0. 600. ;
*                                                                         
TAB1 . 'MAXITERATION'        = 169 ;                                           
TAB1 . 'MAXISOUSPAS'         = 2000 ;                                           
TAB1 . 'MOVA'                = 'MOT' 'VHOR' ;                                           
TAB1 . 'PRECISION'           = 5.0E-4 ;                                         
TAB1 . 'TALPHA_REFERENCE'    = 25. ;                                       
TAB1 . 'PROCEDURE_THERMIQUE' = 'MOT' 'LINEAIRE' ;                                                                   
TAB1 . 'GRANDS_DEPLACEMENTS' = VRAI ;                                   
TAB1 . 'CELSIUS'             = VRAI ; 
TAB1.'PROCEDURE_CHAR_MECA' = vrai;
TAB1.'MA_TABLE'=mata;

                                            
*                                                                         
PASAPAS TAB1 ;                                                          
*                                                                         
*
SAUV ;
*
*                                                                         
*****************************************************************       
*                                                               *        
*    Test de validation                                         *        
*                                                               *        
*****************************************************************       
*
*
ind1  = INDEX (TAB1 . 'VARIABLES_INTERNES') ;
nb1   = DIME ind1 ;
*
*
*    Densite finale numerique
*
vm1   = TAB1 . 'VARIABLES_INTERNES' .(ind1.nb1) ;
vm2   = EXCO VHOR vm1 ;
vm3   = REDU vm2 tot ;
rho1  = MAXI vm3 ;
*
*    Densite finale analytique
*
rho2 = 0.950365 ;
*
*
*    Deplacement numerique du point C
*
ind2  = INDEX (TAB1 . 'DEPLACEMENTS' ) ;
nb2   = DIME ind2 ;
ur1   = EXTR TAB1 .'DEPLACEMENTS'.(ind2.nb2) UR a02 ;
uz1   = EXTR TAB1 .'DEPLACEMENTS'.(ind2.nb2) UZ a02 ;
*
*    Deplacement analytique du point C
*
ur2   = rayon_1 * ( (V1RHOR / rho2)**(1./3.) - 1.) ;
uz2   = haute_1 * ( (V1RHOR / rho2)**(1./3.) - 1.) ;
*
*
*    Erreurs sur le deplacement et la densite :
*
erho1 = ABS ((rho1 - rho2 )/rho2);
eur1  = ABS ((ur1 - ur2) / ur2) ;
euz1  = ABS ((uz1 - uz2) / uz2) ;
*
*
*    Ecriture des erreurs a l'ecran :
*
OPTI ECHO 0 ;
*
SAUTER 3 LIGNES ;
*
MESS 'Calcul en isotrope :' ;
MESS 'Erreur sur le deplacement radial   :  '  eur1 ;
MESS 'Erreur sur le deplacement vertical :  '  euz1 ;
MESS 'Erreur sur la densite finale       :  '  erho1 ;
SAUTER 3 LIGNES ;
*
*
SI ( (eur1 + euz1 + erho1 ) >EG 0.05 ) ;
   MESS '--------- RESULTATS INCORRECTS -------------' ;
   SAUTER 3 LIGNES ;
   ERREUR 5;
SINON ;
   MESS '---------  RESULTATS CORRECTS  -------------' ;
   SAUTER 3 LIGNES ;
FINSI ;
*
FIN ;

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer