Study of Motions of Point Vortices 
in a Periodic Box using Mathematica

Makoto Umeki   umeki@phys.s.u-tokyo.ac.jp

Dept. of  Physics,   Univ. of  Tokyo

Motivation of the Present Research

I am looking for objects of research (in fluid dynamics and nonlinear dynamics) which can be analyzed effectively by using Mathematica but not by other numerical methods like fortran. It is a good chance for me to improve my technique and free myself of a self-taught numerical analyst.

Point Vortices in a Periodic Box

Motions of point vortices can be simulated in an unbounded plane, a circle and a periodic strip by fortran since the velocity field can be given by a finite sum of algebraic or trigonometric functions.  But if we consider their motions in a periodic box, we need to evaluate the Weierstrass zeta function, which is difficult to obtain the values in a fortran code. The complex velocity due to a single point vortex in a periodic parallelogram is given by

u + iv=i(Overscript[(ζ(z)), —])-iΩz ≡w (z)   (z = x + iy)

where  ζ(z) =ζ(
              z; (Subscript[ω, 1]), (Subscript[ω, 2])) is the Weierstrass zeta function. ((Subscript[ω, 1]), (Subscript[ω, 2]))  is a pair of two sides in a complex representation. If we consider the case  ((Subscript[ω, 1]), (Subscript[ω, 2]))=(1/2, 
          i/2) and Ω=π,  we obtain the velocity in a periodic square. (The Ω term corresponds to the rigid rotation.)

An Assembly of Point Vortices

Evolution equations

The temporal evolution of N point vortices located at (Subscript[z, j])(t) of strength 2π(Subscript[μ, j]) is given by

\(TraditionalForm\`dz\_j\/dt = ∑\+\(k ≠ j\)\(μ\_k\) \(\(w(z\_j - z\_k)\)\(.\)\)\)

Conserved Quantities

The hamiltonian H and two components ((Subscript[I, x]),(Subscript[I, y])) of the linear impulse are the conserved quantities.  
H=(∑_(i = 1)^N)(∑_(j = 1, j ≠ i)^N)(Subscript[μ, i])(Subscript[μ, j])(Subscript[h, ij]), (Subscript[h, ij])=-Re[ln σ((Subscript[z, i]) - (Subscript[z, j]))]+ (Ω/2)|(Subscript[z, i]) - (Subscript[z, j]) (| ^2),
(Subscript[I, x]) = ∑(Subscript[μ, i]) Re[(Subscript[z, i])], (Subscript[I, y]) = ∑(Subscript[μ, i]) Im[(Subscript[z, i])], 
The system of three vortices is integrable, while the four-vortices system shows chaos.

Numerical Examples

Numerical integration is carried out by using NDSolve and  Mathematica 5.2.

Case (I) N = 3 (integrable)

<figure 1 removed,  use external file>

Case (I) N = 4 (chaos) 
(Subscript[μ, i])=(2,2,-1,-1) and the initial position is (Subscript[z, j])(t=0)=(0,0.5, (Sqrt[3])/4, 0.5 + i (Sqrt[ 3])/4).

<figure 2 removed,  use external file>

Numerical Examples

Case (III) Vortex Sheet

(Subscript[μ, i])=1, N=100 and the initial distribution is (Subscript[z, j])(t=0)= j/N+ i ϵ sin (2πj/N) with ϵ=0.02
(silghtly deviated from the x-axis). 
The integration time is up to (Subscript[t, f])=0.1. The data of the positions are exported after the 
integration between (Subscript[t, s]) < t < (Subscript[t, s])+(Subscript[t, f])/1000 and this procedure is repeated 1000 times.

<VortexSheet.gif removed, use external file>

The total time to compute the motion of 100 vortices up to (Subscript[t, f])=0.1 is about 
two days on my desktop PC. 
The mathematica notebook is saved in an html format and the 1000 gif files 
are gathered by the software giam (http://homepage3.nifty.com/furumizo/).

Numerical Examples

Case (IV) Karman  Vortex  Street

(Subscript[μ, i])=-1 and the initial distribution (Subscript[z, j])(t=0)= j/(Subscript[N, 1])+  ϵ (Random[]+ i Random[]), for i=1, ⋯, (Subscript[N, 1])=50 
and (Subscript[μ, i])=1, (Subscript[z, j])(t=0)= j/(Subscript[N, 2])+1/N + i /h +  ϵ (Random[]+ i Random[]) for i= (Subscript[N, 1])+1, ⋯, (Subscript[N, 2])=50 with 
h=1/N and ϵ=0.0001 (N =(Subscript[N, 1])+ (Subscript[N, 2])=100).

<Karman.gif removed, use external file>

The pairing instability of the positive and negative vortices is the most remarkable.

Numerical Examples

Case (V) Turbulent Point Vortices

(Subscript[μ, i])=-1, for i=1, ⋯, (Subscript[N, 1])=50, and (Subscript[μ, i])=1, for i= (Subscript[N, 1])+1, ⋯, (Subscript[N, 2])=50 (N =(Subscript[N, 1])+ (Subscript[N, 2])=100). The initial distribution is 
(Subscript[z, j])(t=0)= Random+ i Random).

<TurbulentPVS.gif, TurbulentPV2.gif, TurbulentSF.gif, Scattering.gif, Pdf.gif removed, use external files>

Clustering of vortices are considered to occur in 2  
      D flows.

<figure4a.eps, figure4b.eps removed, use external files>

Scattering :  
      scattering of the vortex pair with the distance between the
positive and negative vortex h = 0.02 and various values of the distance d 
of the moving line and the target vortex
PDF :  PDF of the number of positive minus negative vortices 
in circles of radius r = 1/3:

Conclusions

If Mathematica  is used, we can
1) obtain a significant increase of research objects .  
2) save time by avoiding the unnecessary labor of programming . 
    3) receive a progress of the computer hardware and the software 
                   in the future .  For example,  
      we can increase the number N .  

As an example,  
      we have shown examples of the numerical simulation 
of point vortices in a periodic box. 

References :
http://nexgw . phys . s . 
              u - tokyo . ac . jp/
                umeki/
  http://arxiv . org/physics/0608266 
           (submitted to JPSJ).