Hover over the menu bar to pick a physics animation.

Paticle Motion in a Venturi Potential

Introduction

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. To trap the ions, we use the forces due to a potential. The original intent was to demonstrate the Bernoulli Principle in a gas. The results here are not as conclusive as I'd like.

Calculations for Hard Disc Reflections from Walls of the Venturi

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)`

Calculation of the Reflected Disc Velocity

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`

And the reflected particle velocities will be:

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

In general the values of `v_x` and `v_y` will be altered by different fractional amounts.

Venturi Wall Potential and Force

The equation for the venturi boundaries is:

`y_B(x_B)=+-R_Csqrt(1+((R_Ex_B)/(R_cL))^2)`

The unit normal to the venturi wall at `x_B` is

`bbhatn(x,y,x_B)=n_xbbhatx+n_ybbhaty=(bbhaty+(dy_B(x_B))/(dx_B)bbhatx)/ (|bbhaty+(dy_B(x_B))/(dx_B)bbhatx|`

The boundary slope `(dy_B)/(dx_B)` is simple:

`(dy_B(x_B))/(dx_B)=+-(R_Cx_B)((R_E)/(R_CL))^2/(sqrt(1+((x_BR_E)/(R_CL))^2)`

An entirely similar expression for a unit vector between `bbvecr_B` and `bbvecr`, `bbhatk(x,y,x_B)`, where `bbvecr=(x,y)` is the vector to our field point, is

`bbhatk(x,y,x_B)=[(x-x_B)bbhatx+(y-y_B)bbhaty]/sqrt((x-x_B)^2+(y-y_B)^2)`

Both `bbhatn` and `bbhatk` must point in the same direction so we can set these two expressions for the unit vectors equal:

`[(x-x_B)bbhatx+(y-y_B)bbhaty]/sqrt((x-x_B)^2+(y-y_B)^2)=((dy_B(x_B))/(dx_B)bbhatx+bbhaty)/ sqrt(1+((dy_B(x_B))/(dx_B))^2|`

Both of the `(bbhatx,bbhaty)` components of these expressions must be equal note that both `y_B` and `(dy_B)/(dx_B)` are simple functions of `x_B`. . So taking the `bbhatx` component we have:

`f_(x_B)(x,y,x_B)=(x-x_B)/sqrt((x-x_B)^2+(y-y_B)^2)=((dy_B(x_B))/(dx_B))/ (sqrt(1+((dy_B(x_B))/(dx_B))^2))`

Also taking the `bbhaty` component we have:

`f_(y_B)(x,y,x_B)=(y-y_B(x_B))/sqrt((x-x_B)^2+(y-y_B(x_B))^2)=1/(sqrt(1+((dy_B(x_B))/(dx_B))^2))`

Both `y_B` and `(dy_B)/(dx_B)` involve only `x_B` as the indpendent variable. We need to find a value of `x_B` that solves this equation. Since we are blessed with computers, we can use Newton's Method

Using Newton's Method to find `x_B`

The basic form of 'Newton's Method' is the following:

`x'_g=x_g-f(x_g)/((df(x_g))/dx)`

where `x_g` is an initial guess and `x'_g` is the updated value of `x_g`. This process is itererated by setting `x_g=x'_g` until `|x'_g-x_g|` is small enough for the user's requirements.

For our function `f(x_B)` an initial guess for `x_B` we could just use `x_(Bg)=x`. One caveat we should note is that when `ylt0` then the normal vector has a negative `n_y` and vice-versa. The huge advantage of using a computer here is that we can compute the value of `(df)/dx` by making just two calculations of `f(x_g+dx/2)` and `f(x_g-dx/2)` where `dx` is very small compare to `x_g`. Then we just use the definition of a derivative:

`(df(x))/dx=(f(x+dx/2)-f(x-dx/2))/dx`

Description of the Animation

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.

Description of the Results

Note that the use of `"<"u">"` around `u` denotes the average of `u`. Also note that the use of `|u|` around `u` denotes the absolute value of `u`.

As seen in the plots of `"<"v_x">"` and `"<"|vy|">"` are indeed lower in the neck and neck exit region than at the left end of the venturi. To obtain valid average values of the `v_x and v_y` we divided their bin sums by the disc number in that bin. The lower `"<"|vy|">"` is in agreement with the expected lower pressure in the neck region. The value `"<"v_x">"` is largest at the exit of the neck and this agrees with what is expected for the venturi neck where `"<"v_x">"` should increase.