Télécharger creep01_cisXY.dgibi
* fichier : creep01_cisXY.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 XY * *======================================================================= *======================================================================= * * PROCEDURES DEPENDANTES * *======================================================================= *======================================================================= * * JEU DE DONNEES PRINCIPAL * *======================================================================= *----------------------------------------------------------------------- * 0 - Maillage * PLAQUE CARREE COTE : 1 m EPAISSEUR : 1 cm 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 ; li2 = 'DROIT' 1 p02 p20 ; li3 = 'DROIT' 1 p20 p10 ; li4 = 'DROIT' 1 p10 p01 ; li5 = 'DROIT' 1 p04 p03 ; li6 = 'DROIT' 1 p03 p30 ; li7 = 'DROIT' 1 p30 p40 ; li8 = 'DROIT' 1 p40 p04 ; *----------------------------------------------------------------------- * 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 cl0 = cl1 ET cl2 ; depmax = 5.0E8 ; dep0 = FORCE schar 'FX' depmax 'FY' 0.0 'FZ' 0.0 ; * 1.4 Definition des instants de calcul * 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; TMASAU .'DEFTO'=VRAI; TMASAU .'DEFIN'=VRAI; TMASAU .'DEFLO'=VRAI; TEMPS 'ZERO' ; PASAPAS tabflup ; CPUint = TABTPS.'TEMPS_CPU'.'INITIAL' ; *----------------------------------------------------------------------- * 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 ; TMASAU=table; tabutil . 'MES_SAUVEGARDES'=TMASAU; TMASAU .'DEFTO'=VRAI; TMASAU .'DEFIN'=VRAI; TEMPS 'ZERO' ; PASAPAS tabutil ; CPUext = TABTPS.'TEMPS_CPU'.'INITIAL' ; *----------------------------------------------------------------------- * 3 - Post-traitement : comparaisons entre les deux modeles * * N.B. Comme on simule un essai de cisaillement XY : * - Critere strict (errrel < 1.d-8) sur GAXY, GIXY et SMXY * - 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 ; idefo = 4 ; idein = 4 ; icont = 4 ; ierr = 0 ; critere = 1.3d-8 ; IMESS = 0 ; ***IMESS = 1 ; nbgau = 8 ; 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 * Deformations totales igau = 0 ; REPETER BEPXXC nbgau ; igau = igau + 1 ; FIN BEPXXC ; igau = 0 ; REPETER BEPYYC nbgau ; igau = igau + 1 ; FIN BEPYYC ; igau = 0 ; REPETER BEPZZC nbgau ; igau = igau + 1 ; FIN BEPZZC ; igau = 0 ; REPETER BGAXYC nbgau ; igau = igau + 1 ; FIN BGAXYC ; igau = 0 ; REPETER BGAXZC nbgau ; igau = igau + 1 ; FIN BGAXZC ; igau = 0 ; REPETER BGAYZC nbgau ; igau = igau + 1 ; FIN BGAYZC ; * Deformations inelastiques igau = 0 ; REPETER BEIXXC nbgau ; igau = igau + 1 ; 'EIXX' 1 1 igau ; FIN BEIXXC ; igau = 0 ; REPETER BEIYYC nbgau ; igau = igau + 1 ; 'EIYY' 1 1 igau ; FIN BEIYYC ; igau = 0 ; REPETER BEIZZC nbgau ; igau = igau + 1 ; 'EIZZ' 1 1 igau ; FIN BEIZZC ; igau = 0 ; REPETER BGIXYC nbgau ; igau = igau + 1 ; 'GIXY' 1 1 igau ; FIN BGIXYC ; igau = 0 ; REPETER BGIXZC nbgau ; igau = igau + 1 ; 'GIXZ' 1 1 igau ; FIN BGIXZC ; igau = 0 ; REPETER BGIYZC nbgau ; igau = igau + 1 ; 'GIYZ' 1 1 igau ; FIN BGIYZC ; * Contraintes igau = 0 ; REPETER BSMXXC nbgau ; igau = igau + 1 ; FIN BSMXXC ; igau = 0 ; REPETER BSMYYC nbgau ; igau = igau + 1 ; FIN BSMYYC ; igau = 0 ; REPETER BSMZZC nbgau ; igau = igau + 1 ; FIN BSMZZC ; igau = 0 ; REPETER BSMXYC nbgau ; igau = igau + 1 ; FIN BSMXYC ; igau = 0 ; REPETER BSMXZC nbgau ; igau = igau + 1 ; FIN BSMXZC ; igau = 0 ; REPETER BSMYZC nbgau ; igau = igau + 1 ; FIN BSMYZC ; * Extraction des resultats de calcul : Modele externe utilisateur------ * Deplacements * Deformations totales igau = 0 ; REPETER BEPXXU nbgau ; igau = igau + 1 ; FIN BEPXXU ; igau = 0 ; REPETER BEPYYU nbgau ; igau = igau + 1 ; FIN BEPYYU ; igau = 0 ; REPETER BEPZZU nbgau ; igau = igau + 1 ; FIN BEPZZU ; igau = 0 ; REPETER BGAXYU nbgau ; igau = igau + 1 ; FIN BGAXYU ; igau = 0 ; REPETER BGAXZU nbgau ; igau = igau + 1 ; FIN BGAXZU ; igau = 0 ; REPETER BGAYZU nbgau ; igau = igau + 1 ; FIN BGAYZU ; * Deformations inelastiques igau = 0 ; REPETER BEIXXU nbgau ; igau = igau + 1 ; 'EIXX' 1 1 igau ; FIN BEIXXU ; igau = 0 ; REPETER BEIYYU nbgau ; igau = igau + 1 ; 'EIYY' 1 1 igau ; FIN BEIYYU ; igau = 0 ; REPETER BEIZZU nbgau ; igau = igau + 1 ; 'EIZZ' 1 1 igau ; FIN BEIZZU ; igau = 0 ; REPETER BGIXYU nbgau ; igau = igau + 1 ; 'GIXY' 1 1 igau ; FIN BGIXYU ; igau = 0 ; REPETER BGIXZU nbgau ; igau = igau + 1 ; 'GIXZ' 1 1 igau ; FIN BGIXZU ; igau = 0 ; REPETER BGIYZU nbgau ; igau = igau + 1 ; 'GIYZ' 1 1 igau ; FIN BGIYZU ; * Contraintes igau = 0 ; REPETER BSMXXU nbgau ; igau = igau + 1 ; FIN BSMXXU ; igau = 0 ; REPETER BSMYYU nbgau ; igau = igau + 1 ; FIN BSMYYU ; igau = 0 ; REPETER BSMZZU nbgau ; igau = igau + 1 ; FIN BSMZZU ; igau = 0 ; REPETER BSMXYU nbgau ; igau = igau + 1 ; FIN BSMXYU ; igau = 0 ; REPETER BSMXZU nbgau ; igau = igau + 1 ; FIN BSMXZU ; igau = 0 ; REPETER BSMYZU nbgau ; igau = igau + 1 ; FIN BSMYZU ; * Comparaison des deplacements----------------------------------------- icomp = 1 ; ino = 0 ; 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 ' 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 ' 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 ; 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 ' 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 ' 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 ; 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ' 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 ; gaxycmax = 0.0 ; igau = 0 ; REPETER BGAXYFC nbgau ; igau = igau + 1 ; 'GAXY' 1 1 igau ; SI (gaxy > gaxycmax) ; gaxycmax = gaxy ; FINSI ; FIN BGAXYFC ; gaxyumax = 0.0 ; igau = 0 ; REPETER BGAXYFU nbgau ; igau = igau + 1 ; 'GAXY' 1 1 igau ; SI (gaxy > gaxyumax) ; gaxyumax = gaxy ; FINSI ; FIN BGAXYFU ; Message 'GAXY max avec modele interne = ' gaxycmax ; Message 'GAXY max avec modele externe = ' gaxyumax ; Message ; gixycmax = 0.0 ; igau = 0 ; REPETER BGIXYFC nbgau ; igau = igau + 1 ; 'GIXY' 1 1 igau ; SI (gixy > gixycmax) ; gixycmax = gixy ; FINSI ; FIN BGIXYFC ; gixyumax = 0.0 ; igau = 0 ; REPETER BGIXYFU nbgau ; igau = igau + 1 ; 'GIXY' 1 1 igau ; SI (gixy > gixyumax) ; gixyumax = gixy ; FINSI ; FIN BGIXYFU ; Message 'GIXY max avec modele interne = ' gixycmax ; Message 'GIXY max avec modele externe = ' gixyumax ; Message ; smxycmax = 0.0 ; igau = 0 ; REPETER BSMXYFC nbgau ; igau = igau + 1 ; 'SMXY' 1 1 igau ; SI (smxy > smxycmax) ; smxycmax = smxy ; FINSI ; FIN BSMXYFC ; smxyumax = 0.0 ; igau = 0 ; REPETER BSMXYFU nbgau ; igau = igau + 1 ; 'SMXY' 1 1 igau ; SI (smxy > smxyumax) ; smxyumax = smxy ; FINSI ; FIN BSMXYFU ; Message 'SMXY max avec modele interne = ' smxycmax ; Message 'SMXY max avec modele externe = ' smxyumax ; Message ; SI (ierr > 0) ; SI (EGA ierr 1) ; Message 'Instants de calcul non coincidants' ; FINSI ; SI (EGA ierr 10) ; ' Noeud' ino 'Etat' ietat ; FINSI ; SI (EGA ierr 11) ; ' Noeud' ino 'Etat' ietat ; FINSI ; SI (EGA ierr 20) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 21) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 30) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 31) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 40) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 41) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 50) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SI (EGA ierr 51) ; ' Point Gauss' igau 'Etat' ietat ; FINSI ; SINON ; Message 'Resultats concordants entre les deux modeles' ; Message 'Aucune erreur relative superieure a ' critere ' pour les composantes' ; FINSI ; FIN ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales