* fichier : kopsrot2D.dgibi ***************** CAS TEST : kopsrot2D.dgibi ************************* * GRAPH = faux ; eps0 = 1.D-10 ; 'SAUT' 'PAGE' ; * *------------------------------------------------------------------- * TEST kopsrot2D * * Ce test permet de vérifier le bon fonctionnement de l'option ROT * de KOPS en 2D PLAN et 2D AXIS pour les trois familles d'éléments * compatibles avec le modèle NAVIER_STOKES * * On calcule la composante non nulle du rotationel d'un champ de vecteur * (a0+a1*x+a2*y,b0+b1*x+b2*y). Il est porté par z en cartésien ou par * Eteta en axi, ces vecteurs unitaires formant la base directe ad'hoc : * (x,y,z) en cartésien et (Er, Eteta, Ez) en axi. Il est ici constant et * égale à : * (b1-a2) en cartésien * (a2-b1) en axisymétrique * * On s'attend à une précision de l'ordre de la précision machine. * *------------------------------------------------------------------- * 'SAUT' 'PAGE' ; * *------------------------------------------------------------------------- * Procedure test2D * /S test1 : boolean (vrai si ok) *------------------------------------------------------------------------- 'DEBP' test2D ; * a0 = 7. ; a1= 2. ; a2= -5. ; b0 = 11. ; b1= 1. ; b2= 3. ; * * 'SI' ('EGA' testmode 'AXIS') ; vtest1 = mini1 + maxi1 / 2. - (a2-b1) ; 'SINO' ; vtest1 = mini1 + maxi1 / 2. - (b1-a2) ; 'FINSI' ; test1 = faux ; 'SI' (('ABS' vtest1) < eps0) ; test1 = vrai ; 'FINSI' ; * 'SI' ('EGA' graph vrai) ; 'LIST' mini1 ; 'LIST' maxi1 ; 'LIST' vtest1 ; 'LIST' test1 ; * 'TRAC' ('ELNO' $domtot rotu1) domtot 'TITRE' 'Rotationnel' ; 'FINSI' ; 'FINP' test1 ; *------------------------------------------------------------------------- * * * Maillage Lx = 1. ; Ly = 1. ; Nx = 6 ; Ny = 7 ; * p1 = 0. 0. ; p2 = Lx 0. ; p3 = Lx Ly ; p4 = 0. Ly ; * * _domtot = 'CHANGER' 'QUAF' domtot0 ; * * Tests en QUAF, MACRO et LINE pour les MODE AXIS et PLAN MotDiscr = 'QUAF' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a0 = test2D ; MotDiscr = 'MACRO' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a1 = test2D ; MotDiscr = 'LINE' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a2 = test2D ; * * MotDiscr = 'QUAF' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a3 = test2D ; MotDiscr = 'MACRO' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a4 = test2D ; MotDiscr = 'LINE' ; $domtot = 'MODELISER' _domtot 'NAVIER_STOKES' MotDiscr ; a5 = test2D ; * * Test de non regression 'SI' a0 ; va0 = 'VRAI' ; 'SINO' ; va0 = 'FAUX' ; 'FINSI' ; 'SI' a1 ; va1 = 'VRAI' ; 'SINO' ; va1 = 'FAUX' ; 'FINSI' ; 'SI' a2 ; va2 = 'VRAI' ; 'SINO' ; va2 = 'FAUX' ; 'FINSI' ; 'SI' a3 ; va3 = 'VRAI' ; 'SINO' ; va3 = 'FAUX' ; 'FINSI' ; 'SI' a4 ; va4 = 'VRAI' ; 'SINO' ; va4 = 'FAUX' ; 'FINSI' ; 'SI' a5 ; va5 = 'VRAI' ; 'SINO' ; va5 = 'FAUX' ; 'FINSI' ; 'MESS' 'QUAF AXIS ' va0 ; 'MESS' 'MACRO AXIS ' va1 ; 'MESS' 'LINE AXIS ' va2 ; 'MESS' 'QUAF PLAN ' va3 ; 'MESS' 'MACRO PLAN ' va4 ; 'MESS' 'LINE PLAN ' va5 ; test = a0 'ET' a1 'ET' a2 'ET' a3 'ET' a4 'ET' a5 ; * * Compte-rendu de fin et sortie 'SI' test ; 'SINO' ; 'FINSI' ; 'FIN' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales