3. Délka spirály
import numpy as np
import matplotlib.pyplot as plt
parametry pohybu:
úhlová rychlost otáčení $\omega = 1\;\text{s}^{-1}$
perioda oběhu $T = 2\pi / \omega = 6.28\;\text{s}$
počáteční vzdálenost bodu od počátku: $r(t = 0) = 1\;\text{m}$
radiální rychlost $v_r =\frac{dr}{dt} = \frac{r(t=0)}{T}$, tj. za jednu otáčku se dostaneme do počátku
omega=1
r=1
T=2*np.pi/omega
vr=r/T
časový krok $dt$
dt=T/10000
pole časů
t=np.arange(0,T,dt)
x=(r-vr*t)*np.cos(omega*t)
y=(r-vr*t)*np.sin(omega*t)
vx=-vr*np.cos(omega*t)-(r-vr*t)*omega*np.sin(omega*t)
vy=-vr*np.sin(omega*t)+(r-vr*t)*omega*np.cos(omega*t)
počet časových intervalů
n=np.size(t)
vypočítáme souřadnice $x, y$ pro pohyb, jehož trajektorie je spirála
$x(t)=(r-v_r t)\cos (\omega t)$
$y(t)=(r-v_r t)\sin (\omega t)$
x=(r-vr*t)*np.cos(omega*t)
y=(r-vr*t)*np.sin(omega*t)
vypočítáme také složky rychlosti jako časové derivace souřadnic
$v_x(t)=\dot{x}(t)=-v_r\cos(\omega t)-(r-v_rt)\omega\sin(\omega t)$
$v_y(t)=\dot{y}(t)=-v_r\sin(\omega t)+(r-v_rt)\omega\cos(\omega t)$
vx=-vr*np.cos(omega*t)-(r-vr*t)*omega*np.sin(omega*t)
vy=-vr*np.sin(omega*t)+(r-vr*t)*omega*np.cos(omega*t)
Nyní nakreslíme trajektorii pohybu
fig,ax=plt.subplots(figsize=(5,5))
ax.plot(x,y)
plt.title("trajektorie")
ax.set_xlabel("x")
ax.set_ylabel("y")
plt.show()
Teď spočítáme dráhu $s$, kterou hmotný bod urazil v čase od $0$ to $T$ jako součet useků uražených za časové okamžiky $dt$.
$s=\sum_{i=1}^n \frac{\sqrt{v_x(t_{i-1})^2+v_y(t_{i-1})^2}+\sqrt{v_x(t_i)^2+v_y(t_i)^2}}{2}\,dt$
s=0
for i in range(1,n):
s=s+(np.sqrt(vx[i-1]**2+vy[i-1]**2)+np.sqrt(vx[i]**2+vy[i]**2))/2*dt
Nakonec vypíšeme výsledek
print(f"časový krok dt = {dt} s")
print(f"počet intervalů n = {n}")
print(f"uražená dráha: s = {s} m")
časový krok dt = 0.0006283185307179586 s počet intervalů n = 10000 uražená dráha: s = 3.3829442906638465 m