Download cl_B_3.dgibi

Back to the list

* fichier :  cl_B_3.dgibi
*C***********************************************************************
*C*                                                                     *
*C* PROJET      : Opérateur CLMI                                        *
*C* NOM         : cl_B_3.dgibi                                          *
*C* DESCRIPTION : Jeu de données pour le calcul d'une couche limite     *
*C*               laminaire par la méthode à 2 équations                *
*C* LANGAGE     : Gibiane                                               *
*C* AUTEUR      : Guillaume VENCO - DRN/DMT/SEMT/LTMF                   *
*C*                                                                     *
*C***********************************************************************
*C*                                                                     *
*C* APPELES     : Opérateur CLMI                                        *
*C*                                                                     *
*C***********************************************************************
*C*                                                                     *
*C*                                                                     *
*C***********************************************************************
*C*                                                                     *
*C* VERSION     : 17/05/2000                                            *
*C* CREATION    : 18/02/2000                                            *
*C*                                                                     *
*C***********************************************************************

'OPTION' dime 2 elem seg2 ;
'OPTION'  trace x ;

 COMPLET=FAUX;
 GRAPH  =FAUX;

*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>Maillage et domaine>>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
P1 = 0.3 0.;
p2 =  10. 0. ;
nb1 = 10;
p1p2 = 'DROIT' p1 p2 'DINI' 0.00001 'DFIN' 1. ;
*p1p2 = 'DROIT' p1 p2 20;
mt = p1p2 ;
* 'TRACER'  mt ;

*Définition du modèle
Mmt = 'CHANGER'  mt 'QUAF' ;
Mail = 'CHANGER' Mmt 'POI1';
Pt0 = Mail 'ELEM' 1;
$mt = 'MODELISER'  Mmt 'NAVIER_STOKES' 'LINE' ;

*Données
Ue0 = 0.001*(0.3**(1./6));
NU = 1.d-6 ;

*valeurs initiales: valeurs données par Falkner-Skan
D20 =0.50895*((0.3*(NU/Ue0))**(0.5));
D30 = 1.60069*D20;

 
*Pas de temps et nombre de pas
DT = 0.1;
NBIT = 30;
Si complet;
NBIT = 300;
finsi;

*Champ de vitesse constant
K=0.001;
m=(1./6.);
m1= 'DOMA' $mt 'SOMMET';
X = 'COORDONNEE' 1 m1;
X1 = (X**m);
UEX = K*X1;
UE = 'KCHT' $mt scal 'SOMMET' UEX;
X2 = (X**(m-1));
DUEX = K*m*X2 ;
DUE = 'KCHT' $mt scal 'SOMMET' DUEX;

*X = 'COORDONNEE' 1 mt;
*UE = 'KCHT' $mt scal 'SOMMET' Ue0;
*DUE = 'KCHT' $mt scal 'SOMMET' 0.;

*Coefficients de l'équation
A = 'KCHT' $mt scal sommet 1.;
B = 'KCHT' $mt scal sommet 1.;
SM  = 'KCHT'  $mt scal sommet 1. ;

*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>Création de la table RV et de la table RK>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*               dY         Cf               >>>>>>>>>>>>>>>
*CLMI résout A ---- + B = ---- = SM         >>>>>>>>>>>>>>>>
*               dX          2               >>>>>>>>>>>>>>>>
* Les coef A, B et SM sont calculés dans    >>>>>>>>>>>>>>>>
*        CLMI suivant les cas               >>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

rv = 'EQEX'  'OMEGA' 1.  'NITER' 1  'ITMA' 0   'FIDT' 1
     'OPTI' 'EF' 'IMPL' 'CENTREE' 'BDF2' 
     'ZONE' $mt
     'OPER' 'DFDT' 1. 'D2NM' 'D2N2' DT  'INCO' 'D2' ;
*     'OPER' 'DFDT' 1. 'D2NM' DT  'INCO' 'D2' ;
     
