* fichier : primtest1.dgibi ************************************************************************ ************************************************************************ *********************************************************** **** APPROCHE VF "Cell-Centred Formulation" pour la **** **** solution des **** **** Equations d'Euler pour un gaz parfait **** **** OPERATEUR PRIM **** **** Gaz monoespece "calorically perfect" **** **** **** **** A. BECCANTINI DRN/DMT/SEMT/TTMF MARS 1998 **** *********************************************************** 'OPTION' 'ELEM' QUA4 ; 'OPTION' 'ECHO' 0 ; 'OPTION' 'TRAC' 'PS'; * **** GRAPH * GRAPH = FAUX ; * GRAPH = VRAI ; *************************** ***** DOMAINE SPATIAL **** *************************** A1 = 0.0D0 0.0D0; A2 = 2.0D0 0.0D0; A3 = 3.0D0 0.0D0; A4 = 4.0D0 1.0D0; A5 = 1.0D0 1.0D0; A6 = 0.0D0 1.0D0; MAI1 = ('MANUEL' 'POI1' A1) 'ET' ('MANUEL' 'POI1' A2) 'ET' ('MANUEL' 'POI1' A3) 'ET' ('MANUEL' 'POI1' A4) 'ET' ('MANUEL' 'POI1' A5) 'ET' ('MANUEL' 'POI1' A6) ; * MAI2 = ('MANUEL' 'POI1' A2) 'ET' ('MANUEL' 'POI1' A1) 'ET' ('MANUEL' 'POI1' A3) 'ET' ('MANUEL' 'POI1' A4) 'ET' ('MANUEL' 'POI1' A5) 'ET' ('MANUEL' 'POI1' A6) ; * MAI3 = ('MANUEL' 'POI1' A3) 'ET' ('MANUEL' 'POI1' A2) 'ET' ('MANUEL' 'POI1' A1) 'ET' ('MANUEL' 'POI1' A4) 'ET' ('MANUEL' 'POI1' A5) 'ET' ('MANUEL' 'POI1' A6) ; * MAI4 = ('MANUEL' 'POI1' A4) 'ET' ('MANUEL' 'POI1' A3) 'ET' ('MANUEL' 'POI1' A2) 'ET' ('MANUEL' 'POI1' A1) 'ET' ('MANUEL' 'POI1' A5) 'ET' ('MANUEL' 'POI1' A6) ; *********************** **** TEST1 ************ *********************** * **** CHPOINTs definis sur la meme rapresentation du maillage * 'NATU' 'DISCRET') ; 'NATU' 'DISCRET') ; VN = VNX 'ET' VNY ; * *** La quantité de mouvement * GN1 = 'COPIER' GN ; * Composantes de GN1: 'UY', 'UX' ; * *** L'energie totale (ROET) * ETHER = PN '/' GM1; '*' RN; EN = ECIN '+' ETHER ; ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ; ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS'; VCELL = ('MAXIMUM' VN 'ABS') ; 'SI' (VCELL > 0); ERRV = ERRV '/' VCELL; 'FINSI' ; 1.0D-12); 'MESSAGE' ('CHAINE' 'Erreur maximum'); 'ERREUR' 5; 'FINSI' ; *********************** **** TEST2 ************ *********************** * **** CHPOINTs definis sur la meme rapresentation du maillage * 'NATU' 'DISCRET') ; 'NATU' 'DISCRET') ; VN = VNX 'ET' VNY ; * *** La quantité de mouvement * GN1 = 'COPIER' GN ; * Composantes de GN1: 'UX', 'UY' ; * *** L'energie totale (ROET) * ETHER = PN '/' GM1; '*' RN; EN = ECIN '+' ETHER ; ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ; ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS'; VCELL = ('MAXIMUM' VN 'ABS') ; 'SI' (VCELL > 0); ERRV = ERRV '/' VCELL; 'FINSI' ; 1.0D-12); 'MESSAGE' ('CHAINE' 'Erreur maximum'); 'ERREUR' 5; 'FINSI' ; *********************** **** TEST3 ************ *********************** * **** CHPOINTs definis sur differents rapresentations du meme maillage * 'NATU' 'DISCRET') ; 'NATU' 'DISCRET') ; VN = VNX 'ET' VNY ; * *** La quantité de mouvement * GN1 = 'COPIER' GN ; * Composantes de GN1: 'UY', 'UX' ; * *** L'energie totale (ROET) * ETHER = PN '/' GM1; '*' RN; EN = ECIN '+' ETHER ; * La representation de GN change, mais il est toujours le meme * Le maillage n'est pas dans le meme ordre * L'ordre des composantes aussi * ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ; * **** L'erreur (pas d'integral pour semplifier le calcul); * ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS'; VCELL = ('MAXIMUM' VN 'ABS') ; 'SI' (VCELL > 0); ERRV = ERRV '/' VCELL; 'FINSI' ; 1.0D-12); 'MESSAGE' ('CHAINE' 'Erreur maximum'); 'ERREUR' 5; 'FINSI' ; * *********************** **** TEST4 ************ *********************** * **** CHPOINTs definis sur differents rapresentations du meme maillage * 'NATU' 'DISCRET') ; 'NATU' 'DISCRET') ; VN = VNX 'ET' VNY ; * *** La quantité de mouvement * GN1 = 'COPIER' GN ; * Composantes de GN1: 'UX', 'UY' ; * *** L'energie totale (ROET) * ETHER = PN '/' GM1; '*' RN; EN = ECIN '+' ETHER ; * La representation de GN change, mais il est toujours le meme * Le maillage n'est pas dans le meme ordre * ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ; * **** L'erreur (pas d'integral pour semplifier le calcul); * ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS'; VCELL = ('MAXIMUM' VN 'ABS') ; 'SI' (VCELL > 0); ERRV = ERRV '/' VCELL; 'FINSI' ; 1.0D-12); 'MESSAGE' ('CHAINE' 'Erreur maximum'); 'ERREUR' 5; 'FINSI' ; * 'FIN' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales