Download jpor1.dgibi

Back to the list

* fichier :  jpor1.dgibi
GRAPH = 'N' ;
SAUT PAGE ;
************************************************************************
*
*
*
*       TEST SUR UN JOINT POREUX BIDIMENSIONNEL (ELEMENT JOP3)
*
*       UN JOINT POREUX 2D EST BLOQUE EN BAS ET CHARGE EN HAUT
*       AVEC UNE FORCE TANGENTIELLE ET UNE FORCE DE COMPRESSION.
*       UN DEBIT NUL EST IMPOSE PARTOUT. 
*       LES DEPLACEMENTS DE LA FACE 'AB' ET LES PRESSIONS NODALES 
*       SONT COMPARES AUX MEMES VALEURS OBTENUES PAR LA SOLUTION
*       ANALYTIQUE.
*
*
*
*                   A ._______________._______________. B
*
*                   E ._______________________________. F
*
*                   C ._______________._______________. D
*                 ////////////////////////////////////////
*
*
*
************************************************************************
*
OPTI DIME 2 ;
OPTI ECHO 0 ;
*
TITRE 'JOINT POREUX BIDIMENSIONNEL' ;
*
*------------------------------------------------------
*
*        DEFINITION DE LA GEOMETRIE 
*
*------------------------------------------------------
*
OPTI ELEM SEG3 ;
*
A = -1.00 0.00 ;
B =  1.00 0.00 ;
*
AB =  A DROI 1 B ;
*
C = -1.00 0.00 ;
D =  1.00 0.00 ;
*
CD =  C DROI 1 D ;
*
OPTION ELEM SEG2 ;
*
E = -1.00 0.00 ;
F =  1.00 0.00 ;
*
EF =  E DROI 1 F ;
*
*------------------------------------------------------
*
*        DEFINITION DU MAILLAGE 
*
*------------------------------------------------------
*
OPTI ELEM RAP3 ;
*
JOI0 = RACC 0.001 AB CD EF ;
*
*------------------------------------------------------
*
*        DEFINITION DU MODELE ET DU MATERIAU
*
*------------------------------------------------------
*
MOD0 = MODL JOI0 POREUX ;
*
MAT0 = MATR MOD0 KS 1.E10 KN 1.E10 COB 1. MOB 1.E10
                 PERT 1. PERH 1. PERB 1. VISC 1. ;
