Hover over the menu bar to pick a physics animation.

When a fluid flows through a narrow region, it usually speeds up . When it speeds up, in order to conserve energy, its tranverse speeds are reduced. Since its force on the walls depends on the transverse speeds, the pressure that it can exert on the walls of the narrow region is reduced. This pressure reduction is called the Bernoulli Principle. and the venturi is the most straightforward way of demonstrating it. The animation here will be just to show how particles can be trapped in a structure shaped like a venturi and have their speeds changed in the narrow retion. The original intent was to demonstrate the Bernoulli Principle in a gas. The results here are not as conclusive as I'd like.

The particles (discs since this is a 2D animation) need to be kept inside the boundaries of the containing structure. The equation for the boundaries is

`y=+-R_Csqrt(1+((R_Ex)/(R_cL))^2)`

where `R_C` is the radius at the center, `R_E` is the radius at the entrance and exit, and `L` is length from entrance to center.In order to conserve the disc energies, when the discs hit the boundaries they must be reflected so that the normal velocity component is reversed and the tangential velocity component is not changed. An expression for the slope of the boundaries is

`dy/dx=(xR_C(R_E/(R_C*L))^2)/sqrt(1+((R_Ex)/(R_CL))^2)`

The normal to a curve described by `g(x,y)=y-f(x)=0` is given by`bbvecn(x,y)=grad(g(x,y))=bbhaty+((df)/dx)bbhatx`

For collisions we need the unit normal:`bbhatn(x,y)=(bbhaty+((df)/dx)bbhatx)/sqrt(1+((df)/dx)^2)`

where the `*` in the denominator signifies the dot or inner product. If we have determined that the boundary collision will occur at position (x,y) then the new velocity components will be calculated from:`b=vecn*vecv=(n_x*v_x+n_y*v_y)`

The normal component, `bbvecv_n`, of the Incident velocity is reversed and the tangential component, `bbvecv_t`, is not changed. If we have a normal unit vector, `bbhatn=n_xbbhatx+n_ybbhaty` then the tangential unit vector can be described by

`t_xbbhatx+t_ybbhaty=n_ybbhatx-n_xbbhaty`

So taking velocity components we have:
`bbvecv_n=(bbvecv*bbhatn)bbhatn`

`bbvecv_t=(bbvecv*bbhatt)bbhatt`

`bbvecv'_n=-(bbvecv*bbhatn)bbhatn`

`bbvecv'_t=(bbvecv*bbhatt)bbhatt`

The initial position of the particles (discs) is that all are aligned on the neck of the venturi. They have random `v_y` velocity components and their `v_x` component is twice the average `v_y`. So the particles progress along the neck axis at a uniform speed until they reach the right hand end. Then they are translated back to the left hand end to start another journey through the neck. Since they have a `v_y` velocity component, they strongly interact with the converging and diverging walls of the venturi. This results in changes in both the average `v_y` and `v_x` comonents of the velocity. In addition the average energy of the particle flucuates a few percent as should be expected.

As seen in the plots of `|v_x|` and `|v_y|`, `|v_y|` is indeed lower in the neck region than at the left and right ends of the venturi. This is in agreement with the expected lower pressure in the neck region. However the net `|v_x|`is lowest at the neck and this disagrees with what is expected for a venturi neck where the net `|v_x|` should increase.

Some of this discrepancy may be due to the finite length of the venturi which results in wave-like bunching of the discs in the vicinity of he neck.

Alerts