Download Contact3D.dgibi

Back to the list

* fichier : Contact3D.dgibi
*----------------------------------------------------------------------*
*    Ce cas-test permet de tester la gestion du contact par PASAPAS.   *
* Il simule la mise en contact, en deplacements imposes, d'un cube     *
* sur une sol rigide. On impose le deplacement de la face superieure   *
* du cube. Sa base entre en contact, le cube est mis en compression.   *
* On compare la solution EF a la solution analytique.                  *
*----------------------------------------------------------------------*
*                                                                      *
'OPTI' 'DIME' 3 'ELEM' CUB8 'EPSI' 'LINEAIRE' ;
*                                                                      *
* Si TRACes desires, mettre IG1 a VRAI :                               *
IG1      = FAUX ;
*                                                                      *
*----------------------------------------------------------------------*
*                              MAILLAGE                                *
*----------------------------------------------------------------------*
*                                                                      *
* Maillage "Sol" :                                                     *
S1       = -10. -5. 0. ;
S2       = +10. -5. 0. ;
NLS1     = 5 ;
LS1      = S1  'DROI' NLS1 S2 ;
SOL1     = LS1 'TRAN' NLS1 (0. 20. 0.) ;
SOL1     = SOL1 'COUL' 'OLIV' ;
*                                                                      *
* Maillage "Cube" :                                                    *
C1       = -5. 0. 0.1 ;
M2       = +5. 0. 0.1 ;
NLC1     =  7 ;
LC1      = C1  'DROI' NLC1 M2 ;
SC1      = LC1 'TRAN' NLC1 (0. 10. 0.) ;
CUB1     = SC1 'VOLU' NLC1 'TRAN' (0. 0. 10.) ;
CUB1     = CUB1 'COUL' 'ORAN' ;
*                                                                      *
MTOT1    = (SOL1 'ET' CUB1) 'COUL' 'DEFA' ;
*                                                                      *
* Maillages de contact orientes :                                      *
SOL2     = 'ORIE' ('CHAN' 'TRI3' SOL1) (0. 0. +1.) ;
SCC1     = 'ORIE' ('CHAN' 'TRI3' SC1 ) (0. 0. -1.) ;
MCONT1   = ('IMPO' 'MAIL' SOL2 SCC1) 'COUL' 'ROUG' ;
*                                                                      *
* Traces :                                                             *
'SI' IG1 ;
  'TITR' 'Maillages Cube / Sol ' ;
  'TRAC' 'FACE' (CUB1 ET SOL1) ;
  'TITR' 'Maillages Cube / Sol & Maillage de contact (rouge) ' ;
  'TRAC' 'FACE' (MTOT1 ET MCONT1) ;
'FINS' ;
*                                                                      *
*----------------------------------------------------------------------*
*                      MODELES / CARACTERISTIQUES                      *
*----------------------------------------------------------------------*
*                                                                      *
MOD1     = 'MODE' CUB1 'MECANIQUE' 'ELASTIQUE' ;
MAT1     = 'MATE' MOD1 'YOUN' 1.E3 'NU' 0.3 ;
*                                                                      *
MODC1    = 'MODE' MCONT1 'CONTACT' 'UNILATERAL' ;
*                                                                      *
MOD0     = MOD1 'ET' MODC1 ;
MAT0     = MAT1 ;
*                                                                      *
*----------------------------------------------------------------------*
*                          C.L. / CHARGEMENT                           *
*----------------------------------------------------------------------*
*                                                                      *
* Deplacements imposes :                                               *
CL1      = 'BLOQ' SOL1 'DEPL' ;
*                                                                      *
SC2      = 'FACE' CUB1 2 ;
SCX0     = (CUB1 'ENVE') 'ELEM' 'APPU' ((CUB1 'COOR' 1) 'POIN' 'MINI') ;
SCY0     = (CUB1 'ENVE') 'ELEM' 'APPU' ((CUB1 'COOR' 2) 'POIN' 'MINI') ;
CLSC2    = 'BLOQ' SC2  'UZ' ;
CLSCX0   = 'BLOQ' SCX0 'UX' ;
CLSCY0   = 'BLOQ' SCY0 'UY' ;
*    
CL0      = CL1 'ET' CLSC2 'ET' CLSCX0 'ET' CLSCY0 ;
*                                                                      *
UZ0      = -0.101 ;
DCLC2    = 'DEPI' CLSC2 UZ0 ;
*                                                                      *
'SI' IG1 ;
  'TRAC' ('VECT' ('EXCO' DCLC2 'FLX' 'UZ') 'DEPL' 'ROUG') ('ARET' MTOT1) 
  'TITR' 'Deplacement impose a la surface superieure du cube.' ;
