Download creep01_cisXZ.dgibi

Back to the list

* fichier :  creep01_cisXZ.dgibi
*=======================================================================
*
*      CAS TEST DE VALIDATION DE LA PRISE EN COMPTE D'UNE LOI DE
*
*             COMPORTEMENT MECANIQUE NON LINEAIRE EXTERNE
*
*=======================================================================
*
* Modele 'VISCO_EXTERNE' 'GENERAL', integre par CCREEP (schema CCONST)
*
* Test No1 : Modele de FLUAGE POLYNOMIAL
*            CISAILLEMENT XZ
*
*=======================================================================


opti echo 0 ;


*=======================================================================
*
*                       PROCEDURES DEPENDANTES
*
*=======================================================================




*=======================================================================
*
*                      JEU DE DONNEES PRINCIPAL
*
*=======================================================================

*-----------------------------------------------------------------------
* 0 - Maillage
*     PLAQUE CARREE    COTE : 1 m    EPAISSEUR : 1 cm

opti dime 3 elem cub8 mode tridim ;

l1 = 1.0 ; 
l2 = 1.0 ; 
ep0 = 0.01 ; 

p01 = 0.0 0.0 0.0 ; 
p02 = ep0 0.0 0.0 ; 
p03 = ep0 l2  0.0 ; 
p04 = 0.0 l2  0.0 ; 

p10 = 0.0 0.0 l1 ;
p20 = ep0 0.0 l1 ;
p30 = ep0 l2  l1 ;
p40 = 0.0 l2  l1 ; 

li01 = 'DROIT' 1 p01 p02 ; 
li02 = 'DROIT' 1 p02 p03 ;
li03 = 'DROIT' 1 p03 p04 ;
li04 = 'DROIT' 1 p04 p01 ;

li10 = 'DROIT' 1 p10 p20 ;
li20 = 'DROIT' 1 p20 p30 ;
li30 = 'DROIT' 1 p30 p40 ;
li40 = 'DROIT' 1 p40 p10 ;

sur01 = 'DALL' li01 li02 li03 li04 ;
sur10 = 'DALL' li10 li20 li30 li40 ;
mail1 = sur01 'VOLU' 1 sur10 ;

*-----------------------------------------------------------------------
* 1 - Calcul avec le modele 'FLUAGE' 'POLYNOMIAL' interne CAST3M

* 1.1 Definition du modele

mo_flupo = MODE mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
                      'FLUAGE' 'POLYNOMIAL' ;

* 1.2 Affectation des proprietes de materiau

densiu   = 0.95 ;
dgrain   = 8.0E-6 ;
tuo2     = 1500.0 ;
tauxfisk = 1.5E19 ;

xyoun = (2.2693E11 - (1.5399E7*tuo2)) - (9.35973E3 * (tuo2**2.0)) ;
xcis  = (8.583E10 - (5.157E6*tuo2)) - (3.747E3 * (tuo2**2.0)) ;
xnu   = (xyoun/(2.0*xcis)) - 1.0 ;
xrho  = 10950.0 ;
xalph = ( (1.1833E-5 - (5.013E-9*tuo2)) + (3.756E-12 * (tuo2**2.0)) )
        - (6.125E-17 * (tuo2**3.0)) ;

xsmax = xyoun / 1000.0 ;
xaf0  = 0.0 ;
xaf1  = (EXP(0.183*(100.0-densiu)))
      * ( (0.2031E-13+(0.67861E-32*tauxfisk)) / (dgrain**2.0) )
      * (EXP(-45294.4*(tuo2**-1.0))) ;
xaf2  = 1.0 ;
xaf3  = (EXP(0.241*(100.0-densiu)))
      * (0.1524E-25+(0.50825E-44*tauxfisk))
      * (EXP(-66431.8*(tuo2**-1.0))) ;
xaf4  = 4.5 ;
xaf5  = (1.447E-34*tauxfisk) * (EXP(-3624.0*(tuo2**-1.0))) ;
xaf6  = 1.0 ;

ma_flupo = MATE mo_flupo 'YOUN' xyoun 'NU  ' xnu   'RHO ' xrho
                         'ALPH' xalph
                         'SMAX' xsmax 'AF0 ' xaf0  'AF1 ' xaf1
                         'AF2 ' xaf2  'AF3 ' xaf3  'AF4 ' xaf4
                         'AF5 ' xaf5  'AF6 ' xaf6 ;

* 1.3 Definition des conditions aux limites et chargements

cl1 = BLOQ mail1 'UY' 'UZ' ;
cl2 = BLOQ sur01 'UX' ;
cl0 = cl1 ET cl2 ;

depmax = 5.0E8 ;
dep0 = FORCE sur10 'FX' depmax 'FY' 0.0 'FZ' 0.0 ;
ev0 = EVOL MANU temps (PROG 0.0 1.E-2 1000.0)
                    y (PROG 0.0 1.0   1.0   ) ;
