* fichier :  NSmchaml_nonreg.dgibi
*** Jeu de données permettant de tester les spg des chaml
*** suivant le type d'élément fini (vitesse/pression) choisi
*** (option navi)
*** Date de création : 16/03/2005
*** Auteur           : A. Bleyer

'OPTI' 'DIME' 2 'ELEM' 'QUA8' ;
'OPTI' 'TRACE' 'X' ;
*'OPTI' 'TRACE' 'PSC' ;

P0 = 0.0 0.0 ;
P1 = 0.0 1.0 ;

*NX = 1 ;
*NY = 1 ;
NX = 3 ;
NY = 3 ;
EPSI = 1.E-6 ;

*D0 = P0 'DROI' (-1*NY) P1 'DINI' 0.1 'DFIN' 0.5 ;
*D1 = P0 'DROI' (-1*NY) P1 'DINI' 0.5 'DFIN' 0.1 ;
D0 = P0 'DROI' NY P1 ;
D1 = P0 'DROI' NY P1 ;
D1 = D1 'PLUS' (1.0 0.0) ;
D2 = D0 'PLUS' (2.0 0.0) ;

S1 = D0 'REGL' NX D1 ;
'OPTI' 'ELEM' 'TRI6' ;
S2 = D1 'REGL' NX D2 ;
S0 = S1 'ET' S2 ;
'ELIM' S0 EPSI ;

M_S0 = 'CHAN' S0 'QUAF' ;
M_S1 = 'CHAN' S1 'QUAF' ;
M_S2 = 'CHAN' S2 'QUAF' ;
'ELIM' (M_S0 ET M_S1 ET M_S2) EPSI ;

LOPT = 'MOTS' 'LICE' 'LIMS' 'MCCE' 'MCP1' 'MCMS' 'QFP1' 'QFMS' ;
ERROR = 0 ;

'OPTI' 'ECHO' 0 ;

'REPETER' BCL1 ('DIME' LOPT) ;

*** choix du couple Vitesse/Pression
OPT1 = 'EXTR' LOPT &BCL1 ;
*'OPTI' 'NAVI' OPT1 ;

'MESS' 'Element fini en cours : ' OPT1 ;

*** création des objets modèles
$S0 = 'MODE' M_S0 'NAVIER_STOKES' OPT1 ;
$S1 = 'MODE' M_S1 'NAVIER_STOKES' OPT1 ;
$S2 = 'MODE' M_S2 'NAVIER_STOKES' OPT1 ;

******************** traitement SOMMET ****************
********** champ scalaire à une seule composante ******
MS0 = 'DOMA' $S0 'SOMMET' ;
X1 Y1 = 'COORD' MS0 ;

CX1 = 'KCHT' $S0 'SCAL' 'SOMMET' X1 ;
CY1 = 'KCHT' $S0 'SCAL' 'SOMMET' Y1 ;
KX1 = 'CHAN' 'CHAM' CX1 $S0 ;
KY1 = 'CHAN' 'CHAM' CY1 $S0 ;

*** verification bon passage SOMMET --> CENTREP1
'SI' (&BCL1 '>EG' 4) ;
KKX2 = 'CHAN' KX1 $S0 'P1CENTRE' ;
KKY2 = 'CHAN' KY1 $S0 'P1CENTRE' ;

SP1 = 'DOMA' $S0 'CENTREP1' ;
XP1 YP1 = 'COORD' SP1 ;

CX2 = 'KCHT' $S0 'SCAL' 'CENTREP1' XP1 ;
CY2 = 'KCHT' $S0 'SCAL' 'CENTREP1' YP1 ;
KX2 = 'CHAN' 'CHAM' CX2 $S0 ;
KY2 = 'CHAN' 'CHAM' CY2 $S0 ;

VALX_2 = 'MAXI' (KX2 - KKX2) 'ABS' ;
VALY_2 = 'MAXI' (KY2 - KKY2) 'ABS' ;

'MESS' 'SOMMET->CENTREP1 ' VALX_2 VALY_2 ;
'SI' ((VALX_2 '>' EPSI) 'OU' (VALY_2 '>' EPSI)) ;
'MESS' 'Probleme elt fini : ' OPT1 ' passage SOMMET->CENTREP1' ;
ERROR = ERROR + 1 ;
'FINSI' ;

