Simulazione del moto di un punto materiale soggetto a una forza Università degli Studi di Brescia Elementi di Informatica e Programmazione – Università di Brescia 1 SCOPO DELLA SIMULAZIONE • Punto materiale: - dimensioni “trascurabili” - dotato di massa • Simulare in diverse situazioni il moto di uno o più punti materiali (es. proiettili, palloni da calcio, pianeti, …) soggetti a forze note (eventualmente anche risultanti dalle interazioni tra i punti materiali) Elementi di Informatica e Programmazione – Università di Brescia 2 MOTO DI UN PUNTO MATERIALE: NOZIONI RUDIMENTALI DI FISICA Elementi di Informatica e Programmazione – Università di Brescia 3 Moto di un punto materiale lungo una retta • Posizione di un punto in un certo istante x 0 • Velocità istantanea di un punto in un certo istante v dx v= dt “Variazione istantanea” della posizione (spazio) Elementi di Informatica e Programmazione – Università di Brescia 4 Esempio approssimato v(t) = 3m / s x(t) = 10m t 0 x = 10m t+2s 0 x = 16m x(t + Δt) = x(t) + v(t) * Δt in realtà vale solo per Δt “infinitesimo” Elementi di Informatica e Programmazione – Università di Brescia 5 • Accelerazione istantanea di un punto in un certo istante a dv a= dt “Variazione istantanea” della velocità Elementi di Informatica e Programmazione – Università di Brescia 6 Esempio approssimato a(t) = 2 m/s2 v(t) = 3m / s t 3 m/s 0 t+2s 7 m/s 0 v(t + Δt) = v(t) + a(t) * Δt in realtà vale solo per Δt “infinitesimo” Elementi di Informatica e Programmazione – Università di Brescia 7 • FORZA applicata su un punto in un certo istante F m F = ma a= F m La forza in un dato istante “causa” un’accelerazione istantanea Elementi di Informatica e Programmazione – Università di Brescia 8 Schema riassuntivo v a v= a= dx dt dv dt La velocità è una “variazione istantanea” dello spazio (posizione) L’accelerazione è una “variazione istantanea” della velocità F m F = ma La forza in un dato istante F a= m “causa” un’accelerazione istantanea Elementi di Informatica e Programmazione – Università di Brescia 9 Unità di misura (Sistema internazionale) v a F v= dx dt m/s a= dv dt m/s2 F = ma m a= Newton: kg*m/s2 F m Elementi di Informatica e Programmazione – Università di Brescia 10 Nello spazio tridimensionale (A) ! s = (x, y, z) y ! s x z Elementi di Informatica e Programmazione – Università di Brescia 11 Nello spazio tridimensionale (B) ! s = (x, y, z) ! v = (vx , vy , vz ) ! a = (ax , ay , az ) ! v y ! s ! a x z ! F = (Fx , Fy , Fz ) F = ma Elementi di Informatica e Programmazione – Università di Brescia 12 F = ma Fx = max La forza risultante Fy = may in un dato istante “causa” Fz = maz dv a= dt ds v= dt dvx dt dv ay = y dt dv az = z dt dx vx = dt dy vy = dt dz vz = dt ax = un’accelerazione istantanea L’accelerazione è una “variazione istantanea” di velocità La velocità è una “variazione istantanea” dello spazio (posizione) Elementi di Informatica e Programmazione – Università di Brescia 13 SIMULAZIONE: MODELLO E TECNICA Elementi di Informatica e Programmazione – Università di Brescia 14 Modellizzazione del tempo • PROBLEMA: non possiamo simulare un dominio “continuo” SOLUZIONE: DISCRETIZZAZIONE DEL TEMPO (introduce un’approssimazione!!!) Nota: esistono svariate tecniche sofisticate di discretizzazione, noi applichiamo solo una semplice idea… Elementi di Informatica e Programmazione – Università di Brescia 15 Discretizzazione del tempo(1) a(s, t) = F(s, t) / m s (t) v(t) t … 0 Δt Elementi di Informatica e Programmazione – Università di Brescia Tempo 16 Discretizzazione del tempo(2) a(s, t) = F(s, t) / m s (t) v(t) Ipotesi semplificative v(t + Δt) = v(t) + a(s, t) * Δt s (t + Δt) = s (t) + v(s, t) * Δt t … 0 Δt Elementi di Informatica e Programmazione – Università di Brescia Tempo 17 Simulazione: il modello ENTITA’ : PUNTI MATERIALI • Parametri: massa m • Variabili di stato - coordinate x, y, z (al tempo corrente t) - velocità istantanea vx, vy, vz (al tempo corrente t) - accelerazione istantanea ax, ay, az (al tempo corrente t) EVENTI - variazione x, y, z (secondo velocità istantanee) - variazione vx, vy, vz (secondo acceleraz. istantanee) - applicazione di forza e variaz. ax, ay, az Elementi di Informatica e Programmazione – Università di Brescia 18 Gestione del tempo Per ogni punto materiale, memorizziamo: - coordinate x, y, z (al tempo corrente t) - velocità istantanea vx, vy, vz (al tempo corrente t) - accelerazione istantanea ax, ay, az (al tempo corrente t) Simulazione “Unit-time advance”: - MC avanza ad ogni passo di un certo Δt Eventi ad ogni passo (aggiornamento t←t+Δt): - aggiornamento x, y, z sulla base di vx, vy, vz - aggiornamento di vx, vy, vz sulla base di ax, ay, az - aggiornamento di ax, ay, az sulla base della forza applicata Elementi di Informatica e Programmazione – Università di Brescia 19 Simulazione “Unit-time Advance” INIZIALIZZAZIONE (t=0: coordinate, velocità e accelerazione iniziali) Incremento Master Clock di una unità Per ogni punto materiale: - Aggiornamento posizione x, y, z - Aggiornamento velocità vx, vy, vz - Calcolo forza risultante e aggiornamento ax, ay, az FINE Elementi di Informatica e Programmazione – Università di Brescia 20 ESEMPIO Moto di un proiettile soggetto alla forza di gravità mg, |g|=9.8 m/s2 (utilizziamo un piano cartesiano – coordinate x,y) Elementi di Informatica e Programmazione – Università di Brescia 21