## Section 3.4: Bifurcations - Pitchfork bifurcations

Section 3.4: Bifurcations - Pitchfork bifurcations

Next up we’re going to look at so-called pitchfork bifurcations. In this case we’re going to go from one fixed point to three. Before looking at the phase diagrams and bifurcation diagram below, see if you can imagine a function, which when you alter a parameter goes from one zero to three.

There are actually two different types of pitchfork bifurcations, one is a supercritical pitchfork bifurcation, and this occurs in equations of the form

x

3

x

This is just like the saddle-node bifurcation normal form, but with an extra factor of . ie we can write: =x(r-), so it’s going to have the same fixed point behaviour as the saddle note, with an extra fixed point at =0. We can see from this that that we will always have a fixed point at = 0, but as in the last example, it’s not always going to be the same kind of fixed point.

x

x

2

x

x

x

Let’s again draw in our phase portraits for <0, =0 and >0.

r

In[]:=

ploptions={AxesLabel{Style["x",14],Style["",14]},AxesOrigin{0,0},PlotRange{-1.5,1},AspectRatio0.5};pla=Show[Plot[-x-,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-0.8,0},{-0.25,0}},{{0.8,0},{0.25,0}}},Graphics[Disk[{0,0},0.1]],PlotLabelStyle["r<0",14]];plb=Show[Plot[-,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-0.8,0},{-0.25,0}},{{0.8,0},{0.25,0}}},Graphics[Disk[{0,0},0.1]],AxesOrigin{0,0},PlotLabelStyle["r=0",14]];plc=Show[Plot[x-,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-1.8,0},{-1.25,0}},{{-0.25,0},{-0.8,0}},{{0.25,0},{0.8,0}},{{1.8,0},{1.25,0}}},Graphics[Circle[{0,0},0.1]],Graphics[Disk[{1,0},0.1]],Graphics[Disk[{-1,0},0.1]],PlotLabelStyle["r>0",14]];GraphicsGrid[{{pla,plb,plc}},ImageSize1000,Spacings-80]

x

3

x

3

x

3

x

Out[]=

It looks like from <0 to r=0 nothing changes, but let’s do a stability analysis. Let’s first of all look at at small . ie. ask the question about what is happening close to =0. For small , << so we can approximate the equation by:

r

r<0

x

x

x

3

x

x

x

ie. we can ignore the term. The solution to this differential equation is just an exponential decay:

3

x

x=

x

0

rt

remembering of course that is negative. So for , if you start a little away from =0 then you will exponentially decay towards =0.

r

r<0

x

x

How about if r actually equals zero? Well, then the equation is

x

3

x

and this has solution:

x=

x

0

2t+1

2

x

0

Which decays much more slowly than the exponential decay. In fact, for late times (ie. large ), this goes like .

t

x=

±1

2t

Make sure you can see this.

Let's plot what happens if you start in both cases at x=0.1, and let's look at a small value of r and compare it with r=0, so we can see that a very small change has a big impact. Let's go for r= - 0.01.

In[]:=

x[t]/.DSolve[{x'[t]-,x[0]0.1},x,t]//Simplify//Quiet;pl1=Plot[%,{t,0,500},PlotStyle{Blue},AxesLabel{Style["t",14],Style["x(t)",14]}];x[t]/.DSolve[{x'[t]-0.01x[t],x[0]0.1},x,t]//Simplify//Quiet;pl2=Plot[%,{t,0,500},PlotStyle{Red}];Show[pl1,pl2,PlotRangeAll,AxesOrigin{0,0},PlotLabel{Style["r=-0.01",14,Red],Style["r=0",14,Blue]}]

3

x[t]

Out[]=

We see that with just a very small change in r, the behaviour changes from exponential decay of over time, to a much shallower form of decay. This slow decay is called Critical Slowing Down.

x

OK, so what have we got? Well, for negative we have one fixed point which is stable, and indeed exponentially slow to decay. At =0, we have a fixed point, but you will only ever decay to it very slowly, and then for >0, kablam! You have three fixed points, two of which are stable, and one unstable, which replaces the old stable one. For positive r, the critical points will be at the positive solutions to:

r

r

r

rx-=0

3

x

ie

x=±

r

The bifurcation plot looks like:

In[]:=

Show[Plot[0,{r,-1,0},PlotStyle{Thick,Black},PlotRange{{-1,1},{-1,1}},AxesLabel(Style[#,20]&/@{"r","x"}),AspectRatio1],Plot[0,

r

,-r

,{r,0,1},PlotStyle{{Thick,Black,Dashed},{Thick,Black},{Thick,Black}},AxesLabel(Style[#,20]&/@{"r","x"}),AspectRatio1]]Out[]=

and all of a sudden you can, I hope, see why it’s called a pitchfork bifurcation.

Here is a question: Remember when we spoke about potentials, a few pages back, and found a such that we could write:

V(x)

x

Calculate what V(x) would be for the differential equation at the top of the page, and then plot it for different values of r. What do you notice? Imagine that this was the landscape of a hill...what do the critical points look like?

Now give it a go yourself. Draw the bifurcation diagram for the equation:

x

3

(x+2)

OK, so we said that there are two types of pitchfork diagrams. We've just looked at supercritical ones, now we’re going to look at subcritical pitchfork bifurcations. These look very similar but have some important differences. They are of the form

x

3

x

It’s just a change in sign of the term. So, let’s run through the same procedure. First we’ll explore what happens for different values of :

3

x

r

In[]:=

ploptions={AxesLabel{Style["x",14],Style["",14]},AxesOrigin{0,0},PlotRange{-1.5,1},AspectRatio0.5};pla=Show[Plot[-x+,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-1.25,0},{-1.8,0}},{{-0.8,0},{-0.25,0}},{{0.8,0},{0.25,0}},{{1.25,0},{1.8,0}}},Graphics[Disk[{0,0},0.1]],Graphics[Circle[{1,0},0.1]],Graphics[Circle[{-1,0},0.1]],PlotLabelStyle["r<0",14]];plb=Show[Plot[,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-0.25,0},{-0.8,0}},{{0.25,0},{0.8,0}}},Graphics[Circle[{0,0},0.1]],AxesOrigin{0,0},PlotLabelStyle["r=0",14]];plc=Show[Plot[x+,{x,-2,2},Evaluate[ploptions]],Graphics[Arrow[#]]&/@{{{-0.25,0},{-0.8,0}},{{0.25,0},{0.8,0}}},Graphics[Circle[{0,0},0.1]],PlotLabelStyle["r>0",14]];GraphicsGrid[{{pla,plb,plc}},ImageSize1000,Spacings-80]

x

3

x

3

x

3

x

Out[]=

It looks pretty similar, but now the single fixed point is unstable. You can do the same analysis close to = 0, and you will find that for the solutions are exponentially unstable, whereas for = 0, it’s unstable, but you will decay away very slowly (like the ). Now the bifurcation plot looks like:

x

r>0

r

t

In[]:=

Show[Plot[0,{r,0,1},PlotStyle{Thick,Black,Dashed},PlotRange{{-1,1},{-1,1}},AxesLabel(Style[#,20]&/@{"r","x"}),AspectRatio1],Plot[0,

-r

,--r

,{r,-1,0},PlotStyle{{Thick,Black},{Thick,Black,Dashed},{Thick,Black,Dashed}},AxesLabel(Style[#,20]&/@{"r","x"}),AspectRatio1]]You can show that this goes off to infinity when

ie. when

So this is really really unstable, and that instability is actually pushed by the cubic term.