PHYS 220 — Lab #4

This lab should only take you a single lab period. The assignment is due at the beginning of lecture on Monday, 2 Mar. Your solution should include all your codes (not mine) and plots, as well as written responses where appropriate. You should not use an Euler solver for this lab, since it is unstable for periodic functions. You may use your own ode solver or the generic rk2/rk4 solvers I have posted off of the course outline. The precision of rk4 will be helpful for this lab!

In fact, I'd recommend you simply write your own derivative function for use in a wrapper script that I'm providing here.


In this lab we'll investigate the behaviors of various pendula, once simple in PHYS 211, but lately rather complex. We now consider a dissipative term, non-linearity and a driving force when studying the pendulum. Throughout this lab we'll make a few simplifying assumptions. The first is that we've normalized all our coordinates by some natural scales so that they and their corresponding parameters are dimensionless. The natural frequency of the pendulum is Ω = 1, and that the driving frequency and force coefficient are fixed as &Omegad = 2/3 and Fd = 3/2. All of this means that we're going to vary the damping parameter q and see what happens to our system (i.e., these assumptions simplify the number of parameters you need to think about without simplifying the behavior of the system).

From lecture and the simplifications above we find an equation of motion for the damped, driven, non-linear pendulum as

θ'' = -sin θ - qθ'+ 3sin( 2/3 t)/2.

Keep in mind the points we discussed in class, like ensuring that start-up transients have died away before estimating periods. These two codes will be useful: deModTh.m makes sure that θ ∈ [-&pi,π); lyapPlot.m is a graphical tool to (crudely) estimate Lyapunov exponents. In this lab a time step of Δt = 0.01 and t ∈ [0,300] are probably sufficient.

Each problem below gives you a specific set of parameters to explore that takes you through a set of period doublings. Note that you need to run your simulation twice, once for each initial condition — however, if you're using my wrapper, it already does that work for you! For each you should do the following:

  1. 1/q = 1.34, θ1(0) = 0, θ2(0) = 0.001, and ω1(0) = ω2(0) = 0.
  2. 1/q = 1.36, θ1(0) = 0, θ2(0) = 0.001, and ω1(0) = ω2(0) = 0.
  3. 1/q = 1.372, θ1(0) = 0, θ2(0) = 0.001, and ω1(0) = ω2(0) = 0.
  4. 1/q = 1.375, θ1(0) = 0, θ2(0) = 0.001, and ω1(0) = ω2(0) = 0.
  5. 1/q = 1.41, θ1(0) = 0, θ2(0) = 0.001, and ω1(0) = ω2(0) = 0.
  6. For any one of the parameter sets above, perform the same task using ω in place of θ and discuss the results.
  7. For any one of the parameter sets above, create a phase space plot of ω vs. θ and discuss the results.