'FINS' ;
*                                                                      *
* Chargements :                                                        *
LTPS1    = 'PROG' 0. 1. ;
EV1      = 'EVOL' 'MANU' 'TEMPS' LTPS1 LTPS1 ;
CHARU1   = 'CHAR' 'DIMP' DCLC2 EV1 ;
CHAR0    = CHARU1 ;
*                                                                      *
*----------------------------------------------------------------------*
*                             RESOLUTION                               *
*----------------------------------------------------------------------*
*                                                                      *
* Construction de la table PASAPAS :                                   *
*                                                                      *
TAB1                         = 'TABL' ;
TAB1 . 'MODELE'              = MOD0 ;
TAB1 . 'CARACTERISTIQUES'    = MAT0 ;
TAB1 . 'BLOCAGES_MECANIQUES' = CL0 ;
TAB1 . 'CHARGEMENT'          = CHAR0 ;
TAB1 . 'TEMPS_CALCULES'      = LTPS1 ;
*                                                                      *
* Resolution :                                                         *
*                                                                      *
TAB2     = PASAPAS TAB1 ;
*                                                                      *
*----------------------------------------------------------------------*
*                            DEPOUILLEMENT                             *
*----------------------------------------------------------------------*
*                                                                      *
DEP1     = (TAB2 . 'DEPLACEMENTS' . 1) 'ENLE' 'LX' ;
*                                                                      *
* Deformee :                                                           *
DEFO0    = 'DEFO' (CUB1 'ET' SOL1) DEP1 0. 'VERT' ;
DEFO1    = 'DEFO' (CUB1 'ET' SOL1) DEP1 1. 'ROUG' ;
*                                                                      *
'SI' IG1 ;
  'TITR' 'Maillages non deforme (vert) et deforme (rouge).' ;
  'TRAC' (DEFO0 'ET' DEFO1) ;
'FINS' ;
*                                                                      *
* On verifie qu'on ne tranverse pas la surface :                       *
ERR1       = ('MAXI' (SOL1 'COOR' 3))
  - ('MINI' ((CUB1 'COOR' 3) + ('EXCO' 'UZ' DEP1))) ;
'MESS' ' ****** ECART RELATIF POSITION DE CONTACT : ' ERR1 ;
ERR0       = ERR1 ;
*                                                                      *
* Definition des deplacements solutions et comparaison avec la         *
* solution EF :                                                        *
'SI' ('EGA' ('VALE' 'EPSI') 'LINEAIRE') ;
  EPXX1    = ((-1. * UZ0) - 0.1) * 0.1 * 0.3 ;
  UXCUB1   = (('COOR' 1 CUB1) + 5.) * EPXX1 ;
  SOLUX1   = UXCUB1 'NOMC' 'UX' ;
  EPYY1    = EPXX1 ;
  UYCUB1   = ('COOR' 2 CUB1) * EPYY1 ;
  SOLUY1   = UYCUB1 'NOMC' 'UY' ;
  EPZZ1    = (UZ0 + 0.1) * 0.1 ;
  UZCUB1   = -0.1 + ((('COOR' 3 CUB1) - 0.1) * EPZZ1) ;
  SOLUZ1   = UZCUB1 'NOMC' 'UZ' ;
  SOLU1    = SOLUX1 'ET' SOLUY1 'ET' SOLUZ1 ;
  ERR2     = 'MAXI' ('ABS' ((SOLU1 - DEP1) / ('MAXI' 'ABS' SOLU1))) ;
  'MESS' ' ****** ERREUR RELATIVE EN DEPLACEMENT : ' ERR2 ;
  ERR0     = ERR0 + ERR2 ;
