Download primtest1.dgibi

Back to the list

* 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'  'DIME' 2 ;
 '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
*    

 GAMMA = 'BRUI' 'BLAN' 'UNIF' 1.4 0.3  MAI1 ;

 RN    = 'BRUI' 'BLAN' 'UNIF' 1.24 0.5  MAI1 ;
 PN    = 'BRUI' 'BLAN' 'UNIF' 11.24 5.5  MAI1 ;
 VNY   = ('NOMC' 'UY'
        ('BRUI' 'BLAN' 'UNIF' 1.24 7.5  MAI1)
        'NATU' 'DISCRET') ; 
 VNX   = ('NOMC' 'UX'
        ('BRUI' 'BLAN' 'UNIF' 0.24 0.5  MAI1)
        'NATU' 'DISCRET') ;
 VN    = VNX 'ET' VNY ;

*
*** La quantité de mouvement
*

 GN =  VN '*' RN  ('MOTS' 'UY' 'UX') ('MOTS' 'SCAL' 'SCAL')
      ('MOTS' 'UY' 'UX') ;
 GN1 = 'COPIER' GN ;

* Composantes de GN1: 'UY', 'UX' ; 
 
*       
*** L'energie totale (ROET)
*

 GM1 = GAMMA '-' ('MANUEL' 'CHPO' MAI1 1 'SCAL' 1.0) ;
 ETHER = PN '/' GM1;
 ECIN = (0.5D0 * ('PSCAL' VN VN ('MOTS' 'UX' 'UY') ('MOTS' 'UX' 'UY')))
   '*' RN;
 EN =  ECIN '+' ETHER ;

 VITESSE PRES   = 'PRIM' 'PERFMONO'  RN GN EN GAMMA;

 ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ;

 ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS';
 VCELL = ('MAXIMUM' VN 'ABS') ;
 'SI' (VCELL > 0);
    ERRV = ERRV '/' VCELL;
 'FINSI'  ;        

 ERRP  = ('MAXIMUM' (PRES '-' PN) 'ABS') '/' ('MAXIMUM' PN);

 'SI' (('MAXIMUM' ('PROG' ERRGN ERRV ERRP)) '>'
          1.0D-12);
     'MESSAGE' ('CHAINE' 'Erreur maximum');
     'LISTE' ('MAXIMUM' ('PROG' ERRVX ERRVY ERRP));
    'ERREUR'  5;
 'FINSI' ;

***********************
**** TEST2 ************
***********************
*
**** CHPOINTs definis sur la meme rapresentation du maillage
*    

 GAMMA = 'BRUI' 'BLAN' 'UNIF' 1.4 0.3  MAI1 ;

 RN    = 'BRUI' 'BLAN' 'UNIF' 1.24 0.5  MAI1 ;
 PN    = 'BRUI' 'BLAN' 'UNIF' 11.24 5.5  MAI1 ;
 VNY   = ('NOMC' 'UY'
        ('BRUI' 'BLAN' 'UNIF' 1.24 7.5  MAI1)
        'NATU' 'DISCRET') ; 
 VNX   = ('NOMC' 'UX'
        ('BRUI' 'BLAN' 'UNIF' 0.24 0.5  MAI1)
        'NATU' 'DISCRET') ;
 VN    = VNX 'ET' VNY ;

*
*** La quantité de mouvement
*

 GN =  VN '*' RN  ('MOTS' 'UX' 'UY') ('MOTS' 'SCAL' 'SCAL')
      ('MOTS' 'UX' 'UY') ;
 GN1 = 'COPIER' GN ;

* Composantes de GN1: 'UX', 'UY' ; 
 
*       
*** L'energie totale (ROET)
*

 GM1 = GAMMA '-' ('MANUEL' 'CHPO' MAI1 1 'SCAL' 1.0) ;
 ETHER = PN '/' GM1;
 ECIN = (0.5D0 * ('PSCAL' VN VN ('MOTS' 'UX' 'UY') ('MOTS' 'UX' 'UY')))
   '*' RN;
 EN =  ECIN '+' ETHER ;

 VITESSE PRES   = 'PRIM' 'PERFMONO'  RN GN EN GAMMA;

 ERRGN = 'MAXIMUM' (GN1 '-' GN) 'ABS' ;

 ERRV = 'MAXIMUM' (VITESSE '-' VN) 'ABS';
 VCELL = ('MAXIMUM' VN 'ABS') ;
 'SI' (VCELL > 0);
    ERRV = ERRV '/' VCELL;
 'FINSI'  ;        

 ERRP  = ('MAXIMUM' (PRES '-' PN) 'ABS') '/' ('MAXIMUM' PN);

 'SI' (('MAXIMUM' ('PROG' ERRGN ERRV ERRP)) '>'
          1.0D-12);
     'MESSAGE' ('CHAINE' 'Erreur maximum');
     'LISTE' ('MAXIMUM' ('PROG' ERRVX ERRVY ERRP));
    'ERREUR'  5;
 'FINSI' ;

        