CKX2 = 'CHAN' KX2 $S0 'NOEUD' ;
CKY2 = 'CHAN' KY2 $S0 'NOEUD' ;

VALX_2 = 'MAXI' (KX1 - CKX2) 'ABS' ;
VALY_2 = 'MAXI' (KY1 - CKY2) 'ABS' ;

'MESS' 'SOMMET<-CENTREP1 ' VALX_2 VALY_2 ;
'SI' ((VALX_2 '>' EPSI) 'OU' (VALY_2 '>' EPSI)) ;
'MESS' 'Probleme elt fini : ' OPT1 ' passage SOMMET<-CENTREP1' ;
ERROR = ERROR + 1 ;
'FINSI' ;

'FINSI' ;

*** verification bon passage SOMMET --> CENTRE
'SI' ((&BCL1 '<' 4) 'OU' (&BCL1 '>' 5)) ;
KKX3 = 'CHAN' KX1 $S0 'GRAVITE' ;
KKY3 = 'CHAN' KY1 $S0 'GRAVITE' ;

SC1 = 'DOMA' $S0 'CENTRE' ;
XC1 YC1 = 'COORD' SC1 ;

CX3 = 'KCHT' $S0 'SCAL' 'CENTRE' XC1 ;
CY3 = 'KCHT' $S0 'SCAL' 'CENTRE' YC1 ;
KX3 = 'CHAN' 'CHAM' CX3 $S0 ;
KY3 = 'CHAN' 'CHAM' CY3 $S0 ;

VALX_3 = 'MAXI' (KX3 - KKX3) 'ABS' ;
VALY_3 = 'MAXI' (KY3 - KKY3) 'ABS' ;

'MESS' 'SOMMET->CENTRE ' VALX_3 VALY_3 ;
'SI' ((VALX_3 '>' EPSI) 'OU' (VALY_3 '>' EPSI)) ;
'MESS' 'Probleme elt fini : ' OPT1 ' passage SOMMET->CENTRE' ;
ERROR = ERROR + 1 ;
'FINSI' ;

'FINSI' ;

*** verification bon passage SOMMET --> MSOMMET
'SI' (&BCL1 '>' 3) ;
KKX4 = 'CHAN' KX1 $S0 'MSOMMET' ;
KKY4 = 'CHAN' KY1 $S0 'MSOMMET' ;

SM1 = 'DOMA' $S0 'MSOMMET' ;
XM1 YM1 = 'COORD' SM1 ;

CX4 = 'KCHT' $S0 'SCAL' 'MSOMMET' XM1 ;
CY4 = 'KCHT' $S0 'SCAL' 'MSOMMET' YM1 ;
KX4 = 'CHAN' 'CHAM' CX4 $S0 ;
KY4 = 'CHAN' 'CHAM' CY4 $S0 ;

VALX_4 = 'MAXI' (KX4 - KKX4) 'ABS' ;
VALY_4 = 'MAXI' (KY4 - KKY4) 'ABS' ;

'MESS' 'SOMMET->MSOMMET ' VALX_4 VALY_4 ;
'SI' ((VALX_4 '>' EPSI) 'OU' (VALY_4 '>' EPSI)) ;
'MESS' 'Probleme elt fini : ' OPT1 ' passage SOMMET->MSOMMET' ;
ERROR = ERROR + 1 ;
'FINSI' ;

CKX4 = 'CHAN' KX4 $S0 'NOEUD' ;
CKY4 = 'CHAN' KY4 $S0 'NOEUD' ;

VALX_4 = 'MAXI' (KX1 - CKX4) 'ABS' ;
VALY_4 = 'MAXI' (KY1 - CKY4) 'ABS' ;

'MESS' 'SOMMET<-MSOMMET ' VALX_4 VALY_4 ;
'SI' ((VALX_4 '>' EPSI) 'OU' (VALY_4 '>' EPSI)) ;
'MESS' 'Probleme elt fini : ' OPT1 ' passage SOMMET<-MSOMMET' ;
ERROR = ERROR + 1 ;
'FINSI' ;

'FINSI' ;



'FIN' BCL1 ;


'SI' (ERROR '>' 0) ;
'MESS' ERROR ' Probleme(s)' ;
'MESS' 'Necessite des verifications !' ;
'ERRE' 5 ;
'FINSI' ;

'FIN' ;

'OPTI' 'ECHO' 1 'DONN' 5 ;
 

 

 

