Phase space plot of the kicked rotor

April 21, 2012
By

(This article was first published on sieste » R, and kindly contributed to R-bloggers)

In the idealized physical world, a rotor is simply a mass m attached to an axis of length r, free to move in the plane. Gravity and friction are absent. Such a rotor becomes a kicked rotor if it is periodically hit with a hammer. Every kick transfers momentum p_k to the rotor and the time between successive kicks is T.

The current state of the rotor is completely described by the current angle of rotation \theta and the current angular momentum L. We shall be interested only in the state of the rotor right after the kick. All quantities evaluated right after the kick are indicated by a prime.

If the rotor rotates at an angular velocity \omega, the angle of rotation changes between two kicks by \omega T. Only the component of p_k in the direction of motion is transferred. Therefor the angular momentum increases by p_k r \sin\theta as a result of the kick. We have

L' = L + p_k r \sin\theta

\theta' = \theta + \omega' T,

where \omega' is the angular velocity after the kick. We can make the above equations dimensionless (unitless) by dividing the angular momentum L by a typical angular momentum of the system. This typical angular momentum is given by \hat{L}=rp=rmv=mr^2/T where v=r/T is the typical velocity of the system. We divide the L – equation by \hat{L} and get

l' = l + \frac{p_k T}{mr}\sin\theta \equiv l + K\sin\theta.

The dimensionless angular momentum l is the rotors angular momentum measured in units of the typical angular momentum \hat{L}. We have summarized some parameters into the constant K.

Now, the (already dimensionless) angle equation can be manipulated a little. We notice that \omega' T = v' T / r = p'T/mr = L'T/mr^2 which is the same as L'/\hat{L} which is simply the dimensionless angular momentum after the kick l'. So we now have

l' = l + K\sin\theta

\theta' = \theta + l',

where we can, without loss of generality, apply \mod 2\pi to the angle equation and thus also to the angular momentum equation.

This is the famous Chirikov standard map which describes the behavior of the kicked rotor right after the kicks. It maps a phase space point (\theta,l) before the kick to its corresponding point (\theta',l') after the kick.

What follows is an R-script that chooses 1000 random points on the square [0,2\pi]\times[0,2\pi] and uses each point as the starting point to draw 1000 iterations of the standard map:

smap<-function(t,l) {
  K<- 1
  for ( i in seq(1e3) ) { 
    t[i+1]<- (t[i]+l[i]) %% (2*pi)
    l[i+1]<- (l[i]+K*sin(t[i+1])) %% (2*pi)
  }   
cbind(t,l)
}

par(mar=rep(0,4))
plot(NULL,xlim=c(0,2*pi),ylim=c(0,2*pi),axes=F,xlab="",ylab="")
for (i in seq(1000) ) { 
t<-c(runif(1)*2*pi,runif(1)*2*pi)
    m<-smap( t[1],t[2] )
    points(m[,1],m[,2],col=rgb(runif(1),runif(1),runif(1)) ,pch=".",cex=2)
}

And this is the output:


To leave a comment for the author, please follow the link and comment on his blog: sieste » R.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...



If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...

Comments are closed.