***********************
**** TEST3 ************
***********************
*
**** CHPOINTs definis sur differents rapresentations du meme maillage
*    

 GAMMA = 'BRUI' 'BLAN' 'UNIF' 1.4 0.3  MAI1 ;

 RN    = 'BRUI' 'BLAN' 'UNIF' 1.24 0.5  MAI2 ;
 PN    = 'BRUI' 'BLAN' 'UNIF' 11.24 5.5  MAI3 ;
 VNY   = ('NOMC' 'UY'
        ('BRUI' 'BLAN' 'UNIF' 1.24 7.5  MAI4)
        'NATU' 'DISCRET') ; 
 VNX   = ('NOMC' 'UX'
        ('BRUI' 'BLAN' 'UNIF' 0.24 0.5  MAI3)
        'NATU' 'DISCRET') ;
 VN    = VNX 'ET' VNY ;

*
*** La quantité de mouvement
*

 GN =  VN '*' RN  ('MOTS' 'UY' 'UX') ('MOTS' 'SCAL' 'SCAL')
      ('MOTS' 'UY' 'UX') ;
 GN1 = 'COPIER' GN ;
* Composantes de GN1: 'UY', 'UX' ; 
 
*       
*** L'energie totale (ROET)
*

 GM1 = GAMMA '-' ('MANUEL' 'CHPO' MAI1 1 'SCAL' 1.0) ;
 ETHER = PN '/' GM1;
 ECIN = (0.5D0 * ('PSCAL' VN VN ('MOTS' 'UX' 'UY') ('MOTS' 'UX' 'UY')))
   '*' RN;
 EN =  ECIN '+' ETHER ;


 VITESSE PRES   = 'PRIM' 'PERFMONO'  RN GN EN GAMMA;

* 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'  ;        

 ERRP  = ('MAXIMUM' (PRES '-' PN) 'ABS') '/' ('MAXIMUM' PN);

 'SI' (('MAXIMUM' ('PROG' ERRGN ERRV ERRP)) '>'
          1.0D-12);
     'MESSAGE' ('CHAINE' 'Erreur maximum');
     'LISTE' ('MAXIMUM' ('PROG' ERRVX ERRVY ERRP));
    'ERREUR'  5;
 'FINSI' ;

* 
***********************
**** TEST4 ************
***********************
*
**** CHPOINTs definis sur differents rapresentations du meme maillage
*    

 GAMMA = 'BRUI' 'BLAN' 'UNIF' 1.4 0.3  MAI1 ;

 RN    = 'BRUI' 'BLAN' 'UNIF' 1.24 0.5  MAI2 ;
 PN    = 'BRUI' 'BLAN' 'UNIF' 11.24 5.5  MAI3 ;
 VNY   = ('NOMC' 'UY'
        ('BRUI' 'BLAN' 'UNIF' 1.24 7.5  MAI4)
        'NATU' 'DISCRET') ; 
 VNX   = ('NOMC' 'UX'
        ('BRUI' 'BLAN' 'UNIF' 0.24 0.5  MAI3)
        'NATU' 'DISCRET') ;
 VN    = VNX 'ET' VNY ;

*
*** La quantité de mouvement
*

 GN =  VN '*' RN  ('MOTS' 'UX' 'UY') ('MOTS' 'SCAL' 'SCAL')
      ('MOTS' 'UX' 'UY') ;
 GN1 = 'COPIER' GN ;
* Composantes de GN1: 'UX', 'UY' ; 
 
*       
*** L'energie totale (ROET)
*

 GM1 = GAMMA '-' ('MANUEL' 'CHPO' MAI1 1 'SCAL' 1.0) ;
 ETHER = PN '/' GM1;
 ECIN = (0.5D0 * ('PSCAL' VN VN ('MOTS' 'UX' 'UY') ('MOTS' 'UX' 'UY')))
   '*' RN;
 EN =  ECIN '+' ETHER ;


 VITESSE PRES   = 'PRIM' 'PERFMONO'  RN GN EN GAMMA;


* 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'  ;        

 ERRP  = ('MAXIMUM' (PRES '-' PN) 'ABS') '/' ('MAXIMUM' PN);

 'SI' (('MAXIMUM' ('PROG' ERRGN ERRV ERRP)) '>'
          1.0D-12);
     'MESSAGE' ('CHAINE' 'Erreur maximum');
     'LISTE' ('MAXIMUM' ('PROG' ERRVX ERRVY ERRP));
    'ERREUR'  5;
 'FINSI' ;

* 
 

'FIN' ;



 

 

© Cast3M 2003 - All rights reserved.
Disclaimer