cha0 = CHAR MECA dep0 ev0 ;

* 1.4 Definition des instants de calcul

pro0 = PROG 0.0 PAS 1.E-6 3.0E-5 ;
pro1 = PROG 0.0 PAS 1.E-6 3.0E-5 ;

* 1.5 Resolution par PASAPAS

tabflup = TABLE ;
tabflup.'MODELE' = mo_flupo ;
tabflup.'CARACTERISTIQUES' = ma_flupo ;
tabflup.'CHARGEMENT' = cha0 ;
tabflup.'BLOCAGES_MECANIQUES' = cl0 ;
tabflup.'TEMPS_CALCULES' = pro0 ;
tabflup.'TEMPS_SAUVES' = pro1 ;
TMASAU=table;
tabflup . 'MES_SAUVEGARDES'=TMASAU;
tabflup .'PRECISION'=1e-9;
TMASAU .'DEFTO'=VRAI;
TMASAU .'DEFIN'=VRAI;
TMASAU .'DEFLO'=VRAI;

TEMPS 'ZERO' ;
PASAPAS tabflup ;
CPUint = TEMPS 'NOEC' ;

*-----------------------------------------------------------------------
* 2 - Calcul avec modele 'VISCO_EXTERNE' 'GENERAL' no21
*     Modele 'FLUAGE' 'POLYNOMIAL' externalise dans CREEP

* 2.1 Definition du modele utilisateur externalise dans CREEP

mo_util = MODE mail1 'MECANIQUE' 'ELASTIQUE' 'ISOTROPE'
                     'VISCO_EXTERNE' 'GENERAL' 'NUME_LOI' 21 ;

* 2.2 Affectation des proprietes de materiau

ma_util = MATE mo_util 'YOUN' xyoun 'NU  ' xnu   'RHO ' xrho
                       'ALPH' xalph ;

* 2.3 Definition des conditions aux limites et chargements : idem 1.3

* 2.4 Definition des instants de calcul : idem 1.4

* 2.5 Resolution par PASAPAS

tabutil = TABLE ;
tabutil.'MODELE' = mo_util ;
tabutil.'CARACTERISTIQUES' = ma_util ;
tabutil.'CHARGEMENT' = cha0 ;
tabutil.'BLOCAGES_MECANIQUES' = cl0 ;
tabutil.'TEMPS_CALCULES' = pro0 ;
tabutil.'TEMPS_SAUVES' = pro1 ;
tabutil.'PRECISION' = 1e-9 ;
TMASAU=table;
tabutil . 'MES_SAUVEGARDES'=TMASAU;
TMASAU .'DEFTO'=VRAI;
TMASAU .'DEFIN'=VRAI;

TEMPS 'ZERO' ;
PASAPAS tabutil ;
CPUext = TEMPS 'NOEC' ;

*-----------------------------------------------------------------------
* 3 - Post-traitement : comparaisons entre les deux modeles
*
*     N.B. Comme on simule un essai de cisaillement XZ :
*          - Critere strict (errrel < 1.d-8) sur GAXZ, GIXZ et SMXZ
*          - Pour les autres composantes on note les depassements du
*            critere si impression demandee

uxc = TABLE ; uyc = TABLE ; uzc = TABLE ;
epxxc = TABLE ; epyyc = TABLE ; epzzc = TABLE ;
gaxyc = TABLE ; gaxzc = TABLE ; gayzc = TABLE ;
eixxc = TABLE ; eiyyc = TABLE ; eizzc = TABLE ;
gixyc = TABLE ; gixzc = TABLE ; giyzc = TABLE ;
smxxc = TABLE ; smyyc = TABLE ; smzzc = TABLE ;
smxyc = TABLE ; smxzc = TABLE ; smyzc = TABLE ;

uxu = TABLE ; uyu = TABLE ; uzu = TABLE ;
epxxu = TABLE ; epyyu = TABLE ; epzzu = TABLE ;
gaxyu = TABLE ; gaxzu = TABLE ; gayzu = TABLE ;
eixxu = TABLE ; eiyyu = TABLE ; eizzu = TABLE ;
gixyu = TABLE ; gixzu = TABLE ; giyzu = TABLE ;
smxxu = TABLE ; smyyu = TABLE ; smzzu = TABLE ;
smxyu = TABLE ; smxzu = TABLE ; smyzu = TABLE ;

LDEPL = MOTS 'UX  ' 'UY  ' 'UZ  ' ;
LDEFO = MOTS 'EPXX' 'EPYY' 'EPZZ' 'GAXY' 'GAXZ' 'GAYZ' ;
LDEIN = MOTS 'EIXX' 'EIYY' 'EIZZ' 'GIXY' 'GIXZ' 'GIYZ' ;
LCONT = MOTS 'SMXX' 'SMYY' 'SMZZ' 'SMXY' 'SMXZ' 'SMYZ' ;