'FINS' ;
*                                                                      *
'SI' IG1 ;
  'TITR' 'Champ de deplacements.' ;
  'TRAC' ('CHAN' 'CHAM' DEP1 MOD1 'NOEUDS') MOD1 ;
'FINS' ;
*                                                                      *
* Comparaison des champs de contraintes :                              *
*                                                                      *
'SI' ('EGA' ('VALE' 'EPSI') 'LINEAIRE') ;
  SIG1     = 'SIGM' MOD1 MAT1 SOLU1 ;
  SIG1     = 'PICA' MOD1 SIG1 SOLU1 ;
  SIG2     = TAB2 . 'CONTRAINTES' . 1 ;
  ERR3     = ('MAXI' 'ABS' (SIG1 - SIG2)) / ('MAXI' 'ABS' SIG1) ;
  'MESS' ' ****** ERREUR RELATIVE EN CONTRAINTE : ' ERR3 ;
  ERR0     = ERR0 + ERR3 ;
'FINS' ;
*                                                                      *
* Test calcul critere de Tresca avec modele de contact dans objet      *
* modele en argument :                                                 *
TRE1     = 'TRES' MOD0 SIG2 ;
'SI' IG1 ;
  'TITR' 'Champ de contraintes.' ;
  'TRAC' SIG2 MOD0 ;
  'TRAC' TRE1 MOD0 'TITR' 'Critere de Tresca' ;
'FINS' ;
*                                                                      *
* Visualisations des reactions :                                       *
*                                                                      *
'SI' IG1 ;
  REAC1    = TAB2 . 'REACTIONS' . 1 ;
  VR1      = 'VECT' REAC1 'FORC' 'ROUG' ;
  'TITR' 'Forces de reaction.' ;
  'TRAC' VR1 ('ARET' MTOT1) ;
'FINS' ;
*                                                                      *
ERRMAX1  = 1.E-4 ;
*                                                                      *
'OPTI'  'ECHO' 0 ;
'SAUT' 1 'LIGN' ;
'MESS'
'---------------------- RESULTAT CAS-TEST ------------------------' ;
'MESS' ' ' ;
'MESS'
'Ecart relatif a la solution calculee sur les deplacements' ;
'MESS'
'et les contraintes :' ;
'MESS' ;
'SI' (ERR0 '<EG' ERRMAX1) ;
  'MESS' ('CHAI' '  ==> MAXI ERREUR =' ERR0 ' < ' ERRMAX1 ) ;
  'MESS' ' ' ;
  'MESS' '                      __________________' ;
  'MESS' '                      |                |' ;
  'MESS' '                      |  TEST REUSSI ! |' ;
  'MESS' '                      |________________|' ;
  'SAUT' 1 'LIGN' ;
'SINO' ;
  'MESS' ('CHAI' '  ==> MAXI ERREUR =' ERR0 ' > ' ERRMAX1 ) ;
  'MESS' ' ' ;
  'MESS' '                      __________________' ;
  'MESS' '                      |                |' ;
  'MESS' '                      |     ERREUR !   |' ;
  'MESS' '                      |________________|' ;
  'SAUT' 1 'LIGN' ;
  'ERRE' 5 ;
'FINS' ;
'MESS'
'------------------------ FIN CAS-TEST ---------------------------' ;
*                                                                     *
'FIN' ;
'OPTI'  'ECHO' 1 ;
 

 

© Cast3M 2003 - All rights reserved.
Disclaimer