Numerical Simulation of Foucault Pendulum
The goal of this project is to numerically simulate the motion of a Foucault pendulum projected onto the XY plane using C++ programming. The equation of motion for a Foucault pendulum is a coupled second-order differential equation that has an oscillatory nature. Consequently, the Runge-Kutta 4th order method is used to increase accuracy. The simulation was done for a simplified model in which the [latex]\omega^2[/latex] terms were ignored, as well as the full equation of motion without this simplification. The results for both cases were consistent with the expected motion of a real Foucault pendulum. Because the value of the Earth’s angular velocity is small, the simplification did not affect the pendulum’s behavior in a way that obvious deviation could be detected.
The constants and initial conditions used in the simulation are provided in the tables below.
Quantity | Value |
---|---|
g | 9.83 [latex]\frac{m}{s^2}[/latex] |
L | 67 [latex]m[/latex] |
[latex]\omega_{Earth}[/latex] | [latex]\frac{2\pi}{86400} \frac{rad}{s}[/latex] |
[latex]\lambda[/latex] | [latex]49^{o}[/latex] |
Quantity | Value |
---|---|
[latex]x_{0}[/latex] | 0.67 [latex]m[/latex] |
[latex]\dot{x}_{0}[/latex] | 0 [latex]\frac{m}{s}[/latex] |
[latex]y_{0}[/latex] | 0 [latex]m[/latex] |
[latex]\dot{y}_{0}[/latex] | 0 [latex]\frac{m}{s}[/latex] |
Animations for numerical solution results are provided as follows.
This animation shows a fixed axis for 30 minutes and represent the area covered by the pendulum (the blue lines).
This animation shows a auto scaled axis for 5 minutes and represent the path of pendulum during this time frame(the blue lines).
Description
This is the final project for "computational physics" course at UAlbany.
Language: Python
Method: Runge-Kutta 4th order