STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
test_feed_exit_loss Namespace Reference

Functions

 _python_physics ()
 _q (mdot, rho, A)
 test_exit_loss_defaults_to_one_line_velocity_head ()
 test_exit_through_a_wider_fitting_is_referred_to_the_line ()
 test_twin_line_area_is_used ()
 test_area_alone_is_a_valid_feed_passage ()
 _evaluate (**feed)
 test_injector_sees_the_manifold_not_the_line_stagnation ()

Variables

 ROOT = Path(__file__).resolve().parents[1]
float PSI = 6894.757
float D_TUBE = 0.010922
float A_TUBE = math.pi / 4.0 * D_TUBE ** 2
float D_NPT = 0.5 * 0.0254

Detailed Description

The feed line's velocity head is lost where it dumps into the injector manifold, and one
flow area serves the loss model and the chug inertance alike.

Exit loss. From a still tank to a still manifold,
    P_tank - P_manifold = (K_entrance + f L/D + K_exit) q_line,
and a line discharging into a plenum loses its whole velocity head: Borda-Carnot
K = (1 - A_line/A_manifold)^2 -> 1, Crane TP-410 "pipe exit" K = 1.0. The shipped K0 values
(scripts/feed_line_K.py) end at the last fitting, so P_injector was the stagnation pressure of
flow still moving at ~15 m/s, and every orifice was credited one line q too much.

Area. ``A_hydraulic`` is the passage; ``d_inlet`` used to win whenever it was set (it always
is), so a twin line or non-circular passage lost 4x too much in performance while the chug
model used the declared area.

Expected values are hand arithmetic.

Function Documentation

◆ _evaluate()

test_feed_exit_loss._evaluate ( ** feed)
protected

◆ _python_physics()

test_feed_exit_loss._python_physics ( )
protected
The authoritative Python path; engine/accel mirrors it and test_numba_ab_parity holds the
two together.

Definition at line 35 of file test_feed_exit_loss.py.

◆ _q()

◆ test_area_alone_is_a_valid_feed_passage()

test_feed_exit_loss.test_area_alone_is_a_valid_feed_passage ( )
feed_loss.py's own recipe: give A_hydraulic with d_inlet omitted.

Definition at line 76 of file test_feed_exit_loss.py.

References _q().

◆ test_exit_loss_defaults_to_one_line_velocity_head()

test_feed_exit_loss.test_exit_loss_defaults_to_one_line_velocity_head ( )

Definition at line 53 of file test_feed_exit_loss.py.

References _q().

◆ test_exit_through_a_wider_fitting_is_referred_to_the_line()

test_feed_exit_loss.test_exit_through_a_wider_fitting_is_referred_to_the_line ( )
Tube into a 1/2" NPT bore, then the dump: K at the tube is (A_tube/A_npt)^2 = (0.430/0.500)^4.

Definition at line 59 of file test_feed_exit_loss.py.

References _q().

◆ test_injector_sees_the_manifold_not_the_line_stagnation()

test_feed_exit_loss.test_injector_sees_the_manifold_not_the_line_stagnation ( )

Definition at line 96 of file test_feed_exit_loss.py.

References _evaluate(), and _q().

◆ test_twin_line_area_is_used()

test_feed_exit_loss.test_twin_line_area_is_used ( )
Two 1/2" tubes: A = 2 x bore area. 1.118 kg/s of ethanol at K0 2.019 -> 6.61 psi, not 26.4.

Definition at line 67 of file test_feed_exit_loss.py.

References _q().

Variable Documentation

◆ A_TUBE

float test_feed_exit_loss.A_TUBE = math.pi / 4.0 * D_TUBE ** 2

Definition at line 30 of file test_feed_exit_loss.py.

◆ D_NPT

float test_feed_exit_loss.D_NPT = 0.5 * 0.0254

Definition at line 31 of file test_feed_exit_loss.py.

◆ D_TUBE

float test_feed_exit_loss.D_TUBE = 0.010922

Definition at line 29 of file test_feed_exit_loss.py.

◆ PSI

float test_feed_exit_loss.PSI = 6894.757

Definition at line 28 of file test_feed_exit_loss.py.

◆ ROOT

test_feed_exit_loss.ROOT = Path(__file__).resolve().parents[1]

Definition at line 27 of file test_feed_exit_loss.py.