MAM2046W - Second year nonlinear dynamics
MAM2046W - Second year nonlinear dynamics
Section 1.6: Index Theory
Section 1.6: Index Theory
In this section we are going to develop some tools to allow us to say things about large scale, or global properties of a phase portrait. So far we have been able to zoom in on what is happening at, or close to a fixed point, but it would be useful to be able to talk about larger-scale properties of the dynamics of a system. This is going to seem a bit abstract at first, but stick with it and we will end up with some very powerful technology.
Imagine drawing some closed curve in a phase portrait. It can be any curve, so long as it’s closed and it doesn’t self-intersect.
Now walk along that curve and as you do so look at the vector field at each point. Each of the vectors makes some angle with the x-axis. Let’s see what we mean by this with one particular point on a particular curve on a vector field.
Let’s take an example from section 1.1:
x
1
x
2
x
2
x
1
3
x
1
This is the vector field:
In[]:=
p1=VectorPlot[{x2,x1-},{x1,-1.5,1.5},{x2,-1.2,1.2},AxesLabel(Style[#,20]&/@{"",""}),ImageSize->500]
3
x1
x
1
x
2
Out[]=
and let’s draw on some random closed curve, as shown:
In[]:=
circ[x_]=--2-0.25,-2-0.25;p2=Show[p1,Plot[circ[x],{x,0,1.5},PlotStyle->{{Thick,Black}}]]
2
0.5
2
(x-1)
2
0.5
2
(x-1)
Out[]=
and some point on the curve, say at :
1.2,-2-0.25=(1.2,0.1623)
2
0.5
2
(1.2-1)
In[]:=
point=1.2,-2-0.25p3=Show[p2,ListPlot[{point},PlotStyle->{Red,PointSize[0.03]}]]
2
0.5
2
(1.2-1)
Out[]=
{1.2,0.162311}
Out[]=
and the vector at that point which is:
x 2 |
x 1 3 x 1 |
0.1623 |
-0.528 |
In[]:=
vec=p4=Show[p3,Graphics[{Black,Thick,Arrow[{point,point+vec}]}]]
{point[[2]],point[[1]]-}
3
point[[1]]
2
Out[]=
{0.0811553,-0.264}
Out[]=
where the length of the arrow doesn’t matter here.
Now take that vector and calculate the angle with the positive x-axis (we’ve written here -ϕ because we measure in the counterclockwise direction):
In[]:=
p5=Showp4,Graphics[{Black,Thick,Line[{point,point+{0.2,0}}]}],GraphicsThick,Circlepoint,0.1,2π+ArcTan,0,Graphics[Text[Style["ϕ",25],point+{0.1,0.15}]]
vec[[2]]
vec[[1]]
OK, so that seemed like quite a lot of work for one point, but actually we could have calculated that angle just from
OK, so now imagine doing that as you walk counterclockwise around the whole curve...calculate this value ϕ as you do so.
Keep track of ϕ as you start at one point and return to the original point. Clearly ϕ will be the same where you started and where you stopped, so whatever ϕ did along the way, it will have moved by some integer number of times around a full rotation.
Let's have a look at that as we traverse the loop above. On the right we have just plotted the vector on its own. We can see here that as we go around the closed loop, the vector does one full rotation.
Let’s think about plotting ϕ as we move around the curve. Let’s parameterise the curve by the angle θ as we move around it in a counterclockwise direction.
If we do this naively, it looks a bit strange:
The important point is just the total change in ϕ as we move around the contour, and in this case it is 2π.
Was that necessarily the case? Well, how about we try the same thing but this time a loop in a different position.
Well, in this case we see that as it goes around, the arrow doesn’t do a full rotation at all - it certainly moves about, but it doesn’t ever point to the left.
Let’s do the same thing around this contour with ϕ as a function of θ.
Let’s do the same thing about the fixed point at the centre:
Intriguing! So in this case Δϕ is -2π.
Now let’s go around all the fixed points:
So we see here that we have gone around 2π again. But this is interesting because we are capturing three fixed points, two of which have Δϕ=2π and one of which has Δϕ=-2π. And overall we have Δϕ=2π...interesting.
OK, so I hope that you are convinced that whatever happens to this vector, it has to rotate around some integer number of times as we go around the closed loop.
Actually, we have to be a little bit careful, because if the loop ever touches a fixed point then the vector goes to zero and it doesn’t make sense to talk about whether a zero vector has rotated or not, so we will constrain ourselves to loops which don’t go through any fixed points.
So we’ve seen in the above example that with the first loop, the vector with angle ϕ rotates once, and with the second loop it doesn’t rotate at all.
The difference between the two is that the first loop encircled a center fixed point, and the second one didn’t encircle any fixed point at all...hmmm...I smell a clue...
We denote the Index of the closed curve, C, with respect to a vector field as:
Exercise
1) Try and imagine what the index of the curve that just goes around the saddle point. How about something that goes around the saddle point and one of the centers? How about all the fixed points?
2) Given the following vector field and curve, calculate the index.
Do this by taking points at, for instance π/4 intervals around the circle, and write down which way the vector is pointing as you go around counterclockwise. Then write each of those direction vectors in a row and see how much it has rotated ‘net’, that is, if it goes π one way, then π the other, then net it has not rotated at all.
2) So let’s say that we start with some curve which doesn’t go around a fixed point. We can deform the curve down to a very small circle (which also doesn’t contain a fixed point). If we zoom into any region in a vector field, then so long as we aren’t looking at a fixed point, the vectors should be pretty much constant in that region. So the index of a very small region without any fixed points must be zero. This means that the index of any curve without any fixed points in it is zero.
4) What if we are on a curve which is some closed orbit, ie. a trajectory of the system? In that case the vector field follows along the curve precisely (it’s always a tangent to the curve) and so as we go around once, the vector must rotate once, so the index of a closed orbit will always be 1.
Exercise
What is the index of a fixed point with a saddle-point, stable spiral, unstable spiral, center, star, degenerate node?
Indices of curves around multiple fixed points
To prove this, imagine drawing a circle around each fixed point, and join the circles by very close parallel lines, so that you end up with one continuous closed path. Now imagine what happens to the vector as you go along each of the parallel lines. Using this image should give you a good intuition as to why the above theorem holds.
Our final theorem for this section tells us that if we have a closed orbit, then the sum of all indices of the fixed points inside that closed orbit must be +1.
Think about how you might prove this statement. You have all the necessary information within these notes.
Non-linearisable fixed points
It would seem that with the above we can describe all the different types of fixed points and their indices. Indeed in an exercise you can show that centers, stars, stable and unstable spirals and degenerate nodes all have index 1, and saddles have index -1. However, this doesn’t cover the types of fixed points which can’t be linearised.
In the exercises you will have come across the example of
One question you might ask is whether you can have fixed points with indices other than 0, -1 or 1. The answer is that yes you can, and that they can be described most easily using the complex plane.
A dynamical system of the form
and taking the real and imaginary parts of this gives us the system
Looking at the vector field plot for this gives us:
and on inspection we see that the fixed point at the origin has index 2.
Can we get the index from integration in this case?
So we have that
Let’s convert this to polar coordinates:
Integrating this over θ from 0 to 2π tells us that:
Can we generalise this? Given:
We have:
So