Solved Problems In Classical Mechanics Analytical And Numerical Solutions With Comments May 2026

function dydt = pendulum_driven(t, y) beta = 0.2; omega0 = 1.0; Fd = 1.2; omegad = 2/3; theta = y(1); omega = y(2); phi = y(3); dtheta = omega; domega = -beta*omega - omega0^2*sin(theta) + Fd*cos(phi); dphi = omegad; dydt = [dtheta; domega; dphi]; end % Solve [t, y] = ode45(@pendulum_driven, [0 200], [0.1 0 0]); theta = y(:,1);

Introduction Classical mechanics problems can be approached either analytically (exact mathematical expressions) or numerically (approximate solutions via computation). The choice depends on the system’s complexity, the need for insight, and the availability of conserved quantities. Below we analyze three canonical problems, each solved both ways, with comments on the methodology. Problem 1: Simple Harmonic Oscillator (Mass–Spring System) System: Mass ( m ), spring constant ( k ), no damping. Equation of motion: [ m\ddotx + kx = 0 \quad \Rightarrow \quad \ddotx + \omega_0^2 x = 0, \quad \omega_0 = \sqrtk/m. ] Analytical Solution Assume solution ( x(t) = A\cos(\omega_0 t) + B\sin(\omega_0 t) ). Given ( x(0)=x_0 ), ( \dotx(0)=v_0 ): [ x(t) = x_0\cos(\omega_0 t) + \fracv_0\omega_0\sin(\omega_0 t). ] Alternative form: ( x(t) = R\cos(\omega_0 t - \phi) ), with ( R = \sqrtx_0^2 + (v_0/\omega_0)^2 ), ( \phi = \arctan(v_0/(\omega_0 x_0)) ). function dydt = pendulum_driven(t, y) beta = 0

x = np.zeros(n_steps) v = np.zeros(n_steps) x[0] = 1.0 # initial displacement v[0] = 0.0 # initial velocity for n in range(n_steps-1): v[n+1] = v[n] - omega0**2 * x[n] * dt x[n+1] = x[n] + v[n+1] * dt Given ( x(0)=x_0 ), ( \dotx(0)=v_0 ): [