rv = 'EQEX' rv
     'OPTI' 'EF' 'IMPL' 'SUPG'
     'ZONE'  $mt
     'OPER'  'CLMI' 3 1 UE DUE 'D2NM' 'D3NM' 'INCO' 'D2';

rv = 'EQEX' rv
     'OPTI' 'EF' 'IMPL' 'CENTREE' 'BDF2' 
     'ZONE' $mt
*    'OPER' 'DFDT' 1. 'D3NM' DT  'INCO' 'D3' ;
     'OPER'  'DFDT' 1. 'D3NM' 'D3N2' DT  'INCO' 'D3';
     
rv = 'EQEX' rv
     'OPTI' 'EF' 'IMPL' 'SUPG'
     'ZONE'  $mt
     'OPER'  'CLMI' 3 2 UE DUE 'D3NM' 'D2NM' 'INCO' 'D3';
                    
rv = 'EQEX' rv
      'CLIM' 'D2' 'TIMP' pt0 D20
      'CLIM' 'D3' 'TIMP' pt0 D30;


rv.inco = 'TABLE'  inco ;
rv.inco.'D2'=  'KCHT'  $mt scal sommet D20;
rv.inco.'D2NM'=  'KCHT'  $mt scal sommet D20;
rv.inco.'D2N2'=  'KCHT'  $mt scal sommet D20;
rv.inco.'D3'=  'KCHT'  $mt scal sommet D30;
rv.inco.'D3NM'=  'KCHT'  $mt scal sommet D30;
rv.inco.'D3NM'=  'KCHT'  $mt scal sommet D30;
rv.inco.'D3N2'=  'KCHT'  $mt scal sommet D30;
 
ltps = 'PROG' 0. ;
lteta = 'PROG' 0. ;
TPS = 0. ;
nupt = 0 ;
mts1 = 'DOMA'  $mt 'SOMMET' ;
pt1 = 'POIN'  mts1 2 ;
'LISTE'  pt1 ;

*'OPTION'  donn 5 ;

'REPETER'  BCLT nbit ;
nupt=nupt+1;
tps=tps+dt ;
mess ' Pas de temps DT=' dt ' Temps = ' tps ;
ltps=ltps et (prog tps) ;
EXEC  rv ;
teta='EXTRAIRE'  (rv.inco.'D2') 'SCAL' pt1 ;
mess ' Teta=' teta ;
lteta= lteta et ('PROG' teta);


YNM = rv.'INCO'.'D2NM';
ZNM = rv.'INCO'.'D3NM';
rv.'INCO'.'D2N2' = rv.'INCO'.'D2NM';
rv.'INCO'.'D2NM' = rv.'INCO'.'D2';
rv.'INCO'.'D3N2' = rv.'INCO'.'D3NM';
rv.'INCO'.'D3NM' = rv.'INCO'.'D3';

'FIN'  bclt ;

li4 = 'PROG' 'EXPO' 'A' -1. 'B' 0. ltps;
ev2 = 'EVOL' 'ROUGE' manu ltps li4 ;
evt= evol manu ltps lteta;



*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>> résultats>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
absc = 'COORDONNEE' 1 mt;
evx = 'EVOL' 'CHPO' absc mt;
*quantité de mouvement
d21 = (rv.inco.'D2');
ev = 'EVOL' 'ROUGE' 'CHPO' d21 mt;
RD2 = (UE*d21)*(1./NU);
ev = 'EVOL' 'ROUGE' 'CHPO' RD2 mt;
*épaisseur d'énergie cinétique
d31= (rv.inco.'D3');
ev10 = 'EVOL' 'ROUGE' 'CHPO' d31 mt;
RD3 = UE*d31/NU;
ev10 = 'EVOL' 'ROUGE' 'CHPO' RD3 mt;
*Epaisseur de déplacement
d11 = (rv.inco.'D1');
RD1 = UE*d11/NU;
evd1 = 'EVOL' 'ROUGE' 'CHPO' RD1 mt;
*évolution de la vitesse extérieure et du gradient
vit = 'EVOL' 'CHPO' UE mt;
gvit = 'EVOL' 'ROUG' 'CHPO' DUE mt;
*évolution du frottement à la paroi
Cf=2*(0.22052D-6)*((YNM*UE)**(-1));
f = 'EVOL' 'ROUGE' 'CHPO' Cf mt;
*évolution du facteur de forme H final
Hs = rv.inco.'H';
hev = 'EVOL' 'ROUGE''CHPO' Hs mt;
*évolution du facteur H32
H32=d31*(d21**(-1));
ev32 = 'EVOL' 'ROUGE' 'CHPO' H32 mt;