*
*------------------------------------------------------
*
*        DEFINITION DES CONDITIONS AUX LIMITES
*
*------------------------------------------------------
*
BLO1 = BLOQ UX CD ;
BLO2 = BLOQ UY CD ;
BLO0 = BLO1 ET BLO2 ;
*
FOR1 = FORC FX  1.E10 AB ;
FOR2 = FORC FY -1.E10 AB ;
FOR0 = FOR1 ET FOR2 ;
*
*------------------------------------------------------
*
*        MATRICE DE PERMEABILITE
*
*------------------------------------------------------
*
PER0 = PERM MOD0 MAT0 ;
*
*------------------------------------------------------
*
*        DEFINITION DU CHARGEMENT
*
*------------------------------------------------------
*
L50 = PROG  0.0  1.0 ;
L51 = PROG  0.0  1.0 ;
EV1 = EVOL MANU X L50 Y L51 ;
*
CHA0 = CHAR 'MECA' FOR0 EV1 ;
LIS0 = PROG 0.0 PAS 0.1 1.0 ; 
*
*------------------------------------------------------
*
*        RESOLUTION
*
*------------------------------------------------------
*
TAB1 = TABLE ;
*
TAB1.'MODELE'              = MOD0 ;
TAB1.'CARACTERISTIQUES'    = MAT0 ;
TAB1.'BLOCAGES_MECANIQUES' = BLO0 ;
TAB1.'TEMPS_CALCULES'      = LIS0 ;
TAB1.'CHARGEMENT'          = CHA0 ;
TAB1.'PERMEABILITE'        = PER0 ;
TAB1.'CONSOLIDATION'       = VRAI ;
*
PASAPAS TAB1 ;
*
*------------------------------------------------------
*
*        POST TRAITEMENT
*
*------------------------------------------------------
*
pre_e1 = prog ; pre_s1 = prog ; pre_i1 = prog ;
pre_e2 = prog ; pre_s2 = prog ; pre_i2 = prog ;
def_s1 = prog ; def_s2 = prog ; 
tem0   = prog ;
*
xks = extr mat0 'KS ' 1 1 1 ; xkn = extr mat0 'KN ' 1 1 1 ;
xco = extr mat0 'COB' 1 1 1 ; xmo = extr mat0 'MOB' 1 1 1 ;
*
ndime = dime ( index(tab1.deplacements) ) ;
*
i=0 ;
*
dif1=0 ; dif2=0 ; dif3=0 ; dif4=0 ; 
dif5=0 ; dif6=0 ; dif7=0 ; dif8=0 ;
*
repeter bou1 (ndime-1) ;
*
i=i+1 ;
*
dep0 = tab1.deplacements.i ;
eps0 = epsi mod0 dep0 ;
*
pre1 =  extr dep0 'P   ' a  ;
pre2 =  extr dep0 'P   ' b  ;
pre3 =  extr dep0 'P   ' e  ;
pre4 =  extr dep0 'P   ' f  ;
pre5 =  extr dep0 'P   ' c  ;
pre6 =  extr dep0 'P   ' d  ;
val1 =  extr eps0 'DRSN' 1 1 1 ;
val2 =  extr eps0 'DRSN' 1 1 2 ;
val3 =  extr eps0 'DRSN' 1 1 3 ;
pal1 =  extr eps0 'DRN ' 1 1 1 ;
pal2 =  extr eps0 'DRN ' 1 1 2 ;
pal3 =  extr eps0 'DRN ' 1 1 3 ;
*--------------------------------------------------------------------
*   l'opérateur INTG n'est pas encore disponible pour les éléments
*   joints poreux: intégration à la main
*--------------------------------------------------------------------
P555=0.55555556 ;
P888=0.88888889 ;
*
def1 = ( (P555 * val1) + (P888 * val2) + (P555 * val3) ) / 2. ;
def2 = ( (P555 * pal1) + (P888 * pal2) + (P555 * pal3) ) / 2. ;
*
*
sig1 = (-1.E10 / (ndime-1)) * i / 2. ;
tau1 = ( 1.E10 / (ndime-1)) * i / 2. ;
pref = -1. * sig1 * (xco * xmo) / (((xco**2)*xmo) + xkn) ;
drex = tau1 / xks ;
drey = (sig1 + (xco * pref)) / xkn ;
*
pre_s1 = inse pre_s1 i pre1 ;
pre_s2 = inse pre_s2 i pre2 ;
pre_e1 = inse pre_e1 i pre3 ;
pre_e2 = inse pre_e2 i pre4 ;
pre_i1 = inse pre_i1 i pre5 ;
pre_i2 = inse pre_i2 i pre6 ;
def_s1 = inse def_s1 i def1 ;
def_s2 = inse def_s2 i def2 ;
*
tem0 = inse tem0 i i ;
*
dif1 = dif1 + ( abs ((pre1-pref) / pref) ) ;
dif2 = dif2 + ( abs ((pre2-pref) / pref) ) ;
dif3 = dif3 + ( abs ((pre3-pref) / pref) ) ;
dif4 = dif4 + ( abs ((pre4-pref) / pref) ) ;
dif5 = dif5 + ( abs ((pre5-pref) / pref) ) ;
dif6 = dif6 + ( abs ((pre6-pref) / pref) ) ;
dif7 = dif7 + ( abs ((def1-drex) / drex) ) ;
dif8 = dif8 + ( abs ((def2-drey) / drey) ) ;
*
fin bou1 ;
*
si ( NEG graph 'N' ) ;
*
gra1 = evol manu t0 tem0 pr_su1 pre_s1 ;
gra2 = evol manu t0 tem0 pr_su2 pre_s2 ;
gra3 = evol manu t0 tem0 pr_el1 pre_e1 ;
gra4 = evol manu t0 tem0 pr_el2 pre_e2 ;
gra5 = evol manu t0 tem0 pr_in1 pre_i1 ;
gra6 = evol manu t0 tem0 pr_in2 pre_i2 ;
gra7 = evol manu t0 tem0 de_tan def_s1 ;
gra8 = evol manu t0 tem0 de_nor def_s2 ;
*
dess gra7 ;
dess gra8 ;
dess ( gra1 et gra2 et gra3 et gra4 et gra5 et gra6 ) ;
*
finsi ;
*
*------------------------------------------------------
*
*        CODE DE FONCTIONNEMENT
*
*------------------------------------------------------
*
dif0 = ( dif1 + dif2 + dif3 + dif4 +
         dif5 + dif6 + dif7 + dif8 ) / ( 8. * (ndime-1) ) ;
si ( dif0 < 5e-2 ) ;
erre 0 ;
sinon ;
erre 5 ;
finsi ;
*
fin ;


 

 

© Cast3M 2003 - All rights reserved.
Disclaimer