* fichier : jet1p.dgibi
************************************************************************
* JET1P.DGIBI
*
* jet 2D axi monophasique incompressible
*
* pour fiche de validation du K-epsilon
*
* Pierre Cornet , sept 97
*
************************************************************************
*
COMPLET = FAUX ;
GRAPH='N' ;
SI COMPLET ;
iitma=20000 ;
SINON ;
iitma=20 ;
FINSI ;
*------------------ PROCEDURE FILTREKE ---------------------------------
DEBP FILTREKE ;
ARGU RX*TABLE ;
* Filtre sur K et Epsilon
* - Echelle de vitesse (K**0.5) inférieure à une fraction (alfk)
* de Uref (vitesse caractéristique) (alfk=1 pour l'instant)
* Uref=max(UN,U0)
* - K > K0
* - Epsilon tel que l'echelle de longueur reste inférieure
* à (L0/a) où L0 = diamètre enceinte et a=f(Re)
* => Nut < Uref*L0/a
rv=rx.'EQEX' ;
rvp=rv.'PRESSION' ;
iarg=rx.'IARG' ;
NASTOK = rv.'NAVISTOK' ;
si( non ( ega iarg 4)) ;
mess 'Procedure FILTREKE : nombre d arguments incorrect ' iarg ;
quitter FILTREKE ;
finsi ;
si ( ega ('TYPE' rx.'ARG1') 'MOT ') ;
U1=rv.'INCO'.(rx.'ARG1') ;
sinon ;
si ( ega ('TYPE' (rx.'ARG1')) 'FLOTTANT') ;
U1=rx.'ARG1' ;
sinon ;
mess 'Procedure FILTREKE : type argument 1 invalide ' ;
quitter FILTREKE ;
finsi ;
finsi ;
si ( ega ('TYPE' rx.'ARG2') 'MOT ') ;
L0=rv.'INCO'.(rx.'ARG2') ;
sinon ;
si ( ega ('TYPE' (rx.'ARG2')) 'FLOTTANT') ;
L0=rx.'ARG2' ;
sinon ;
mess 'Procedure FILTREKE : type argument 2 invalide ' ;
quitter FILTREKE ;
finsi ;
finsi ;
si ( ega ('TYPE' rx.'ARG3') 'MOT ') ;
NU=rv.'INCO'.(rx.'ARG3') ;
sinon ;
si ( ega ('TYPE' (rx.'ARG3')) 'FLOTTANT') ;
NU=rx.'ARG3' ;
sinon ;
mess 'Procedure FILTREKE : type argument 3 invalide ' ;
quitter FILTREKE ;
finsi ;
finsi ;
si ( ega ('TYPE' rx.'ARG4') 'MOT ') ;
UN=rv.'INCO'.(rx.'ARG4') ;
sinon ;
si ( ega ('TYPE' (rx.'ARG4')) 'CHPOINT') ;
UN=rx.'ARG4' ;
sinon ;
mess 'Procedure FILTREKE : type argument 4 invalide ' ;
quitter FILTREKE ;
finsi ;
finsi ;
nic=dime (rx.'LISTINCO') ;
si( non ( ega nic 2)) ;
mess 'Procedure FILTREKE : nombre d inconnues incorrect ' nic ;
quitter FILTREKE ;
finsi ;
nomi1=extr 1 (rx.'LISTINCO');
nomi2=extr 2 (rx.'LISTINCO');
nom1= mot (text (chai nomi1)) ;
nom2= mot (text (chai nomi2)) ;
en=rv.'INCO'.nom2 ;
kn=rv.'INCO'.nom1 ;
Rec=100.;
k0 = 1.e-10 ;
cnu=0.09;
mdu=kops un 'PSCA' un ;
mdu=mdu ** 0.5 ;
Re=kops (kops (kops mdu '*' L0) '/' nu) '+' (Rec / 10.) ;
a= exp (kops Rec '/' Re ) ;
mdu = kops mdu '|<' u1 ;
mdu2= kops mdu '*' mdu ;
kn=kops kn '|<' k0 ;
kn=kops kn '>|' mdu2 ;
E0= kops (kops kn '**' 1.5) '*' (a / L0) ;
en=kops en '|<' E0 ;
rv.'INCO'.nom2=en ;
rv.'INCO'.nom1=kn ;
as2 ama1 = 'KOPS' 'MATRIK' ;
*RESPRO as2 ama1 ;
FINPROC ;
*------------------------------- FIN PROCEDURE FILTREKE ----------------
*--------------------------- maillage ----------------------------------
TITRE 'JET' ;
OPTI MODE AXIS ;
OPTI DIME 2 ELEM QUA8 ;
*
DJ = 2.e-2 ; RJ = DJ/2. ; RM = 50.*RJ ;
* points :
P00=0. 0.; PJ0=RJ 0.; PR0=RM 0.; PJ5=RJ (50.*DJ);
P02=0. (20.*DJ); P03=0. (30.*DJ); P04=0. (40.*DJ); P05=0. (50.*DJ);
PR2=RM (20.*DJ); PR3=RM (30.*DJ); PR4=RM (40.*DJ); PR5=RM (50.*DJ);
* segments verticaux :
A02 = DROI -20 P00 P02 dini (0.5*DJ) dfin (1.25*DJ) ;
A23 = DROI -6 P02 P03 dini (0.9*DJ) dfin (1.25*DJ) ;
A34 = DROI 4 P03 P04 ;
A45 = DROI -3 P04 P05 dini (1.25*DJ) dfin (2.*DJ) ;
B02 = DROI -20 PR0 PR2 dini (0.5*DJ) dfin (1.25*DJ) ;
B23 = DROI -6 PR2 PR3 dini (0.9*DJ) dfin (1.25*DJ) ;
B34 = DROI 4 PR3 PR4 ;
B45 = DROI -3 PR4 PR5 dini (1.25*DJ) dfin (2.*DJ) ;
AXE = A02 ET A23 ET A34 ET A45 ;
BORD= B02 ET B23 ET B34 ET B45 ;
* segments horizontaux :
JET = DROI 2 P00 PJ0 ;
BAS2 = DROI PJ0 PR0 dini (RJ/2.) dfin (10.*RJ) ; BAS = JET ET BAS2 ;
HAU1 = DROI 2 P05 PJ5 ;
HAU2 = DROI PJ5 PR5 dini (RJ/2.) dfin (10.*RJ) ; HAUT=HAU1 ET HAU2 ;
* domaine total :
MT = DALL BAS BORD (inve HAUT) (inve AXE) 'PLAN' ;
CMT = cont MT ;
* tables domaine :
$MT = DOMA MT 'MACRO' 'IMPR' ;
$JET = DOMA JET 'MACRO' 'INCL' $MT 1.e-5 ;
$BORD = DOMA BORD 'MACRO' 'INCL' $MT 1.e-5 ;
$BAS2 = DOMA BAS2 'MACRO' 'INCL' $MT 1.e-5 ;
$AXE = DOMA AXE 'MACRO' 'INCL' $MT 1.e-5 ;
MT = $MT.'MAILLAGE' ;
*------------------------ donnees physiques ----------------------------
*
NUF = 1.5E-5 ;
REJ = 1.e4 ;
UJ = REJ*NUF/DJ ; mess 'vitesse d injection (m/s) =' UJ ;
* KJ = 0.05*UJ*UJ ; mess 'KJ =' KJ ;
* EJ = 0.02*(UJ**3.)/DJ ; mess 'EJ =' EJ ;
KJ = 1.E-3 ;
EJ = 6.E-3 ;
NUTj = 0.09*KJ*KJ/EJ ; mess 'NUTJ =' nutj ;
KA = 1.E-7 ;
EA = 1.E-5 ;
L0 = 25.*DJ ;
* opti donn 5 ;
*-------------------------- equations ----------------------------------
RV = EQEX $MT 'DUMP' 'ITMA' iitma 'ALFA' 0.9
'ZONE' $MT 'OPER' 'FILTREKE' UJ L0 NUF 'UN' 'INCO' 'KN' 'EN'
'ZONE' $MT 'OPER' 'NSKE' NUF 'NUT' 'INCO' 'UN' 'KN' 'EN'
'CLIM' 'UN' UIMP JET 0. 'UN' VIMP JET UJ
'UN' VIMP BAS2 0. 'UN' UIMP AXE 0.
'KN' TIMP JET KJ 'EN' TIMP JET EJ
'KN' TIMP BORD KA 'EN' TIMP BORD EA ;
RVP = EQPR $MT 'ZONE' $MT 'OPER' 'PRESSION' 0. ;
*------------------------ initialisations ------------------------------
RV.'PRESSION' = RVP ;
RV.INCO = TABLE 'INCO' ;
RV.'INCO'.'UN' = KCHT $MT VECT SOMMET (1.E-7 1.E-7) ;
RV.'INCO'.'KN' = KCHT $MT SCAL SOMMET 1.E-7 ;
RV.'INCO'.'EN' = KCHT $MT SCAL SOMMET 1.E-5 ;
RV.'INCO'.'NUT'= KCHT $MT SCAL CENTRE 1.E-6 ;
*------------------------ historiques ----------------------------------
P11 = MT POIN 'PROC' ((25.*RJ) (10.*DJ));
P12 = MT POIN 'PROC' ((25.*RJ) (20.*DJ));
P14 = MT POIN 'PROC' ((25.*RJ) (40.*DJ));
P15 = MT POIN 'PROC' ((25.*RJ) (50.*DJ));
LH = P02 et P03 et P04 et P05 et P11 et P12 et P14 et P15 ;
HIS = KHIS 'UN' 1 LH 'UN' 2 LH 'KN' LH 'EN' LH ;
RV.'HIST' = HIS ;
*------------------------ resolution -----------------------------------
EXEC RV ;
*------------------------ sauvegarde -----------------------------------
* REPIX RV ; SAUV RV ;
*------------------------ post-traitement ------------------------------
* Fin ;
SI(EGA GRAPH 'O' );
************************************************************************
* POST-TRAITEMENT
*
*
* jet 1 phase , post-traitement , sept 97
*
************************************************************************
DJ = 0.02 ; RJ = DJ/2. ; UJ = 7.5 ;
opti dime 2 elem qua8 ;
$mt = rv.domaine ;
mt = rv.domaine.maillage ;
cmt = cont mt ;
$haut = DOMA haut 'MACRO' incl $mt ;
$bas = DOMA bas 'MACRO' incl $mt ;
$bord = DOMA bord 'MACRO' incl $mt ;
titr 'MAILLAGE JET AXI' ;
trac mt ;
*-------------------------- débits -------------------------------------
un = rv.INCO.'UN' ;
unn = un/uj ;
kn = rv.INCO.'KN' ;
en = rv.INCO.'EN' ;
nut= rv.INCO.'NUT' ;
nut= elno $mt nut ;
nur= (1./1.5e-5)*nut ;
pn = rv.pression.'PRESSION' ;
pe = elno $mt pn ;
debent= DBIT $bas Un ;
debsor= DBIT $haut Un ;
debbor= DBIT $bord UN ;
debtot= debent + debbor - debsor ; list debtot ;
*----------------------------- isovaleurs ------------------------------
UNV = VECT (RV.'INCO'.'UN') 5.E-3 UX UY vert ;
opti 'ISOV' 'LIGNE' ;
TRAC UNV CMT TITRE 'VITESSES ' ;
valk = prog 0.01 0.1 0.33 0.66 1. 3.3 6.6 ;
TRAC valk KN MT CMT TITRE 'KN' ;
vale = prog 0.01 0.1 1. 10. 100. 1000. ;
TRAC vale EN MT CMT TITRE 'EN' ;
* TRAC NUT MT CMT TITRE 'NUT' ;
TRAC NUR 7 MT CMT TITRE 'NUT/NU' ;
* TRAC PE MT CMT TITRE 'PRESSION' ;
*------------------------- U sur l'axe ---------------------------------
uz = exco uy un uy ;
uzn = exco uy unn uy ;
uzne = evol chpo uzn uy axe ;
uzno = extr uzne ordo ;
zz = extr uzne absc ; zn = zz/DJ ;
titr 'VITESSE SUR L AXE' ;
uznn = evol manu 'Z/Dj' zn 'Vaxe/Vj' uzno ;
*------------------------ valeurs experimentales de U ------------------
ue = 5.8 * (zn**(-1)) ;
uzne = evol manu 'Z/Dj' zn 'Vaxe/Vj' ue ;
tabu = table ;
tabu.1 = 'MARQ CARR REGU TITR CASTEM' ;
tabu.2 = 'MARQ ETOI REGU TITR THEORIE' ;
dess (uznn et uzne)
lege tabu xbord 0. 50. ybord 0.0 1.1 ;
*------------------------- u' sur l'axe --------------------------------
kn = abs kn ;
up = kn*2./3. ; up = up**0.5 ;
upaxe = evol chpo up scal axe ;
titre 'FLUCTUATIONS DE VITESSE SUR L AXE' ;
uz1 = nomc scal uz ;
upu = up/uz1 ;
upue = evol chpo upu scal axe ;
upuo = extr upue ordo ;
zz = extr upue absc ; zn = zz/DJ ;
upun = evol manu 'Z/Dj' zn 'u/Vaxe' upuo ;
* dess upaxe titx 'axe (m)' tity 'VIT. FLUCT. (m/s)' ;
*------------------------ valeurs experimentales de u' -----------------
* Panchapakesan 1993 et Wygnanski 1969
lzz = prog 30. 35. 40. 45. 50. ;
lup = prog 0.222 0.2245 0.2265 0.2283 0.230 ;
lvp = prog 0.177 0.178 0.179 0.1796 0.180 ;
upe = evol manu 'Z/D' lzz 'Uprime/Umoyen' lup ;
vpe = evol manu 'Z/D' lzz 'Uprime/Umoyen' lvp ;
lz1 = prog 40. ; up1 = prog 0.268 ;
lz2 = prog 30. 40. 50. ;
vp2 = prog 0.183 0.1975 0.211 ;
wp2 = prog 0.188 0.2035 0.2075 ;
u1e = evol manu 'Z/D' lz1 'Uprime/Umoyen' up1 ;
v1e = evol manu 'Z/D' lz2 'Uprime/Umoyen' vp2 ;
w1e = evol manu 'Z/D' lz2 'Uprime/Umoyen' wp2 ;
tabp = table ;
tabp.1 = ' REGU TITR CASTEM' ;
tabp.2 = 'MARQ PLUS NOLI TITR u/V_P&L' ;
tabp.3 = 'MARQ CROI NOLI TITR v/V_P&L' ;
tabp.4 = 'MARQ TRIA NOLI TITR u/V_W&F' ;
tabp.5 = 'MARQ LOSA NOLI TITR v/V_W&F' ;
tabp.6 = 'MARQ CARR NOLI TITR w/V_W&F' ;
dess (upun et upe et vpe et u1e et v1e et w1e) lege tabp ;
*------------------------------- les rayons ---------------------------
P01 = MT poin proc (0. (10.*DJ));
PJ1 = MT poin proc (RJ (10.*DJ));
PR1 = MT poin proc ((50.*DJ) (10.*DJ)) ;
* ordonnee de p01 = 0.2035 si RJ = 0.01 m
l101 = droi 2 P01 PJ1 ;
l102 = droi PJ1 PR1 dini (RJ/2.) dfin (10.*RJ) ;
L10 = l101 et l102 ; elim mt l10 1.e-5 ;
PJ2 = RJ (20.*DJ) ;
l201 = droi 2 P02 PJ2 ;
l202 = droi PJ2 PR2 dini (RJ/2.) dfin (10.*RJ) ;
L20 = l201 et l202 ; elim mt l20 1.e-5 ;
PJ3 = RJ (30.*DJ) ;
l301 = droi 2 P03 PJ3 ;
l302 = droi PJ3 PR3 dini (RJ/2.) dfin (10.*RJ) ;
L30 = l301 et l302 ; elim mt l30 1.e-5 ;
PJ4 = RJ (40.*DJ) ;
l401 = droi 2 P04 PJ4 ;
l402 = droi PJ4 PR4 dini (RJ/2.) dfin (10.*RJ) ;
L40 = l401 et l402 ; elim mt l40 1.e-5 ;
PJ5 = RJ (50.*DJ) ;
l501 = droi 2 P05 PJ5 ;
l502 = droi PJ5 PR5 dini (RJ/2.) dfin (10.*RJ) ;
L50 = l501 et l502 ; elim mt l50 1.e-5 ;
*---------------------------- U sur les rayons -------------------------
uz10 = evol chpo uz l10 ;
u10 = extr uz10 ordo ; uzn10 = u10/(maxi u10) ;
r10 = extr uz10 absc ; rn10 = r10/(20.35*RJ) ;
un10 = evol manu ' R/Z' rn10 'Uz/Uzmax' uzn10 ;
uz20 = evol chpo uz l20 ;
u20 = extr uz20 ordo ; uzn20 = u20/(maxi u20) ;
r20 = extr uz20 absc ; rn20 = r20/(20.*DJ) ;
un20 = evol manu 'R/Z' rn20 'V/Vaxe' uzn20 ;
uz30 = evol chpo uz l30 ;
u30 = extr uz30 ordo ; uzn30 = u30/(maxi u30) ;
r30 = extr uz30 absc ; rn30 = r30/(30.*DJ) ;
un30 = evol manu 'R/Z' rn30 'Uz/Uzmax' uzn30 ;
uz40 = evol chpo uz l40 ;
u40 = extr uz40 ordo ; uzn40 = u40/(maxi u40) ;
r40 = extr uz40 absc ; rn40 = r40/(40.*DJ) ;
un40 = evol manu 'R/Z' rn40 'Uz/Uzmax' uzn40 ;
uz50 = evol chpo uz l50 ;
u50 = extr uz50 ordo ; uzn50 = u50/(maxi u50) ;
r50 = extr uz50 absc ; rn50 = r50/(50.*DJ) ;
un50 = evol manu 'R/Z' rn50 'Uz/Uzmax' uzn50 ;
*------------------- valeurs experimentales ----------------------------
* ut=formule de Tollmien, ue=valeurs exp de Trupel
lz=prog 0.000 0.009 0.018 0.027 0.036 0.045 0.054 0.063 0.072 0.081
0.090 0.099 0.108 0.117 0.126 0.135 0.144 0.153 0.162 0.171
0.180 0.189 0.198 0.207 0.216 0.225 0.234 0.243 0.252 0.261
0.270 0.279 0.288 0.297 0.306 ;
ut=prog 1.000 0.984 0.958 0.922 0.884 0.843 0.795 0.748 0.700 0.653
0.605 0.555 0.510 0.470 0.425 0.378 0.340 0.300 0.265 0.230
0.198 0.169 0.140 0.117 0.094 0.075 0.059 0.046 0.034 0.024
0.017 0.011 0.007 0.003 0. ;
ue=prog 1.000 0.991 0.965 0.936 0.898 0.864 0.809 0.762 0.707 0.700
0.612 0.562 0.517 0.475 0.425 0.374 0.342 0.298 0.268 0.228
0.196 0.171 0.138 0.119 0.096 0.075 0.056 0.046 0.035 0.025
0.017 0.012 0.009 0.004 0. ;
uze = evol MANU 'R/Z' lz 'U/Umax' ue ;
uzt = evol MANU 'R/Z' lz 'U/Umax' ut ;
tabv = table ;
tabv.1 = 'MARQ TRIA REGU TITR CASTEM_Z=20Dj' ;
tabv.2 = 'MARQ LOSA REGU TITR CASTEM_Z=30Dj' ;
tabv.3 = 'MARQ CARR REGU TITR CASTEM_Z=40Dj' ;
tabv.4 = 'MARQ CROI NOLI TITR THEORIE' ;
tabv.5 = 'MARQ PLUS NOLI TITR EXPERIENCE' ;
titr 'PROFILS RADIAUX DE VITESSE MOYENNE AXIALE' ;
dess (un20 et un30 et un40 et uzt et uze)
lege tabv ybord 0. 1. xbor 0. 0.3 ;
*--- formules de Abramovitch et Gortler -------
eta = rn20 ;
phi1 = 18.5 * eta ; phi2 = 15.2 * eta ;
one = prog 35 * 1. ;
uf1 = one + (0.125 * phi1 * phi1) ;
uf1 = uf1 ** (-2.) ;
uf20 = evol manu 'R/Z' rn20 'Uz/Uzmax' uf1 ;
uf2 = one + (0.125 * phi2 * phi2) ;
uf2 = uf2 ** (-2.) ;
uf22 = evol manu 'R/Z' rn20 'Uz/Uzmax' uf2 ;
tabw = table ;
tabw.1 = 'MARQ CROI REGU TITR Z_=_10_DJ' ;
tabw.2 = 'MARQ LOSA REGU TITR Z_=_20_DJ' ;
tabw.3 = 'MARQ CARR REGU TITR Z_=_30_DJ' ;
tabw.4 = 'MARQ TRIA REGU TITR Z_=_40_DJ' ;
tabw.5 = 'MARQ ETOI REGU TITR Z_=_50_DJ' ;
tabw.6 = 'MARQ ETOI NOLI TITR theorie' ;
tabw.7 = 'MARQ CARR NOLI TITR experience' ;
tabw.8 = 'MARQ TRIA NOLI TITR abramovitch' ;
tabw.9 = 'MARQ LOSA NOLI TITR Gortler' ;
dess (un10 et un20 et un30 et un40 et un50 et uzt et uze et uf20
et uf22) lege tabw xbor 0. 0.3 ;
*---------------------------- historiques ------------------------------
titre 'HISTORIQUE DE LA VITESSE RADIALE' ;
dess rv.hist.'1UN' ;
titre 'HISTORIQUE DE LA VITESSE AXIALE' ;
dess rv.hist.'2UN' ;
titre 'HISTORIQUE DE L''ENERGIE CINETIQUE TURBULENTE K' ;
* dess rv.hist.'KN' ;
titre 'HISTORIQUE DE LA DISSIPATION DE K' ;
* dess rv.hist.'EN' ;
FINSI ;
FIN ;
© Cast3M 2003 - All rights reserved.
Disclaimer