Ruling out closed orbits.
After reading this section of notes, you should
know what a gradient system is and understand why such a system can not have a closed orbit,
know what a Liapunov function is, and
know Dulac’s criterion and how to apply it.
From our experiences so far, we know that a two-dimensional autonomous system of the form
dxdt=f(x,y)dydt=g(x,y)
In this section, we introduce three common and relatively easy techniques that can be used to rule out the possibility that a system of the form
dxdt=f(x,y)dydt=g(x,y)
possesses closed orbits. These are gradient systems, Liapunoz functions, and Dulac’s criterion.
Suppose that F:Rn→R is a function such that ∂F∂xi exists for i=1,2,…,n. We define the gradient ∇F of F to be the vector
∇F(x1,x2,…,xn)=(∂F∂x1(x1,x2,…,xn)∂F∂x2(x1,x2,…,xn)⋮∂F∂xn(x1,x2,…,xn))
In particular, in two-dimensions
∇F(x,y)=(∂F∂x(x,y)∂F∂y(x,y))
Notation: We will use bold face letters such as x to stand for vectors. That is, x=(x1,x2,…,xn)T. Further, notation such as f(x) denotes concisely a vector field such as
f(x)=(f1(x1,x2,…,xn)f2(x1,x2,…,xn)⋮fn(x1,x2,…,xn))
We say that a system ddtx=f(x) is a gradient system if there is a (scalar) function F(x) that satisfies −∇F=f(x) in which case we have ddtx=−∇F. Sometimes a gradient system is also called a conservative system and the function F is called a potential.
In the plane R2, a system
dxdt=f(x,y)dydt=g(x,y)
is a gradient system if there is a function F(x,y) satisfying
dxdt=f(x,y)=−∂F∂xdydt=g(x,y)=−∂F∂y
For example, the system
dxdt=−2xdydt=2y
−∂F∂x=−2x−∂F∂y=−(−2y)=2y
lin_sys <- function(t,state,parameters){
with(as.list(c(state,parameters)),{
dx <- A %*% state
list(dx)
})
}
A <- matrix(c(-2,0,0,2),2,2,byrow=TRUE)
parms_mat <- list(A=A)
linear_flowField <- flowField(lin_sys,
xlim = c(-2, 2),
ylim = c(-2, 2),
parameters = parms_mat,
points = 19,
add = FALSE)
state <- matrix(c(1,0,1.0,0.25,-1.0,0.25,-1.0,-0.25,1.0,-0.25,-1,0,0,0.1,0,-0.1),
8, 2, byrow = TRUE)
linear_trajectory <- trajectory(lin_sys,
y0 = state,
tlim = c(0, 10),
parameters = parms_mat,
add=TRUE)
In general, gradient systems will not be linear. Further, not all linear systems are gradient systems.
Theorem: Closed orbits are impossible in gradient systems.
See (Strogatz 2015) for a proof.
Given a system
dxdt=f(x,y)dydt=g(x,y)
dxdt=−2xdydt=2y
again. A potential F must satisfy ∂F∂x=−(−2x)=2x. So let’s integrate this with respect to x. Doing so gives
F(x,y)=∫2x dx=x2+ϕ(y)
Why do we have the additive term of ϕ(y)? It is because any function of y alone is treated as a constant whenever we take a partial derivative with respect to x. Now, if F(x,y)=x2+ϕ(y) is actually a potential, then it must also satisfy
∂F∂y=∂∂y(x2+ϕ(y))=ϕ′(y)=−2y
∫ϕ′(y) dy=∫−2y dy
Thus, we conclude that F(x,y)=x2−y2 is a potential for the system
dxdt=−2xdydt=2y
In general, finding a potential in this way involes solving a system of differential equations
∂F∂x=−f(x,y)∂F∂y=−g(x,y)
and this may or may not be easy depending on how difficult it is to find antiderivatives for the functions on the right hand side.
Suppose that a system dxdt=f(x,y)dydt=g(x,y)
In particular, a parametric curve (x(t),y(t)) that is a solution to a system
dxdt=f(x,y)dydt=g(x,y)
For now, let’s make a contour plot of the potential F(x,y)=x2−y2 for the system
dxdt=−2xdydt=2y
the phase portrait of which was shown above.
Can you see how the contour lines are orthogonal to the trajectories
of the system? Note that we have used the function cf_func
from the ContourFunctions
package to obtain the previous plot.
Suppose that we have an autonomous system ddtx=f(x) with an equilibrium x∗. A function V that satisfies
V(x∗)=0 and V(x)>0 for all x≠x∗, and
ddtV(x)<0 for all x≠x∗
is called a Liapunov function.
Theorem: If a system ddtx=f(x) with an equilibrium x∗ has a Liapunov function, then the equilibrium x∗ is globally asymptotically stable. Hence, the system cannot have a closed orbit.
That x∗ is globally asymptotically stable means that for any initial condition x(t)→x∗ as t→∞. A system that has a globally asymptotically stable equilibrium cannot have a closed orbit since otherwise there would be at least one trajectory which would fail to approach the equilibrium x∗. Thus, we can use the existence of a Liapunov function for the purpose of ruling out closed orbits.
Consider the system
dxdt=−x+4ydydt=−x−y3
V(0,0)=0 and V(x,y)>0 as long as (x,y)≠(0,0), and
ddtV(x,y)=∂V∂xdxdt+∂V∂ydydt=(2x)dxdt+(8y)dydt=2x(−x+4y)+8y(−x−y3)=−2x2+8xy−8xy−8y4=−2x2−8y4
As you can check, the linearization of the system
dxdt=−x+4ydydt=−x−y3
at (0,0) is
(−14−10)
which has trace τ=−1 and determinant δ=4. So we conclude that the phase portrait near (0,0) is a stable spiral. The existence of a Liapunov function allows us to make an even stronger conclusion that the global phase portrait for the system is a stable spiral. We plot the phase portrait for this system here
nonlinear_example <- function(t,state,parameters){
with(as.list(c(state,parameters)),{
dx <- -state[1] + 4*state[2]
dy <- -state[1] - state[2]^3
list(c(dx,dy))
})
}
nonlinear_flowfield <- flowField(nonlinear_example,
xlim = c(-2, 2),
ylim = c(-2, 2),
parameters = NULL,
points = 17,
add = FALSE)
state <- matrix(c(1,1,-1,-1),2,2,byrow = TRUE)
nonlinear_trajs <- trajectory(nonlinear_example,
y0 = state,
tlim = c(0, 10),
parameters = NULL,add=TRUE)
The stable spiral is apparent.
The method of Liapunov functions is very powerful. However, it is in general not trivial to find Liapunov functions.
The following result is known as Dulac’s criterion:
Theorem: Let ddtx=f(x) be a continuously differentiable vector field defined on a simply connected region R of the plane R2. If there exists a continuously differentiable, real-valued function s(x) such that ∇⋅(sddtx) has one sign throughout R, then there are no closed orbits lying entirely in R.
Recall that the notation ∇⋅f refers to the divergence of the vector field f.
We refer to (Strogatz 2015) for the proof but note that the proof is an application of Green’s theorem from Calculus III.
We use Dulac’s criterion to show that
dxdt=ydydt=−x−y+x2+y2
has no closed orbits. Obviously the right hand side of this system is a continuously differentiable vector field defined in the entire plane R2 which happens to be a simply connected set (this essentially means that there are no holes in the plane). Now, let s(x,y)=e−2x, then
∇⋅(g(x,y)(dxdtdydt)T)=∇⋅(e−2x(dxdtdydt)T)=∂∂x(e−2xdxdt)+∂∂y(e−2xdydt)=∂∂x(e−2x(y))+∂∂y(e−2x(−x−y+x2+y2))=−2ye−2x−e−2x+2ye−2x=−e−2x<0, ∀ x
dxdt=ydydt=−x−y+x2+y2
and examine their corresponding stability properties. Further, you will rewrite the system in polar coordinates and see what that suggests about the phase portrait for the system which looks as follows
dulacs_example <- function(t,state,parameters){
with(as.list(c(state,parameters)),{
dx <- state[2]
dy <- -state[1] - state[2] + state[1]^2 + state[2]^2
list(c(dx,dy))
})
}
nonlinear_flowfield <- flowField(dulacs_example,
xlim = c(-3, 3),
ylim = c(-3, 3),
parameters = NULL,
points = 17,
add = FALSE)
state <- matrix(c(1,0,0,1,-1,0,0,-1,1,1,-1,1,-1,-1,1,-1,
2,-1,2,1),10,2,byrow = TRUE)
nonlinear_trajs <- trajectory(dulacs_example,
y0 = state,
tlim = c(0, 50),
parameters = NULL,add=TRUE)
Gradient systems, systems for which a Liapunov function exists, and systems for which Dulac’s criterion applies can not have closed orbits. This includes both limit cycles and nonlinear centers. If you have a system for which you have reason to believe that there should be no closed orbits, then you might be able to use one of these techniques to prove it. On the other hand, what do you do if you suspect that a system does possess closed orbits and you want to confirm it? In the case of stable limit cycles, the famous Poincarè-Bendixson theorem can often be used to provide a rigorous verification of the existence of a closed orbit. We will take up the study of this in the next section of notes.
For further details on the topics covered in this section of notes, see Chapter 7 from (Strogatz 2015).
Text and figures are licensed under Creative Commons Attribution CC BY-NC 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".