* fichier : indi2.dgibi
************************************************************************
************************************************************************
graph = faux ;
interact = faux ;
************************************************************************
* NOM : INDI2
* DESCRIPTION : On verifie des proprietes basiques d'invariance des
* indicateurs de qualite de maillage suivants :
* COHE, EQLT, ISOD, DENS, TOPO
*
*
*
* LANGAGE : GIBIANE-CAST3M
* AUTEUR : Stephane GOUNAND (CEA/DES/ISAS/DM2S/SEMT/LTA)
* mel : stephane.gounand@cea.fr
**********************************************************************
* VERSION : v1, 22/12/2025, version initiale
* HISTORIQUE : v1, 22/12/2025, création
* HISTORIQUE :
* HISTORIQUE :
************************************************************************
*
*
*
'SI' ('NON' interact) ;
'SINON' ;
'FINSI' ;
*
lok = vrai ;
*
'REPE' bdim 3 ;
idim = &bdim ;
'SI' ('EGA' idim 1) ;
'
MESS' '
*********** 1D
****************'
; lig2
= lig '
PLUS'
('
POIN'
(2 '
**'
0.5)) ; mtot = lig 'ET' lig2 ;
mtots = mtot ;
'FINS' ;
'SI' ('EGA' idim 2) ;
'
MESS' '
*********** 2D
****************'
;* Sommet du triangle equilateral
pC = 0.5 ('/' (3 '**' 0.5) 2.) ;
pC = pC '*' pi ;
qua
= lig2 '
TRAN'
1 (0.
pi) ; mtots
= tri '
ET'
(tri '
PLUS'
(1.
2.
)) ; mtot = mtots 'ET' qua ;
'FINS' ;
'SI' ('EGA' idim 3) ;
'
MESS' '
*********** 3D
****************'
;* Hauteur du tetrahedre equilateral
hD = '**' ('/' 2. 3.) 0.5 ;
pD
= '
PLUS'
('
BARY' tri
) (0.
0.
('
*' hD pi
) ) ;* Hauteur de la pyramide equilateral
hE = '/' ('**' 2. 0.5) 2. ;
pE
= '
PLUS'
('
BARY' qua
) (0.
0.
('
*' hE pi
) ) ; mtots
= tet '
ET'
(tet '
PLUS'
(1.
2.
3.
)) ; mtot = mtots 'ET' pyr 'ET' pri 'ET' cub ;
'FINS' ;
*
met
= '
MANU' '
CHPO'
1 mtot 'G'
(pi '
**'
-2) 'NATURE' 'DIFFUS'
;*
micind0
= '
MINI' cind0
; macind0
= '
MAXI' cind0
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
0 (aret) : micind0
=' micind0 ' macind0
=' macind0
;'SI' ('OU' ('NEG' micind0 1. tol) ('NEG' macind0 1. tol)) ;
'
MESS' '!!! TEST
0 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
met
= '
MANU' '
CHPO'
1 mtot 'G'
(pi '
**'
-2) 'NATURE' 'DIFFUS'
;cind1
= '
INDI' 'COHE' 'EQLT' 'ISOD' '
DENS' mtot met
;micind1
= '
MINI' cind1
; macind1
= '
MAXI' cind1
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
1 (line
) : micind1
=' micind1 ' macind1
=' macind1
;'SI' ('OU' ('NEG' micind1 1. tol) ('NEG' macind1 1. tol)) ;
'
MESS' '!!! TEST
1 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
cind2
= '
INDI' 'TOPO' mtots met
;micind2
= '
MINI' cind2
; macind2
= '
MAXI' cind2
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
2 (topo
) : micind2
=' micind2 ' macind2
=' macind2
;'SI' ('OU' ('NEG' micind2 1. tol) ('NEG' macind2 1. tol)) ;
'
MESS' '!!! TEST
2 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
mtotq
= '
CHAN' mtot quad
;*
metq
= '
MANU' '
CHPO'
1 mtotq 'G'
(pi '
**'
-2) 'NATURE' 'DIFFUS'
;cind3
= '
INDI' 'COHE' 'EQLT' 'ISOD' '
DENS' mtotq metq
;*
micind3
= '
MINI' cind3
; macind3
= '
MAXI' cind3
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
3 (quad
) : micind3
=' micind3 ' macind3
=' macind3
;'SI' ('OU' ('NEG' micind3 1. tol) ('NEG' macind3 1. tol)) ;
'
MESS' '!!! TEST
3 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
vh = 1.23; vh1 = '/' 1. vh ;
mtoth mtotsh
= '
HOMO' mtot mtots vh
('
BARY' mtot
) ;meth = '
MANU' '
CHPO'
1 mtoth 'G'
(pi '
**'
-2) 'NATURE' 'DIFFUS'
; *meth = '*' meth ('**' vh -2) ;
*
cind4
= '
INDI' 'COHE' 'EQLT' mtoth
meth ;micind4
= '
MINI' cind4
; macind4
= '
MAXI' cind4
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
4 (homo cohe
) : micind4
=' micind4 ' macind4
=' macind4
;'SI' ('OU' ('NEG' micind4 1. tol) ('NEG' macind4 1. tol)) ;
'
MESS' '!!! TEST
4 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
micind5
= '
MINI' cind5
; macind5
= '
MAXI' cind5
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
5 (homo isod
) : micind5
=' micind5 ' macind5
=' macind5
;'SI' ('OU' ('NEG' micind5 1. tol) ('NEG' macind5 1. tol)) ;
'
MESS' '!!! TEST
5 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
micind6
= '
MINI' cind6
; macind6
= '
MAXI' cind6
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
6 (homo dens) : micind6
=' micind6 ' macind6
=' macind6
;'SI' ('OU' ('NEG' micind6 vh1 tol) ('NEG' macind6 vh1 tol)) ;
'
MESS' '!!! TEST
6 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
*'REPE' ic ('DIME' ccind7a) ;
'REPE' ic idim ;
nc
= '
EXTR' ccind7a
&ic
; '
MESS' '
INDI TOPO Composante
=' nc
; cind7
= '
EXCO' nc cind7a
; micind7
= '
MINI' cind7
; macind7
= '
MAXI' cind7
; '
MESS' 'FORMAT' '
(E9.2
)' 'TEST
7 (homo topo
) : micind7
=' micind7 ' macind7
=' macind7
; 'SI' ('OU' ('NEG' micind7 vh1 tol) ('NEG' macind7 vh1 tol)) ;
'
MESS' '!!! TEST
7 failed'
; lok
= lok '
ET' faux
; 'FINS' ;
'FIN' ic ;
*
vh2 = 0.789;
mtoth2 mtotsh2
= '
HOMO' mtot mtots vh2
('
BARY' mtot
) ;meth2
= '
MANU' '
CHPO'
1 mtoth2 'G'
(pi '
**'
-2) 'NATURE' 'DIFFUS'
;*meth = '*' meth ('**' vh -2) ;
*
cind4
= '
INDI' 'COHE' 'EQLT' mtoth2 meth2
;micind4
= '
MINI' cind4
; macind4
= '
MAXI' cind4
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
4 (homo 2 cohe
) : micind4
=' micind4 ' macind4
=' macind4
;'SI' ('OU' ('NEG' micind4 1. tol) ('NEG' macind4 1. tol)) ;
'
MESS' '!!! TEST
4 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
cind5
= '
INDI' 'ISOD' mtoth2 meth2
;micind5
= '
MINI' cind5
; macind5
= '
MAXI' cind5
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
5 (homo 2 isod
) : micind5
=' micind5 ' macind5
=' macind5
;'SI' ('OU' ('NEG' micind5 1. tol) ('NEG' macind5 1. tol)) ;
'
MESS' '!!! TEST
5 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
micind6
= '
MINI' cind6
; macind6
= '
MAXI' cind6
;'
MESS' 'FORMAT' '
(E9.2
)' 'TEST
6 (homo 2 dens) : micind6
=' micind6 ' macind6
=' macind6
;'SI' ('OU' ('NEG' micind6 vh2 tol) ('NEG' macind6 vh2 tol)) ;
'
MESS' '!!! TEST
6 failed'
; lok
= lok '
ET' faux
;'FINS' ;
*
cind7a
= '
INDI' 'TOPO' mtotsh2 meth2
;*'REPE' ic ('DIME' ccind7a) ;
'REPE' ic idim ;
nc
= '
EXTR' ccind7a
&ic
; '
MESS' '
INDI TOPO Composante
=' nc
; cind7
= '
EXCO' nc cind7a
; micind7
= '
MINI' cind7
; macind7
= '
MAXI' cind7
; '
MESS' 'FORMAT' '
(E9.2
)' 'TEST
7 (homo topo
) : micind7
=' micind7 ' macind7
=' macind7
; 'SI' ('OU' ('NEG' micind7 vh2 tol) ('NEG' macind7 vh2 tol)) ;
'
MESS' '!!! TEST
7 failed'
; lok
= lok '
ET' faux
; 'FINS' ;
'FIN' ic ;
'FIN' bdim ;
*
'SI' ('NON' lok) ;
'MESSAGE' ('CHAINE' '!!! Il y a eu des erreurs') ;
'SINON' ;
'MESSAGE' ('CHAINE' 'Tout sest bien passe !') ;
'FINSI' ;
*
'SI' interact ;
'FINS' ;
'SI' ('NON' lok) ;
'FINS' ;
*
* End of dgibi file INDI2
*
'FIN' ;