idefo = 5 ;
idein = 5 ;
icont = 5 ;

ierr = 0 ;
*critere = 1.d-8 ; kich
critere = 2.d-8 ;
IMESS = 0 ;
***IMESS = 1 ;

nbno  = 8 ;
nbgau = 8 ;

netat = DIME (tabflup.'TEMPS') ;
ietat = -1 ;


* DEBUT BOUCLE COMPARAISON DES RESULTATS________________________________

REPETER BECART netat ;

   ietat = ietat + 1 ;

   temps1 = tabflup.'TEMPS'.ietat ;
   temps2 = tabutil.'TEMPS'.ietat ;
   SI ((ABS (temps1-temps2)) > 1.0E-9) ;
      ierr = 1 ;
      QUITTER BECART ;
   FINSI ;

*  Extraction des resultats de calcul : Modele interne CAST3M-----------

*  Deplacements
   uxc.1 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p01 ;
   uxc.2 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p02 ;
   uxc.3 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p03 ;
   uxc.4 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p04 ;
   uxc.5 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p10 ;
   uxc.6 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p20 ;
   uxc.7 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p30 ;
   uxc.8 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UX' p40 ;

   uyc.1 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p01 ;
   uyc.2 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p02 ;
   uyc.3 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p03 ;
   uyc.4 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p04 ;
   uyc.5 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p10 ;
   uyc.6 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p20 ;
   uyc.7 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p30 ;
   uyc.8 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UY' p40 ;

   uzc.1 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p01 ;
   uzc.2 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p02 ;
   uzc.3 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p03 ;
   uzc.4 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p04 ;
   uzc.5 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p10 ;
   uzc.6 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p20 ;
   uzc.7 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p30 ;
   uzc.8 = EXTR (tabflup.'DEPLACEMENTS'.ietat) 'UZ' p40 ;

*  Deformations totales
   igau = 0 ;
   REPETER BEPXXC nbgau ;
      igau = igau + 1 ;
      epxxc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'EPXX' 1 1 igau ;
   FIN BEPXXC ;

   igau = 0 ;
   REPETER BEPYYC nbgau ;
      igau = igau + 1 ;
      epyyc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'EPYY' 1 1 igau ;
   FIN BEPYYC ;

   igau = 0 ;
   REPETER BEPZZC nbgau ;
      igau = igau + 1 ;
      epzzc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'EPZZ' 1 1 igau ;
   FIN BEPZZC ;

   igau = 0 ;
   REPETER BGAXYC nbgau ;
      igau = igau + 1 ;
      gaxyc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'GAXY' 1 1 igau ;
   FIN BGAXYC ;

   igau = 0 ;
   REPETER BGAXZC nbgau ;
      igau = igau + 1 ;
      gaxzc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'GAXZ' 1 1 igau ;
   FIN BGAXZC ;

   igau = 0 ;
   REPETER BGAYZC nbgau ;
      igau = igau + 1 ;
      gayzc.igau = EXTR (tabflup.'DEFORMATIONS'.ietat) 'GAYZ' 1 1 igau ;
   FIN BGAYZC ;

*  Deformations inelastiques
   igau = 0 ;
   REPETER BEIXXC nbgau ;
      igau = igau + 1 ;
      eixxc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'EIXX' 1 1 igau ;
   FIN BEIXXC ;

   igau = 0 ;
   REPETER BEIYYC nbgau ;
      igau = igau + 1 ;
      eiyyc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'EIYY' 1 1 igau ;
   FIN BEIYYC ;

   igau = 0 ;
   REPETER BEIZZC nbgau ;
      igau = igau + 1 ;
      eizzc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'EIZZ' 1 1 igau ;
   FIN BEIZZC ;

   igau = 0 ;
   REPETER BGIXYC nbgau ;
      igau = igau + 1 ;
      gixyc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'GIXY' 1 1 igau ;
   FIN BGIXYC ;

   igau = 0 ;
   REPETER BGIXZC nbgau ;
      igau = igau + 1 ;
      gixzc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'GIXZ' 1 1 igau ;
   FIN BGIXZC ;

   igau = 0 ;
   REPETER BGIYZC nbgau ;
      igau = igau + 1 ;
      giyzc.igau = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ietat)
                             'GIYZ' 1 1 igau ;
   FIN BGIYZC ;

