Áramlástechnikai Gépek
-
#12 Hasznos holmi: Stolz formula Excelhez
Ha valaki sokat számol az említett formulával levegő esetén, akkor illessze be az alábbi rövid VisualBASIC kódot egy új modul-ba a saját Excel-ének VisualBASIC szerkesztőjében:
'--- STOLZ függvény -----------------
Function STOLZ(d_mp, d_cso, dp_mp, p_be_mp, t_be_mp, eps, eps_alfa, maxiter)
alfa_regi = 0.65
beta = d_mp / d_cso
iteracioszam = 0
rho_norm = 1.293
T_norm = 273
p_norm = 101396
nu_norm = 0.0000133
Pi = 3.14159
Do
rho_lev = rho_norm * p_be_mp / p_norm * T_norm / (t_be_mp + 273.2)
Q = alfa_regi * eps * d_mp ^ 2 * Pi / 4 * Sqr(2 / rho_lev * dp_mp)
v = 4 * Q / (d_cso ^ 2 * Pi)
nu_lev = p_norm / p_be_mp * (1000000 * nu_norm + 0.1 * t_be_mp) * 0.000001
Re = v * d_cso / nu_lev
C = 0.5959 + 0.0312 * beta ^ 2.1 - 0.184 * beta ^ 8 + 0.0029 * beta ^ 2.5 * (1000000 / Re) ^ 0.75
alfa_uj = C / Sqr(1 - beta ^ 4)
iteracioszam = iteracioszam + 1
Loop Until ((alfa_uj - alfa_regi) / alfa_uj <= eps_alfa) Or (iteracioszam >= maxiter)
STOLZ = alfa_uj
End Function
'--- Itt a vége -----------------
A beillesztéshez:
=================
Excel főmenüben kiválasztjuk az 'Eszközök' -> 'Makró' -> 'VisualBASIC szerkesztő' pontot, majd a megjelenő képernyőn a főmenüben az 'Insert' -> 'Module' menüpontot. Ekkor a jobboldali szerkesztőablakba egyszerűen bemásoljuk a függvényt és rányomunk a 'Mentés'-re, majd bezárjuk a VisualBASIC szerkesztőt (kattintás a jobb felső sarokban a "kereszten").
Ha átfolyási tényezőt kell számolni, a 'STOLZ' függvény megtalálható lesz a függvények között, mégpedig a 'Felhasználói' függvény-kategóriában.
Használathoz:
=============
A kívánt helyen az adott cellába beírjuk az egyenlőségjelet és az 'fx' ikonon kattintva előcsaljuk a beilleszthető függvények listáját. A 'Felhasználói' csoportban lesz a 'STOLZ'. Ezen kattintva megjelenik a függvényargumentumokra váró panel, ahol sorrendben a következő adatokat kell megadni:
STOLZ(d_mp, d_cso, dp_mp, p_be_mp, t_be_mp, eps, eps_alfa, maxiter)
d_mp [m]: mérőperem szűkítőnyílásának átmérője
d_cso [m]: csőátmérő (a mérőperem "nagy" átmérője)
dp_mp [Pa]: a mérőperem két megcsapolási helye közötti nyomáskülönbség
p_be_mp [Pa]: a mérőperembe belépő közeg abszolút nyomása
t_be_mp [C]: a mérőperembe belépő közeg hőmérséklete
eps [1]: expanziós szám
eps_alfa [1]: megállási feltétel: az új és az előző iterációs lépés során számított alfa relatív hibája az ÚJ(!) alfához viszonyítva - azért ahhoz, mert az iteráció konvergens és a pontos érték hibáját akarom megadni (ez akár vitaindító is lehet...) - a hiba eps_alfa alá kell hogy csökkenjen.
maxiter [1]: megállási feltétel: maximális iterációk száma. Az iteráció végetér, ha legalább ennyit iterált a program.
A két kilépési feltétel közül amelyik hamarabb igaz lesz, akkor fejeződik be az iteráció.
A függvény számítja a közeg adott állapotbeli (mérőperem előtti) állapotában a sűrűségét és a kinematikai viszkozitását (a Váradi Sándor által összeállított Ciklon mérési útmutató alapján).
Minden észrevételnek örülök ezzel kapcsolatban - és remélem az UNTIL után jól állnak a relációjelek - nagy baj nem lehet, mivel hátultesztelős, egyet biztos iterál ;) .
-=ZR=-