|
A plot of the ratio between the actual period of a pendulum and the approximate value obtained for small angles, as a function of the amplitude. According to Wikipedia:Pendulum (mathematics), the oscillation period for small angles is given by:

while the actual period for any angle is given by:

where:

so the ratio is given by:

and this is the function plotted in the graph. First, with the following Matlab code I created a file called pendulum_period.dat:
res=2000; % resolution
sup=pi/2; % max angle to be used in the plot (in radians, less than pi)
phi=pi/2; % integration upper limit
% inizialization
T=zeros(1,res);
for i=1:res
theta0=i*sup/res; % theta0 is the pendulum amplitude
k = sin(theta0/2);
F = @(t) 1./sqrt(1-(k*sin(t)).^2);
T(i)=quad(F,0,phi); % numerical integration
end
T = 2./pi.*T; % normalization
deg = 180/pi*sup*(1:res)./res; % conversion to degrees
% saving in the external file
temp = [deg; T];
temp = temp';
save -ascii 'pendulum_period.dat' temp;
then, in order to plot it, I used the following Gnuplot code:
# set the output
set terminal svg
set output "pendulum_period.svg"
# axis properties
set yrange [0.99:1.08]
set xzeroaxis linetype -1 linewidth 0.5
set yzeroaxis linetype -1 linewidth 0.5
set xtics axis
set ytics axis
set key off
plot "pendulum_period.dat" using 1:2 with lines linewidth 2
This code creates a file called pendulum_period.svg. I heavily post-processed it with Inkscape.
|