*
* fichier : pvec.dgibi
*
'OPTI' 'ECHO' 0 ;
*
'SAUTER' 2 'LIGNE' ;
'MESSAGE' ' Execution de pvec.dgibi' ;
'SAUTER' 2 'LIGNE' ;
*
interact = faux ;
*
************************************************************************
* NOM : PVEC
* DESCRIPTION : Cas-test pour l'opérateur PVEC avec des CHPOs
* On vérifie en 2D :
* | PVEC A |^2 = | A | ^ 2
* | PSCA A (PVEC A) |^2 = 0
* et en 3D l'égalité :
* | PVEC A B |^2 + | PSCA A B |^2 = | A |^2 | B |^2
*
*
* LANGAGE : GIBIANE-CAST3M
* AUTEUR : Stéphane GOUNAND (CEA/DEN/DM2S/SFME/LTMF)
* mél : stephane.gounand@cea.fr
**********************************************************************
* VERSION : v1, 30/09/2011, version initiale
* HISTORIQUE : v1, 30/09/2011, création
* HISTORIQUE :
* HISTORIQUE :
************************************************************************
*
lpass = vrai ;
'OPTI' 'DIME' 2 'ELEM' 'QUA4' ;
p0 = 0. 0. ; p1 = 1. 0.22 ;
gen1 = 'DROIT' 2 p0 p1 ;
s1 = 'TRANSLATION' gen1 2 (0. 1.) ;
gen2 = 'COTE' 3 s1 ;
s2 = 'TRANSLATION' gen2 2 (0. 1.) ;
gen3 = 'COTE' 3 s2 ;
s3 = 'TRANSLATION' gen3 2 (0. 1.) ;
st = s1 'ET' s2 'ET' s3 ;
*'TRACER' st ;
ux1 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. (s1 'ET' s2) ;
uy1 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. (s1 'ET' s2) ;
vA = ('NOMC' 'UX' ux1) '+' ('NOMC' 'UY' uy1) ;
*vB = ('NOMC' 'FX' ux2) '+' ('NOMC' 'FY' uy2) ;
l1 = 'MOTS' 'UX' 'UY' ; l2 = 'MOTS' 'FX' 'FY' ;
veca = 'PVEC' vA l1 l2 ;
na = 'PSCAL' vA vA l1 l1 ;
nveca = 'PSCAL' veca veca l2 l2 ;
aveca = 'PSCAL' vA veca l1 l2 ;
naveca = '**' aveca 2 ;
*
nna = 'MAXIMUM' ('-' na nveca) 'ABS' ;
nnb = 'MAXIMUM' naveca ;
*
tolerr = 1.D-13 ;
tst1 = 'EGA' nna 0. tolerr ;
tst2 = 'EGA' nnb 0. tolerr ;
*
'OPTI' 'DIME' 3 ;
*
uz1 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. (s1 'ET' s2) ;
ux2 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. (s1 'ET' s2 'ET' s3) ;
uy2 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. (s2 'ET' s3) ;
uz2 = 'BRUIT' 'BLAN' 'UNIF' 0. 1. s2 ;
*
vA = ('NOMC' 'UX' ux1) '+' ('NOMC' 'UY' uy1) '+' ('NOMC' 'UZ' uz1) ;
vB = ('NOMC' 'FX' ux2) '+' ('NOMC' 'FY' uy2) '+' ('NOMC' 'FZ' uz2) ;
l1 = 'MOTS' 'UX' 'UY' 'UZ' ; l2 = 'MOTS' 'FX' 'FY' 'FZ' ;
*
avecb = 'PVEC' vA vB l1 l2 l1 ;
ascab = 'PSCAL' vA vB l1 l2 ;
navecb = 'PSCAL' avecb avecb l1 l1 ;
nascab = '**' ascab 2 ;
na = 'PSCAL' vA vA l1 l1 ;
nb = 'PSCAL' vB vB l2 l2 ;
nab = '*' na nb ;
*
res = nab '-' navecb '-' nascab ;
nres = 'MAXIMUM' res 'ABS' ;
tst3 = 'EGA' nnb 0. tolerr ;
tst = tst1 'ET' tst2 'ET' tst3 ;
'MESSAGE' ('CHAINE' 'Test :') ;
'MESSAGE' ('CHAINE' ' nna = ' nna ) ;
'MESSAGE' ('CHAINE' ' nnb = ' nnb ) ;
'MESSAGE' ('CHAINE' ' nres = ' nres) ;
'SI' tst ;
'MESSAGE' 'Test OK' ;
'SINON' ;
'MESSAGE' '!!! Test not passed ' ;
'FINSI' ;
lpass = lpass 'ET' tst ;
*
'SAUTER' 2 'LIGNE' ;
'SI' lpass ;
'MESSAGE' 'Tout sest bien passe' ;
'SINON' ;
'MESSAGE' 'Il y a eu des erreurs' ;
'FINSI' ;
'SAUTER' 2 'LIGNE' ;
'SI' interact ;
'OPTION' 'DONN' 5 'ECHO' 1 ;
'FINSI' ;
'SI' ('NON' lpass) ;
'ERREUR' 5 ;
'FINSI' ;
*
'FIN' ;
© Cast3M 2003 - All rights reserved.
Disclaimer