c_values = [0, 0.2, 0.5, 1.5] # Wartości współczynnika tłumienia c print(c_values)

for c in c_values: omega = 0 theta = theta_0 / 180 * math.pi time_values = [] theta_values = []

print("Tłumienie c =", c) time_2 = 0 for i in range(iterations): time = i * h time_values.append(time / T_0) theta_values.append(theta)

omega_2 = omega theta, omega = runge_kutta(theta, omega, h, c) if (omega * omega_2 < 0) or (omega_2 == 0): print("T/2/T_0=", (time - time_2) / T_0) time_2 = time

plt.plot(time_values, theta_values)

# WYKRESY - RYSOWANIE: plt.xlabel(r'Czas unormowany $t/T_0$') plt.ylabel(r'$\theta(t)$ [stopnie]') plt.title('Wykres kąta wychylenia wahadła z tłumieniem od czasu') plt.grid(True) plt.legend(['c = 0', 'c = 0.2', 'c = 0.5', 'c = 1.5'])

plt.show()

if __name__ == "__main__": main()

Równanie różniczkowe zwyczajne rzędu n Jeżeli mamy równanie różniczkowe zwyczajne rzędu to w szczególnych wypadkach można obniżyć jego rząd. Zagadnienie obniżania stopnia równań różniczkowych omawia np. Np. gdy dane jest równanie różniczkowe w postaci jawnej

to zamienia się je na układ równań rzędu 1 poprzez wprowadzenie dodatkowych zmiennych