ModelicaStandardLibrary icon indicating copy to clipboard operation
ModelicaStandardLibrary copied to clipboard

Bug in the SharpEdgedOrifice for Loss factors

Open AlesVojacek opened this issue 3 years ago • 2 comments

The Modelica.Fluid.Fittings.SharpEdgedOrifice using Modelica.Fluid.Fittings.BaseClasses.QuadraticTurbulent.LossFactorData.sharpEdgedOrifice for calculation of Loss factors zeta1 (for design flow) and zeta2 (for reverse flow) seems to be wrong when it compares to Idelchik.

One way to fix it: data.zeta1 and data.zeta2 in the algorithm section of Modelica.Fluid.Fittings.BaseClasses.QuadraticTurbulent.LossFactorData.sharpEdgedOrifice shall be rewritten to:

data.zeta1 := ((1 - D_rel^2) + 0.707*(1 - D_rel^2)^0.375)^2*(1/D_rel^2)^2;
data.zeta2 := (k*(1 - D_rel^2)^0.75 + (1 - D_rel^2)^2 + 2*sqrt(k*(1 -D_rel^2)^0.375) + (1 - D_rel^2))*(1/D_rel^2)^2;

AlesVojacek avatar Feb 08 '22 12:02 AlesVojacek

I double-checked the formular in Source Idelchik. The ratio D_rel is actually a ratio of cross-rectional areas. For circular cross-sections we receive using the original nomenclature F0/F1 = D0^2/D1^2. I would suggest to exchange D_rel by A_rel and put leastDiameter/diameter to the power of 2.

   Real A_rel=(leastDiameter/diameter)^2;
   Real LD=length/leastDiameter;
   Real k=0.13 + 0.34*10^(-(3.4*LD + 88.4*LD^2.3));
algorithm 
   data.diameter_a := diameter;
   data.diameter_b := diameter;
   data.zeta1 := ((1 - A_rel) + 0.707*(1 - A_rel)^0.375)^2*(1/A_rel)^2;
   data.zeta2 := k*(1 - A_rel)^0.75 + (1 - A_rel)^2 + 2*sqrt(k*(1 -
     A_rel)^0.375) + (1 - A_rel);

wischhusen avatar Mar 01 '22 13:03 wischhusen

Please also compare:

Modelica.Fluid.Dissipation.PressureLoss.Orifice.dp_thickEdgedOverall_MFLOW() and Modelica.Fluid.Dissipation.PressureLoss.Orifice.dp_thickEdgedOverall_DP()

wischhusen avatar Mar 01 '22 14:03 wischhusen