Note su simulazione del moto di un punto materiale soggetto a una

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