Computation in Classical Mechanics

Todd Timberlake, Berry College

[Overview] [Notes and Handouts] [Computational Projects] [Hamiltonian Chaos]

Overview

This website is intended to supplement a article, co-authored with Javier Hasbun and published in the American Journal of Physics (v. 76, pp. 334-339, April/May 2008), as well as a poster (PDF, 284 KB) that I presented at the Computational Physics for Upper Level Courses conference in July 2007. The poster, and parts of the paper, describes the ways that computational physics has been integrated into the physics curriculum at Berry College. They key piece of this integration has been the development of a series of computational projects that are assigned as part of Berry's two-semester sequence in classical mechanics. The primary purpose of this website is to make these computational projects publicly available in the form of Mathematica notebooks.

To view the PDF files listed on this page you will need the free Adobe Reader program (or another PDF display program such as Apple's "Preview"). To view (but not edit) the Mathematica (MMA or .nb.zip) files you will need the free Mathematica Player program. To take full advantage of the Mathematica files you will need Mathematica (which is not free). All of the Mathematica notebooks should be fully compatible with Mathematica 6 or later, but may not be compatible with earlier versions of Mathematica. Please note that all of the Mathematica files are distributed as zip archives to facilitate downloading. You can also obtain all of the files at once by downloading this zip archive.


Notes and Handouts

The table below includes links to several computation-related files that are distributed to students in the classical mechanics courses at Berry. A description of the contents of each file, as well as the size of the file, is given.

File Link Description of File Contents Format/Size
Syllabus302.pdf This is the syllabus for the Classical Mechanics I (PHY 302) course. It provides a schedule of topics as well as some information about how the computational projects are used in the course. PDF/61KB
Syllabus402I.pdf This is the syllabus for the Classical Mechanics II (PHY 402) course. It provides a schedule of topics as well as some information about how the computational projects are used in the course. Note that this course is part of Berry's Writing-Across-the-Curriculum program and therefore the computational projects are used as the basis for formal writing assignments PDF/64KB
MathematicaTutorial.nb.zip This is an introduction to Mathematica designed to get students familiar with the basic features of the software so that they can start using it right away. MMA/100KB
TimeOfFall.nb.zip Code to determine the time of fall for an object falling to Earth from a great height in the absence of air resistance (but with changing gravitational force due to distance from Earth). MMA/6KB
ODEalgorithms.nb.zip Tutorial with exercises on two simple algorithms for computing numerical solutions to systems of ODEs: the Euler algorithm and the Euler-Cromer algorithm. Uses the simple harmonic oscillator as an example. MMA/142KB
RootFindingAlgorithms.nb.zip Tutorial with exercises on two simple algorithms for finding roots of a function: the Newton-Raphson method and the bisection method. MMA/32KB
3DHO.nb.zip Plots of the motion of 2D and 3D harmonic oscillators, with code. MMA/124KB
DrivenHO.nb.zip Plots and notes related to the driven harmonic oscillator, with code. MMA/343KB
VanDerPol.nb.zip Plots and notes related to the undriven and driven Van der Pol oscillator, with code. MMA/718KB
DrivenPendulum.nb.zip Plots and notes related to chaos in the driven pendulum, without code. MMA/587KB
NewDrivenPendulum.nb.zip More plots and notes related to chaos in the driven pendulum, without code. MMA/863KB
DrivenPendulum.nb.zip Code for creating driven pendulum plots. MMA/706KB
mapnotes.nb.zip Plots and notes related to the Logistic Map, without code. MMA/278KB
mapping.nb.zip Code for generating Logistic Map plots. MMA/1.2MB
fpnotes.nb.zip Notes on the stability of fixed points in the Logistic Map, without code. MMA/263KB
fixedpts.nb.zip Code for generating some of the plots related to the fixed points of the Logsitic Map. MMA/43KB
BeadOnParabolicWire.nb.zip Animation of a bead moving on a rotating parabola-shaped wire. MMA/73KB
EffectivePotential.nb.zip 3D surface plot of the effective potential for the 2-body Kepler problem, with code. MMA/407KB
CoupledOscillators.nb.zip Plots illustrating normal modes and beats in coupled oscillator systems, with code. MMA/67KB
LiouvillePlots.nb.zip Notes and plots illustrating Liouville's Theorem, without code. MMA/812KB
Liouville.nb.zip Code for generating plots related to Liouville's Theorem. MMA/741KB


Computational Projects

The table below contains links to the Mathematica notebooks that describe each of the computational projects assigned in Classical Mechanics I (PHY 302) or II (PHY 402). Each link is accompanied by a brief description of the project as well as an indication of the file format and size.

File Link Description of File Contents Format/Size
CP1.nb.zip Finding fixed points of an iterated map and evaluating their stability. MMA/2KB
CP2.nb.zip Projectile motion with quadratic air resistance. MMA/16KB
CP3.nb.zip Motion of the harmonic oscillator with linear and quadratic damping. Students use Euler and Euler-Cromer algorithms discussed in ODEalgorithms.nb.zip above. MMA/3KB
CP4.nb.zip The periodically-driven harmonic oscillator, including transient and steady-state motion. MMA/2KB
CP5.nb.zip The periodically-driven Duffing oscillator, including limit cycles and chaos. MMA/2KB
CP6.nb.zip An investigation of the tent map (an iterated function system), including bifurcations, chaos, and Lyapunov exponents. MMA/2KB
CP7.nb.zip Application of Lagrangian mechanics to the double pendulum, and animation of the resulting motion. Foreshadows a discussion of normal modes in coupled oscillators. MMA/60KB
CP8.nb.zip Determining the radius and stability of a circular orbit given a central-force law. MMA/622KB
Project1.nb.zip Projectile motion on Earth with inertial forces (but without air resistance). MMA/70KB
Project2.nb.zip Rigid body motion, including principal axes and moments of inertia, angular momentum, kinetic energy, and the parallel-axis theorem. MMA/5KB
Project3.nb.zip Analyzing the normal modes of a chain of oscillators to illustrate standing waves on a string. MMA/6KB
Project4.nb.zip Illustrating Liouville's Theorem for integrable systems. MMA/160KB
LongPaperA.nb.zip An extensive investigation of an area-preserving map on the unit 2-torus to illustrate several aspects of Hamiltonian chaos. Note: I generally assign each student or group a slightly different (but closely related) version of the map to study. MMA/3KB


Hamiltonian Chaos

The last computational project listed in the previous section deals with Hamiltonian Chaos, a topic not usually taught in undergraduate classical mechanics courses. If you are interested in including this topic in your course please take a look at this web page, which is designed to accompany an article that I wrote for the American Journal of Physics on a computation-based approach to teaching Hamiltonian Chaos.
[TODD TIMBERLAKE'S RESEARCH WEBPAGE]

Todd K. Timberlake (ttimberlake@berry.edu)