*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*solution théorique de FALKNER SKAN>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*caractéristique des solutions de FALKNER-SKAN
cteta=0.50895;
cd1 = 1.20511;
ccf=0.58255;
Hfs=2.5911;
*coefficient de frottement
RX = X*UE*(1./NU);
Cfb = 2*ccf*(RX**(-0.5));
ev3 = 'EVOL' 'BLEU' 'CHPO' Cfb mt;
*quantité de mvt
* Rteta = 0.664(Rx)^0.5
RD2b = (cteta*(RX**0.5)); 
ev4 =  'EVOL' 'BLEU' 'CHPO' RD2b mt;
*facteur de forme
Hb = 'KCHT' $mt scal sommet Hfs;
ev5 = 'EVOL' 'BLEU' 'CHPO' Hb mt;
*coef H32 théorique
H32b='KCHT' $mt scal sommet 1.60069;
ev11= 'EVOL' 'BLEU' 'CHPO' H32b mt;
*épaisseur de'énergie cinétique
RD3t=H32b*RD2b;
ev12='EVOL' 'BLEU' 'CHPO' RD3t mt;
*épaisseur de déplacement théorique
RD1b = (cd1*(RX**0.5));
evdb =  'EVOL' 'BLEU' 'CHPO' RD1b mt;
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*Courbes>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Si Graph ;

'DESSIN'  (evt) 'TITR' 'Convergence de la valeur au dernier noeud'
           'TITY' 'Valeurs de Y' 'TITX' 'Temps';

'DESSIN' (vit 'ET' gvit)
     'TITRE' 'Vitesse et gradient de vitesse extérieure';

TAB1 = 'TABLE' ;
TAB1.'TITRE' = 'TABLE' ;
TAB1.'TITRE' . 1 = MOT ' Simulation';
TAB1.'TITRE' . 2 = MOT ' Falkner-Skan';
          
'DESSIN' (f 'ET' ev3) 'TITRE' 'Coefficient de frottement à la paroi'
           'TITX' 'Abscisses'
           'TITY' 'Cf'
           'GRIL'
           'LEGE' TAB1;     

'DESSIN' (ev 'ET' ev4) 'TITRE' 'Epaisseur de quantité de mouvement'
       'TITY' 'Rteta'
       'TITX' 'X'
       'GRIL'
       'LEGE' TAB1;

'DESSIN' (ev10 'ET' ev12) 'TITRE' 'Epaisseur d énergie cinétique'
       'TITY' 'Rdelta3'
       'TITX' 'X'
       'GRIL'
       'LEGE' TAB1;

'DESSIN' (evd1 'ET' evdb) 'TITRE' 'Epaisseur de déplacement'
       'TITY' 'Rdelta1'
       'TITX' 'X'
       'GRIL'
       'LEGE' TAB1;         

'DESSIN' (hev 'ET' ev5) 'TITRE' 'Evolution du facteur de forme'
        'TITX' 'Abscisses'
        'TITY' 'H'
        'LEGE' TAB1;

'DESSIN' (ev32 'ET' ev11) 'TITRE' 'Evolution du facteur H32'
        'TITX' 'Abscisses'
        'TITY' 'H32'
        'LEGE' TAB1;
Finsi ;
        
