# %% Gitt som utgangspunkt: import numpy as np import matplotlib.pyplot as plt def y_komp(v0y, t): g = 9.81 return v0y*t - 0.5*g*t**2 def x_komp(v0x, t): return v0x*t tid = np.linspace(0, 22, 100) v0 = 150 vinkel = np.pi/4 vx_init = v0*np.sin(vinkel) vy_init = v0*np.cos(vinkel) Xkomp = x_komp(vx_init, tid) Ykomp = y_komp(vy_init, tid) plt.close('all') plt.plot(Xkomp, Ykomp) plt.xlabel('x [m]') plt.ylabel('y [m]') plt.grid() plt.show() plt.savefig('plott_kanonkule.pdf') # %% Losning: M = np.array([tid, Xkomp, Ykomp]).T np.savetxt('kanonkule.txt', M, fmt='%.3f',delimiter=' ') Ymax = np.argmax(Ykomp) print('Max hoyde til kula er', round(Ykomp[Ymax],2), 'm') Xmax = 0 for i in range(0, len(Ykomp), 1): if (Ykomp[i] >= 0 and Ykomp[i+1] < 0): Xmax = i print('Max lengde til kula er', round(Xkomp[Xmax],2),'m') # Mer noyaktig X_lengde_noyaktig = (Xkomp[Xmax] + Xkomp[Xmax + 1])/2 print('Mer noyaktig: Max lengde til kula er', round(X_lengde_noyaktig, 2), 'm') h_sek_15 = y_komp(vy_init, 15) print('Etter 15 sek er hoyden', round(h_sek_15, 2), 'm')