*  Contraintes
   igau = 0 ;
   REPETER BSMXXC nbgau ;
      igau = igau + 1 ;
      smxxc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMXX' 1 1 igau ;
   FIN BSMXXC ;

   igau = 0 ;
   REPETER BSMYYC nbgau ;
      igau = igau + 1 ;
      smyyc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMYY' 1 1 igau ;
   FIN BSMYYC ;

   igau = 0 ;
   REPETER BSMZZC nbgau ;
      igau = igau + 1 ;
      smzzc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMZZ' 1 1 igau ;
   FIN BSMZZC ;

   igau = 0 ;
   REPETER BSMXYC nbgau ;
      igau = igau + 1 ;
      smxyc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMXY' 1 1 igau ;
   FIN BSMXYC ;

   igau = 0 ;
   REPETER BSMXZC nbgau ;
      igau = igau + 1 ;
      smxzc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMXZ' 1 1 igau ;
   FIN BSMXZC ;

   igau = 0 ;
   REPETER BSMYZC nbgau ;
      igau = igau + 1 ;
      smyzc.igau = EXTR (tabflup.'CONTRAINTES'.ietat) 'SMYZ' 1 1 igau ;
   FIN BSMYZC ;

*  Extraction des resultats de calcul : Modele externe utilisateur------

*  Deplacements
   uxu.1 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p01 ;
   uxu.2 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p02 ;
   uxu.3 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p03 ;
   uxu.4 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p04 ;
   uxu.5 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p10 ;
   uxu.6 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p20 ;
   uxu.7 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p30 ;
   uxu.8 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UX' p40 ;

   uyu.1 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p01 ;
   uyu.2 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p02 ;
   uyu.3 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p03 ;
   uyu.4 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p04 ;
   uyu.5 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p10 ;
   uyu.6 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p20 ;
   uyu.7 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p30 ;
   uyu.8 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UY' p40 ;

   uzu.1 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p01 ;
   uzu.2 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p02 ;
   uzu.3 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p03 ;
   uzu.4 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p04 ;
   uzu.5 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p10 ;
   uzu.6 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p20 ;
   uzu.7 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p30 ;
   uzu.8 = EXTR (tabutil.'DEPLACEMENTS'.ietat) 'UZ' p40 ;

*  Deformations totales
   igau = 0 ;
   REPETER BEPXXU nbgau ;
      igau = igau + 1 ;
      epxxu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'EPXX' 1 1 igau ;
   FIN BEPXXU ;

   igau = 0 ;
   REPETER BEPYYU nbgau ;
      igau = igau + 1 ;
      epyyu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'EPYY' 1 1 igau ;
   FIN BEPYYU ;

   igau = 0 ;
   REPETER BEPZZU nbgau ;
      igau = igau + 1 ;
      epzzu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'EPZZ' 1 1 igau ;
   FIN BEPZZU ;

   igau = 0 ;
   REPETER BGAXYU nbgau ;
      igau = igau + 1 ;
      gaxyu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'GAXY' 1 1 igau ;
   FIN BGAXYU ;

   igau = 0 ;
   REPETER BGAXZU nbgau ;
      igau = igau + 1 ;
      gaxzu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'GAXZ' 1 1 igau ;
   FIN BGAXZU ;

   igau = 0 ;
   REPETER BGAYZU nbgau ;
      igau = igau + 1 ;
      gayzu.igau = EXTR (tabutil.'DEFORMATIONS'.ietat) 'GAYZ' 1 1 igau ;
   FIN BGAYZU ;

*  Deformations inelastiques
   igau = 0 ;
   REPETER BEIXXU nbgau ;
      igau = igau + 1 ;
      eixxu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'EIXX' 1 1 igau ;
   FIN BEIXXU ;

   igau = 0 ;
   REPETER BEIYYU nbgau ;
      igau = igau + 1 ;
      eiyyu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'EIYY' 1 1 igau ;
   FIN BEIYYU ;

   igau = 0 ;
   REPETER BEIZZU nbgau ;
      igau = igau + 1 ;
      eizzu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'EIZZ' 1 1 igau ;
   FIN BEIZZU ;

   igau = 0 ;
   REPETER BGIXYU nbgau ;
      igau = igau + 1 ;
      gixyu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'GIXY' 1 1 igau ;
   FIN BGIXYU ;

   igau = 0 ;
   REPETER BGIXZU nbgau ;
      igau = igau + 1 ;
      gixzu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'GIXZ' 1 1 igau ;
   FIN BGIXZU ;

   igau = 0 ;
   REPETER BGIYZU nbgau ;
      igau = igau + 1 ;
      giyzu.igau = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ietat)
                              'GIYZ' 1 1 igau ;
   FIN BGIYZU ;

