pendulum

Виртуальная физическая лаборатория «Пружинный маятник в среде с сопротивлением»

public

 

Virtual Physical Laboratory “Mass Spring Damper System”

Project Mission: to develop a virtual physical laboratory for simulation a free damped oscillations of a spring pendulum

Programming Language: C++

Framework: Qt4 / Qt5

License: GNU GPL v3

System Description

This software simulates free damped oscillations of a spring pendulum.

The software allows you to adjust the following parameters of the model:

  • Mass
  • Initial displacement
  • Spring constant
  • Damping coefficient

The stopwatch, the experiment speed slider and the ruler to measure the displacement were added to improve usability.

The software allows you to plot graphs of the following functions:

  • Displacement as a function of time
  • Speed as a function of time
  • Energy as a function of time

Model

image

r — damping coefficient,

k — spring constant,

m — mass,

A_0 — initial displacement,

x — displacement,

t — time,

ω_0=sqrt(k/m) — ringing frequency of free undamped oscillations,

β=r/(2*m) — attenuation rate,

ω=sqrt(ω_0^2-β^2) — ringing frequency of free damped oscillations,

T=2*π/sqrt(ω_0^2-β^2) — period of oscillation,

A_T=A_0*exp(-β*T)*cos(ω*T) — oscillation amplitude at the time equal to the period,

θ=ln(A_0/A_T) — logarithmic decrement,

E_0=k*A_0^2/2 — energy at the start of the experiment,

x=A_0*exp(-β*t)*cos(ω*t) — current displacement,

v=Δx/Δt — current speed,

E=E_0*exp(-2*β*t) — current energy.