*calcul de l'erreur au sens de la norme L2
diag = 'DOMA' $mt 'XXDIAGSI';
r = (RD2-RD2B)**2;
erl2 = 'SOMT'(diag*r);
'MESSAGE' 'Erreur au sens de la norme L2=';
'LISTE'  erl2;
************************************************************************
************************************************************************
*Facteur de forme
x = 'EXTRAIRE' evx 'ABSC';
hs = 'EXTRAIRE' hev 'ORDO';
ht = 'EXTRAIRE' ev5 'ORDO';
nlist = 'DIME' x;
*'OPTION' echo 0;
*'OPTION' impr 'lam3_H.data';
'REPETER' BLIST nlist;
   xi = 'EXTRAIRE' x &BLIST;
   hsi = 'EXTRAIRE' hs &BLIST;
   hti = 'EXTRAIRE' ht &BLIST;
*  'MESSAGE' ('CHAINE' xi ' ' hsi ' ' hti);
'FIN' BLIST;
*'OPTION' impr 'Bidon';
*Epaisseur de quantité de mouvement
x = 'EXTRAIRE' evx 'ABSC';
d2s = 'EXTRAIRE' ev 'ORDO';
d2t = 'EXTRAIRE' ev4 'ORDO';
nlist = 'DIME' x;
*'OPTION' echo 0;
*'OPTION' impr 'lam3_D2.data';
'REPETER' BLIST nlist;
   xi = 'EXTRAIRE' x &BLIST;
   d2si = 'EXTRAIRE' d2s &BLIST;
   d2ti = 'EXTRAIRE' d2t &BLIST;
*  'MESSAGE' ('CHAINE' xi ' ' d2si ' ' d2ti);
'FIN' BLIST;
*'OPTION' impr 'Bidon';
*Epaisseur d'énergie cinétique
x = 'EXTRAIRE' evx 'ABSC';
d3s = 'EXTRAIRE' ev10 'ORDO';
d3t = 'EXTRAIRE' ev12 'ORDO';
nlist = 'DIME' x;
*'OPTION' echo 0;
*'OPTION' impr 'lam3_D3.data';
'REPETER' BLIST nlist;
   xi = 'EXTRAIRE' x &BLIST;
   d3si = 'EXTRAIRE' d3s &BLIST;
   d3ti = 'EXTRAIRE' d3t &BLIST;
*  'MESSAGE' ('CHAINE' xi ' ' d3si ' ' d3ti);
'FIN' BLIST;
*'OPTION' impr 'Bidon';
*Epaisseur de déplacement
x = 'EXTRAIRE' evx 'ABSC';
d1s = 'EXTRAIRE' evd1 'ORDO';
d1t = 'EXTRAIRE' evdb 'ORDO';
nlist = 'DIME' x;
*'OPTION' echo 0;
*'OPTION' impr 'lam3_D1.data';
'REPETER' BLIST nlist;
   xi = 'EXTRAIRE' x &BLIST;
   d1si = 'EXTRAIRE' d1s &BLIST;
   d1ti = 'EXTRAIRE' d1t &BLIST;
*  'MESSAGE' ('CHAINE' xi ' ' d1si ' ' d1ti);
'FIN' BLIST;
*'OPTION' impr 'Bidon';

*Coeff de frottement
x = 'EXTRAIRE' evx 'ABSC';
cfs = 'EXTRAIRE' f 'ORDO';
cft = 'EXTRAIRE' ev3 'ORDO';
nlist = 'DIME' x;
*'OPTION' echo 0;
*'OPTION' impr 'lam3_CF.data';
'REPETER' BLIST nlist;
   xi = 'EXTRAIRE' x &BLIST;
   cfsi = 'EXTRAIRE' cfs &BLIST;
   cfti = 'EXTRAIRE' cft &BLIST;
*  'MESSAGE' ('CHAINE' xi ' ' cfsi ' ' cfti);
'FIN' BLIST;
*'OPTION' impr 'Bidon';

'FIN' ;






 

 

© Cast3M 2003 - All rights reserved.
Disclaimer