*  Contraintes
   igau = 0 ;
   REPETER BSMXXU nbgau ;
      igau = igau + 1 ;
      smxxu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMXX' 1 1 igau ;
   FIN BSMXXU ;

   igau = 0 ;
   REPETER BSMYYU nbgau ;
      igau = igau + 1 ;
      smyyu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMYY' 1 1 igau ;
   FIN BSMYYU ;

   igau = 0 ;
   REPETER BSMZZU nbgau ;
      igau = igau + 1 ;
      smzzu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMZZ' 1 1 igau ;
   FIN BSMZZU ;

   igau = 0 ;
   REPETER BSMXYU nbgau ;
      igau = igau + 1 ;
      smxyu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMXY' 1 1 igau ;
   FIN BSMXYU ;

   igau = 0 ;
   REPETER BSMXZU nbgau ;
      igau = igau + 1 ;
      smxzu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMXZ' 1 1 igau ;
   FIN BSMXZU ;

   igau = 0 ;
   REPETER BSMYZU nbgau ;
      igau = igau + 1 ;
      smyzu.igau = EXTR (tabutil.'CONTRAINTES'.ietat) 'SMYZ' 1 1 igau ;
   FIN BSMYZU ;

*  Comparaison des deplacements-----------------------------------------

   icomp = 1 ;
   ino = 0 ;
   REPETER BUX nbno ;
      ino = ino + 1 ;
      SI (EGA uxc.ino 0.0) ;
         SI (NON (EGA uxu.ino 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' uxu.ino
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 10 ; errabs = uxu.ino ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dux = ABS (uxc.ino - uxu.ino) ;
         errrel = ABS (dux / uxc.ino) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message 'uxc.ino =' uxc.ino 'uxu.ino =' uxu.ino ;
            Message ;
            FINSI ;
************ierr = 11 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BUX ;

   icomp = 2 ;
   ino = 0 ;
   REPETER BUY nbno ;
      ino = ino + 1 ;
      SI (EGA uyc.ino 0.0) ;
         SI (NON (EGA uyu.ino 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' uyu.ino
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 10 ; errabs = uyu.ino ; QUITTER BECART ;
         FINSI ;
      SINON ;
         duy = ABS (uyc.ino - uyu.ino) ;
         errrel = ABS (duy / uyc.ino) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message 'uyc.ino =' uyc.ino 'uyu.ino =' uyu.ino ;
            Message ;
            FINSI ;
************ierr = 11 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BUY ;

   icomp = 3 ;
   ino = 0 ;
   REPETER BUZ nbno ;
      ino = ino + 1 ;
      SI (EGA uzc.ino 0.0) ;
         SI (NON (EGA uzu.ino 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' uzu.ino
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 10 ; errabs = uzu.ino ; QUITTER BECART ;
         FINSI ;
      SINON ;
         duz = ABS (uzc.ino - uzu.ino) ;
         errrel = ABS (duz / uzc.ino) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEPL icomp)
                    ' Noeud' ino 'Etat' ietat ;
            Message 'uzc.ino =' uzc.ino 'uzu.ino =' uzu.ino ;
            Message ;
            FINSI ;
************ierr = 11 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BUZ ;

*  Comparaison des deformations-----------------------------------------

   icomp = 1 ;
   igau = 0 ;
   REPETER BEPXX nbgau ;
      igau = igau + 1 ;
      SI (EGA epxxc.igau 0.0) ;
         SI (NON (EGA epxxu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' epxxu.igau
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 20 ; errabs = epxxu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         depxx = ABS (epxxc.igau - epxxu.igau) ;
         errrel = ABS (depxx / epxxc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'epxxc.igau =' epxxc.igau 'epxxu.igau =' epxxu.igau;
            Message ;
            FINSI ;
************ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEPXX ;

   icomp = 2 ;
   igau = 0 ;
   REPETER BEPYY nbgau ;
      igau = igau + 1 ;
      SI (EGA epyyc.igau 0.0) ;
         SI (NON (EGA epyyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' epyyu.igau
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 20 ; errabs = epyyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         depyy = ABS (epyyc.igau - epyyu.igau) ;
         errrel = ABS (depyy / epyyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'epyyc.igau =' epyyc.igau 'epyyu.igau =' epyyu.igau;
            Message ;
            FINSI ;
************ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEPYY ;

   icomp = 3 ;
   igau = 0 ;
   REPETER BEPZZ nbgau ;
      igau = igau + 1 ;
      SI (EGA epzzc.igau 0.0) ;
         SI (NON (EGA epzzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' epzzu.igau
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 20 ; errabs = epzzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         depzz = ABS (epzzc.igau - epzzu.igau) ;
         errrel = ABS (depzz / epzzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'epzzc.igau =' epzzc.igau 'epzzu.igau =' epzzu.igau;
            Message ;
            FINSI ;
************ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEPZZ ;

   icomp = 4 ;
   igau = 0 ;
   REPETER BGAXY nbgau ;
      igau = igau + 1 ;
      SI (EGA gaxyc.igau 0.0) ;
         SI (NON (EGA gaxyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' gaxyu.igau
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 20 ; errabs = gaxyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgaxy = ABS (gaxyc.igau - gaxyu.igau) ;
         errrel = ABS (dgaxy / gaxyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'gaxyc.igau =' gaxyc.igau 'gaxyu.igau =' gaxyu.igau;
            Message ;
            FINSI ;
************ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGAXY ;

   icomp = 5 ;
   igau = 0 ;
   REPETER BGAXZ nbgau ;
      igau = igau + 1 ;
      SI (EGA gaxzc.igau 0.0) ;
         SI (NON (EGA gaxzu.igau 0.0)) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur absolue' gaxzu.igau
************        'Composante ' (EXTR LDEFO icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message ;
************FINSI ;
            ierr = 20 ; errabs = gaxzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgaxz = ABS (gaxzc.igau - gaxzu.igau) ;
         errrel = ABS (dgaxz / gaxzc.igau) ;
         SI (errrel > critere) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur relative' errrel
************        'Composante ' (EXTR LDEFO icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message 'gaxzc.igau =' gaxzc.igau 'gaxzu.igau =' gaxzu.igau;
************Message ;
************FINSI ;
            ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGAXZ ;

   icomp = 6 ;
   igau = 0 ;
   REPETER BGAYZ nbgau ;
      igau = igau + 1 ;
      SI (EGA gayzc.igau 0.0) ;
         SI (NON (EGA gayzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' gayzu.igau
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 20 ; errabs = gayzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgayz = ABS (gayzc.igau - gayzu.igau) ;
         errrel = ABS (dgayz / gayzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEFO icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'gayzc.igau =' gayzc.igau 'gayzu.igau =' gayzu.igau;
            Message ;
            FINSI ;
************ierr = 21 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGAYZ ;

*  Comparaison des deformations inelastiques----------------------------

   icomp = 1 ;
   igau = 0 ;
   REPETER BEIXX nbgau ;
      igau = igau + 1 ;
      SI (EGA eixxc.igau 0.0) ;
         SI (NON (EGA eixxu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' eixxu.igau
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 30 ; errabs = eixxu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         deixx = ABS (eixxc.igau - eixxu.igau) ;
         errrel = ABS (deixx / eixxc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'eixxc.igau =' eixxc.igau 'eixxu.igau =' eixxu.igau;
            Message ;
            FINSI ;
************ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEIXX ;

   icomp = 2 ;
   igau = 0 ;
   REPETER BEIYY nbgau ;
      igau = igau + 1 ;
      SI (EGA eiyyc.igau 0.0) ;
         SI (NON (EGA eiyyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' eiyyu.igau
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 30 ; errabs = eiyyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         deiyy = ABS (eiyyc.igau - eiyyu.igau) ;
         errrel = ABS (deiyy / eiyyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'eiyyc.igau =' eiyyc.igau 'eiyyu.igau =' eiyyu.igau;
            Message ;
            FINSI ;
************ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEIYY ;

   icomp = 3 ;
   igau = 0 ;
   REPETER BEIZZ nbgau ;
      igau = igau + 1 ;
      SI (EGA eizzc.igau 0.0) ;
         SI (NON (EGA eizzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' eizzu.igau
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 30 ; errabs = eizzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         deizz = ABS (eizzc.igau - eizzu.igau) ;
         errrel = ABS (deizz / eizzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'eizzc.igau =' eizzc.igau 'eizzu.igau =' eizzu.igau;
            Message ;
            FINSI ;
************ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BEIZZ ;

   icomp = 4 ;
   igau = 0 ;
   REPETER BGIXY nbgau ;
      igau = igau + 1 ;
      SI (EGA gixyc.igau 0.0) ;
         SI (NON (EGA gixyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' gixyu.igau
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 30 ; errabs = gixyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgixy = ABS (gixyc.igau - gixyu.igau) ;
         errrel = ABS (dgixy / gixyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'gixyc.igau =' gixyc.igau 'gixyu.igau =' gixyu.igau;
            Message ;
            FINSI ;
************ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGIXY ;

   icomp = 5 ;
   igau = 0 ;
   REPETER BGIXZ nbgau ;
      igau = igau + 1 ;
      SI (EGA gixzc.igau 0.0) ;
         SI (NON (EGA gixzu.igau 0.0)) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur absolue' gixzu.igau
************        'Composante ' (EXTR LDEIN icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message ;
************FINSI ;
            ierr = 30 ; errabs = gixzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgixz = ABS (gixzc.igau - gixzu.igau) ;
         errrel = ABS (dgixz / gixzc.igau) ;
         SI (errrel > critere) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur relative' errrel
************        'Composante ' (EXTR LDEIN icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message 'gixzc.igau =' gixzc.igau 'gixzu.igau =' gixzu.igau;
************Message ;
************FINSI ;
            ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGIXZ ;

   icomp = 6 ;
   igau = 0 ;
   REPETER BGIYZ nbgau ;
      igau = igau + 1 ;
      SI (EGA giyzc.igau 0.0) ;
         SI (NON (EGA giyzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' giyzu.igau
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 30 ; errabs = giyzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dgiyz = ABS (giyzc.igau - giyzu.igau) ;
         errrel = ABS (dgiyz / giyzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LDEIN icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'giyzc.igau =' giyzc.igau 'giyzu.igau =' giyzu.igau;
            Message ;
            FINSI ;
************ierr = 31 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BGIYZ ;

*  Comparaison des contraintes------------------------------------------

   icomp = 1 ;
   igau = 0 ;
   REPETER BSMXX nbgau ;
      igau = igau + 1 ;
      SI (EGA smxxc.igau 0.0) ;
         SI (NON (EGA smxxu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' smxxu.igau
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 40 ; errabs = smxxu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmxx = ABS (smxxc.igau - smxxu.igau) ;
         errrel = ABS (dsmxx / smxxc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'smxxc.igau =' smxxc.igau 'smxxu.igau =' smxxu.igau;
            Message ;
            FINSI ;
************ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMXX ;

   icomp = 2 ;
   igau = 0 ;
   REPETER BSMYY nbgau ;
      igau = igau + 1 ;
      SI (EGA smyyc.igau 0.0) ;
         SI (NON (EGA smyyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' smyyu.igau
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 40 ; errabs = smyyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmyy = ABS (smyyc.igau - smyyu.igau) ;
         errrel = ABS (dsmyy / smyyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'smyyc.igau =' smyyc.igau 'smyyu.igau =' smyyu.igau;
            Message ;
            FINSI ;
************ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMYY ;

   icomp = 3 ;
   igau = 0 ;
   REPETER BSMZZ nbgau ;
      igau = igau + 1 ;
      SI (EGA smzzc.igau 0.0) ;
         SI (NON (EGA smzzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' smzzu.igau
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 40 ; errabs = smzzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmzz = ABS (smzzc.igau - smzzu.igau) ;
         errrel = ABS (dsmzz / smzzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'smzzc.igau =' smzzc.igau 'smzzu.igau =' smzzu.igau;
            Message ;
            FINSI ;
************ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMZZ ;

   icomp = 4 ;
   igau = 0 ;
   REPETER BSMXY nbgau ;
      igau = igau + 1 ;
      SI (EGA smxyc.igau 0.0) ;
         SI (NON (EGA smxyu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' smxyu.igau
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 40 ; errabs = smxyu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmxy = ABS (smxyc.igau - smxyu.igau) ;
         errrel = ABS (dsmxy / smxyc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'smxyc.igau =' smxyc.igau 'smxyu.igau =' smxyu.igau;
            Message ;
            FINSI ;
************ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMXY ;

   icomp = 5 ;
   igau = 0 ;
   REPETER BSMXZ nbgau ;
      igau = igau + 1 ;
      SI (EGA smxzc.igau 0.0) ;
         SI (NON (EGA smxzu.igau 0.0)) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur absolue' smxzu.igau
************        'Composante ' (EXTR LCONT icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message ;
************FINSI ;
            ierr = 40 ; errabs = smxzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmxz = ABS (smxzc.igau - smxzu.igau) ;
         errrel = ABS (dsmxz / smxzc.igau) ;
         SI (errrel > critere) ;
************SI (EGA IMESS 1) ;
************Message 'Erreur relative' errrel
************        'Composante ' (EXTR LCONT icomp)
************        ' Point Gauss' igau 'Etat' ietat ;
************Message 'smxzc.igau =' smxzc.igau 'smxzu.igau =' smxzu.igau;
************Message ;
************FINSI ;
            ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMXZ ;

   icomp = 6 ;
   igau = 0 ;
   REPETER BSMYZ nbgau ;
      igau = igau + 1 ;
      SI (EGA smyzc.igau 0.0) ;
         SI (NON (EGA smyzu.igau 0.0)) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur absolue' smyzu.igau
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message ;
            FINSI ;
************ierr = 40 ; errabs = smyzu.igau ; QUITTER BECART ;
         FINSI ;
      SINON ;
         dsmyz = ABS (smyzc.igau - smyzu.igau) ;
         errrel = ABS (dsmyz / smyzc.igau) ;
         SI (errrel > critere) ;
            SI (EGA IMESS 1) ;
            Message 'Erreur relative' errrel
                    'Composante ' (EXTR LCONT icomp)
                    ' Point Gauss' igau 'Etat' ietat ;
            Message 'smyzc.igau =' smyzc.igau 'smyzu.igau =' smyzu.igau;
            Message ;
            FINSI ;
************ierr = 41 ; QUITTER BECART ;
         FINSI ;
      FINSI ;
   FIN BSMYZ ;

FIN BECART ;

* FIN   BOUCLE COMPARAISON DES RESULTATS________________________________

* MESSAGES D'ERREUR_____________________________________________________

Message ;
Message 'CPU avec modele interne = ' CPUint 'centiemes de seconde' ;
Message 'CPU avec modele externe = ' CPUext 'centiemes de seconde' ;
Message ;

ifin = netat-1 ;

gaxzcmax = 0.0 ;
igau = 0 ;
REPETER BGAXZFC nbgau ;
   igau = igau + 1 ;
   gaxz = EXTR (tabflup.'DEFORMATIONS'.ifin)
                    'GAXZ' 1 1 igau ;
   SI (gaxz > gaxzcmax) ; gaxzcmax = gaxz ; FINSI ;
FIN BGAXZFC ;
gaxzumax = 0.0 ;
igau = 0 ;
REPETER BGAXZFU nbgau ;
   igau = igau + 1 ;
   gaxz = EXTR (tabutil.'DEFORMATIONS'.ifin)
                    'GAXZ' 1 1 igau ;
   SI (gaxz > gaxzumax) ; gaxzumax = gaxz ; FINSI ;
FIN BGAXZFU ;
Message 'Deformation totale finale (maxi sur points de Gauss)' ;
Message 'GAXZ max avec modele interne = ' gaxzcmax ;
Message 'GAXZ max avec modele externe = ' gaxzumax ;
Message ;

gixzcmax = 0.0 ;
igau = 0 ;
REPETER BGIXZFC nbgau ;
   igau = igau + 1 ;
   gixz = EXTR (tabflup.'DEFORMATIONS_INELASTIQUES'.ifin)
                    'GIXZ' 1 1 igau ;
   SI (gixz > gixzcmax) ; gixzcmax = gixz ; FINSI ;
FIN BGIXZFC ;
gixzumax = 0.0 ;
igau = 0 ;
REPETER BGIXZFU nbgau ;
   igau = igau + 1 ;
   gixz = EXTR (tabutil.'DEFORMATIONS_INELASTIQUES'.ifin)
                    'GIXZ' 1 1 igau ;
   SI (gixz > gixzumax) ; gixzumax = gixz ; FINSI ;
FIN BGIXZFU ;
Message 'Deformation de fluage finale (maxi sur points de Gauss)' ;
Message 'GIXZ max avec modele interne = ' gixzcmax ;
Message 'GIXZ max avec modele externe = ' gixzumax ;
Message ;

smxzcmax = 0.0 ;
igau = 0 ;
REPETER BSMXZFC nbgau ;
   igau = igau + 1 ;
   smxz = EXTR (tabflup.'CONTRAINTES'.ifin)
                    'SMXZ' 1 1 igau ;
   SI (smxz > smxzcmax) ; smxzcmax = smxz ; FINSI ;
FIN BSMXZFC ;
smxzumax = 0.0 ;
igau = 0 ;
REPETER BSMXZFU nbgau ;
   igau = igau + 1 ;
   smxz = EXTR (tabutil.'CONTRAINTES'.ifin)
                    'SMXZ' 1 1 igau ;
   SI (smxz > smxzumax) ; smxzumax = smxz ; FINSI ;
FIN BSMXZFU ;
Message 'Contrainte finale (maxi sur points de Gauss)' ;
Message 'SMXZ max avec modele interne = ' smxzcmax ;
Message 'SMXZ max avec modele externe = ' smxzumax ;
Message ;

SI (ierr > 0) ;

   SI (EGA ierr 1) ;
      Message 'Instants de calcul non coincidants' ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 10) ;
      Message 'Erreur absolue' errabs 'Composante ' (EXTR LDEPL icomp)
              ' Noeud' ino 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 11) ;
      Message 'Erreur relative' errrel 'Composante ' (EXTR LDEPL icomp)
              ' Noeud' ino 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 20) ;
      Message 'Erreur absolue' errabs 'Composante ' (EXTR LDEFO icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 21) ;
      Message 'Erreur relative' errrel 'Composante ' (EXTR LDEFO icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 30) ;
      Message 'Erreur absolue' errabs 'Composante ' (EXTR LDEIN icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 31) ;
      Message 'Erreur relative' errrel 'Composante ' (EXTR LDEIN icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 40) ;
      Message 'Erreur absolue' errabs 'Composante ' (EXTR LCONT icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 41) ;
      Message 'Erreur relative' errrel 'Composante ' (EXTR LCONT icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 50) ;
      Message 'Erreur absolue' errabs 'Composante ' (EXTR LVARI icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

   SI (EGA ierr 51) ;
      Message 'Erreur relative' errrel 'Composante ' (EXTR LVARI icomp)
              ' Point Gauss' igau 'Etat' ietat ;
      ERRE 5 ;
   FINSI ;

SINON ;

   Message 'Resultats concordants entre les deux modeles' ;
   Message 'Aucune erreur relative superieure a ' critere
           ' pour les composantes' ;
   Message (EXTR LDEFO idefo) '  ' (EXTR LDEIN idein)
                              '  ' (EXTR LCONT icont) ;
   ERRE 0 ;

FINSI ;

FIN ;

 

 

 

 

© Cast3M 2003 - All rights reserved.
Disclaimer