Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Abstract
In questo studio effettuiamo l’integrazione numerica di un sistema di equazioni differenziali con l’algoritmo di Verlet nelle
velocità osservando l’andamento della traiettoria (x(t), y(t)) e calcolando i tempi di ritorno per la traiettoria x(t) di cui ne
calcoliamo la media < Trit >= 3.1265 s. Studiamo lo stesso sistema di equazioni differenziali con due termini aggiuntivi,
di cui uno è l’attrito viscoso γ e analizziamo l’andamento della traiettoria (x(t), y(t)) e x(t) per verificare se si tratta di un
attrattore. Siccome il sistema in presenza dell’elemento dissipativo γ segue traiettorie diverse a seconda delle condizioni
iniziali imposte, effettuiamo uno studio più accurato della dipendenza dalle condizioni iniziali degli stati asintotici del
(1) (2)
sistema, x∞ ≃ 1.11 e x∞ ≃ −1.11, mediante il bacino di attrazione e analizziamo la natura caotica del sistema.
Figure 1: Traiettoria (x(t), y(t)) del moto ottenuta con l’algoritmo di Verlet nelle velocità.
1
Notiamo subito che si tratta di un sistema hamiltoniano, infatti l’energia totale ε(t) del sistema è conservata. Inoltre la sim-
metria di tale traiettoria è dovuta anche all’algoritmo di integrazione che in questo caso è simplettico, infatti il determinante
della matrice delle perturbazioni lineari det(TV V ) = 1.
Dalla teoria sappiamo inoltre che l’algoritmo di Verlet autopartente è di ordine quadratico, ovvero l’errore di approssimazione
globale di tale algoritmo è O(∆t2 ). É data inoltre la quantità
1
vx (t)2 + vy (t)2 + (x(t)2 + y(t)2 − 1)2
ε(t) = (5)
2
che rappresenta l’energia totale del sistema, composta da un primo termine di energia cinetica e un secondo di energia
potenziale, assumendo che la massa del sistema sia unitaria m = 1. Sapendo che tale grandezza si conserva, effettuiamo
uno studio numerico sull’errore di approssimazione dell’algoritmo di Verlet. Eseguiamo il programma con 3 ∆t diversi
[0.01, 0.001, 0.0001] e per ogni ∆t otteniamo un valore dell’errore sull’energia dato da:
|ε(t) − ε0 |
∆ε = (6)
ε0
Riportiamo su un grafico i valori dell’errore sull’energia ∆ε in funzione dei 3 ∆t precedenti ed eseguiamo un fit lineare della
forma y = ax+b per valutare la pendenza della retta di regressione. Di seguito riportiamo il fit effettuato su scala logaritmica
Come si evince dal grafico abbiamo ottenuto una pendenza a = 1.96 della retta di regressione lineare che è compatibile con la
teoria, secondo cui a = 2.00. Pertanto siccome l’errore diminuisce come ∆t2 , l’algoritmo di Verlet implementato è di ordine
O(∆t2 ).
2
2 Tempi di ritorno della traiettoria x(t)
Consideriamo adesso la traiettoria x(t) che otteniamo mediante l’integrazione numerica delle equazioni differenziali con
l’algoritmo di Verlet della parte 0 e 1. Riportiamo di seguito il grafico ottenuto
Figure 3: Traiettoria x(t) in funzione del tempo ottenuta con l’algoritmo di Verlet nelle velocità.
Osserviamo che la traiettoria x(t) in funzione del tempo, attraversa più volta l’asse x = 0. Osserviamo quanto detto per via
grafica
Figure 4: In arancione sono marcati i punti in cui la traiettoria x(t) passa per l’asse x = 0.
Chiamiamo tempo di ritorno Trit il tempo trascorso tra 2 attraversamenti successivi dell’asse. Per ottenere un’espressione
analitica di tali tempi osserviamo che l’equazione della traiettoria può essere scritta nel seguente modo:
xn+1 − xn
xn+1 = xn + (t − tn ) (7)
tn+1 − tn
3
dove il secondo termine a secondo membro rappresenta, mediante il rapporto incrementale, la velocità del corpo. Sapendo
che nel momento in cui il sistema passa per l’asse x = 0, la posizione in questo dato istante t∗ vale zero, quindi x(t∗ ) = 0,
otteniamo t∗ come:
xn
t∗ = tn + (8)
xn − xn+1
A questo punto il tempo di ritorno Trit è dato dalla differenza tra due istanti t∗ successivi (per i quali è soddisfatta la
condizione x = 0), che chiamiamo t∗ e t∗ . Per cui abbiamo:
∗
Trit = t∗ − t (9)
Di seguito riportiamo un grafico dei tempi di ritorno Trit e della media aritmetica di tali quantità:
Figure 5: Tempi di ritorno per ogni attraversamento della traiettoria per la condizione x = 0.
N
1 X
< Trit >= Tk = 3.1265 s (10)
M i=0
in cui M sono tutti gli attraversamenti della traiettoria per l’asse x = 0 e Tk i tempi di ritorno per ogni attraversamento.
4
vx (t + 1) = vx (t) + (ax (t)) ∆t (13)
Figure 6: Traiettoria del moto (x(t), y(t)) ottenuta con l’algoritmo di Runge-Kutta Ord. 2.
Osserviamo che la traiettoria ottenuta corrisponde alla descrizione di un sistema in regime smorzato, infatti il sistema tende
a convergere asintoticamente verso il punto (x, y) ≃ (1.11, 0). Possiamo osservare meglio tale comportamento smorzato
mediante il grafico della traiettoria x(t) in funzione del tempo, otteniamo infatti
Figure 7: Traiettoria x(t) in funzione del tempo con l’algoritmo di Runge-Kutta Ord. 2.
Dal grafico di x(t) osserviamo come il valore a cui il sistema tende asintoticamente per T → +∞ corrisponde a ≃ 1.11. Tale
sistema è simile al pendolo smorzato in cui osserviamo la presenza di 2 punti invarianti, ovvero il punto di minima altezza
x∞ e il punto di massima altezza x0 . Ai fini dei quest’analisi risulta interessante il punto x∞ , poichè esso rappresenta un
5
insieme limite1 , dato che la traiettoria converge verso di esso. A causa dell’attrito viscoso, il punto x∞ è detto attrattore.
Un attrattore è un insieme verso il quale il sistema evolve dopo un tempo sufficientemente lungo. Pertanto in base a quanto
detto possiamo assumere il sistema oggetto di studio come un attrattore, in cui x∞ ≃ 1.11, il quale è un valore asintotico.
Inoltre per caratterizzare meglio il punto x∞ è possibile calcolare le derivate parziali dell’energia potenziale rispetto alle
coordinate x, y, ovvero ∂1 V e ∂2 V , e trovare che il punto x ≃ 1.11 corrisponde a un minimo dell’energia potenziale.
4 Parte Extra
Integriamo le equazioni della parte 3 con l’algoritmo di Runge-Kutta Ord. 2 imponendo le seguenti condizioni iniziali:
x(0) = 0, y(0) = 0, vx (0) = v0 cos(α), vy (0) = v0 sin(α). Rappresentiamo su un grafico le traiettorie (x(t), y(t)) ottenute per
valori di α ∈ [0, π/4] e v0 ∈ [0, 3], in particolare per α = π/4, π/8 e π/12 e incrementando il valore di v0 di ∆v0 = 0.5.
Figure 8: Traiettoria del moto (x(t), y(t)) ottenuta con l’algoritmo di Runge-Kutta Ord. 2 per α = π/4 e v0 ∈ [0, 3].
Figure 9: Traiettoria del moto (x(t), y(t)) ottenuta con l’algoritmo di Runge-Kutta Ord. 2 per α = π/8 e v0 ∈ [0, 3].
1 l’insieme limite è l’insieme degli stati in cui entra un sistema dopo un periodo di tempo infinito.
6
Figure 10: Traiettoria del moto (x(t), y(t)) ottenuta con l’algoritmo di Runge-Kutta Ord. 2 per α = π/12 e v0 ∈ [0, 3].
Da una prima analisi notiamo che, facendo variare la velocità iniziale v0 nell’intervallo chiuso [0, 3], il sistema tende a 2
(1) (2)
stati asintotici x∞ ≃ 1.11 ovvero quello del punto precedente e x∞ ≃ −1.11, simmetrico rispetto al primo. Dai grafici
(1) (2)
risulta evidente che, come prima, il sistema considerato si comporta come un attrattore con 2 punti invarianti x∞ e x∞ , che
corrispondono anche ai due minimi dell’energia potenziale. Notiamo quindi che il comportamento del sistema è strettamente
connesso alla scelta delle condizioni iniziali α e v0 .
A questo punto possiamo studiare meglio la dipendenza dalle condizioni iniziali di tali stati asintotici mediante il cosiddetto
bacino di attrazione. Per poterne fare un grafico è necessario salvare i punti (x(tmax ), y(tmax )) di ogni traiettoria per ogni
condizione iniziale α ∈ [0, π/4] e v0 ∈ [1, 3]. Facciamo quanto detto generando m traiettorie in uno spazio bidimensionale
(α, v0 ) ∈ [0, π/4] × [1, 3]. Ogni m−esima traiettoria è generata incrementando α e v0 di una quantità δ = π/500. Il seguente
(1,2)
grafico che mostra la dipendenza degli stati x∞ da α e v0
Figure 11: Dipendenza degli stati asintotici dalle condizioni iniziali α ∈ [0, π/4] e v0 ∈ [1, 3].
Dal grafico possiamo notare come determinati valori di v0 e α conducano ad un determinato stato asintotico. A causa della
7
penuria di punti il bacino di attrazione mostrato non evidenzia una struttura di tipo frattale, la quale solitamente diventa
tanto più complicata quanto è più piccolo il coefficiente di attrito γ. Inoltre, quando l’attrito γ diminuisce, la larghezza dei
bacini si restringe anche più della larghezza della cella, rendendo poco prevedibile il moto. La natura non frattale del bacino
che abbiamo ottenuto potrebbe essere giustificata dal fatto che rimuovendo l’attrito le traiettorie che il sistema descrive
tornano ad avere un carattere simplettico, di seguito mostriamo 2 traiettorie sovrapposte per le condizioni iniziali α = π/4
e v0 = (2.5, 3.0)
Figure 12: Traiettoria (x(t), y(t)) in assenza di attrito γ = 0 con l’algoritmo di Runge-Kutta Ord. 2.
In cui notiamo infine che all’avvicinarsi del valore della velocità iniziale v0 → 2.5 le oscillazioni del sistema risultano avere
minore ampiezza tra loro rispetto alla condizione v0 → 3.0 in cui le oscillazioni durante il moto hanno ampiezza maggiore.ù
Conclusioni
In questo studio abbiamo mostrato i risultati ottenuti mediante l’integrazione numerica delle equazioni differenziali con
l’algoritmo di Verlet autopartente, analizzandone la traiettoria (x(t), y(t)), effettuando uno studio sull’errore di approssi-
mazione di tale algoritmo e abbiamo verificato essere di ordine O(∆t2 ). Inoltre siccome la traiettoria x(t) passa più volte
per la condizione x = 0, abbiamo calcolato il tempo che intercorre tra due attraversamenti successivi per tale asse che
abbiamo trovato essere < Trit >= 3.1265 s. Abbiamo integrato successivamente le equazioni differenziali aggiungendo un
termine dissipativo γ e abbiamo analizzato le traiettorie ottenute, trovando il punto al quale il sistema tende asintoticamente
(1)
x∞ ≃ 1.11 e abbiamo verificato che si tratta di un attrattore. Abbiamo analizzato la dipendenza degli stati asintotici
(1) (2)
(x∞ ≃ 1.11, x∞ ≃ −1.11) del sistema dalle condizioni iniziali α e v0 , facendo un grafico del bacino di attrazione. Infine
abbiamo discusso la natura caotica del sistema, il quale probabilmente non è tale.
Appendice
In termini più rigorosi possiamo riprendere quanto detto nella parte 3 e definiamo un generico attrattore Λ come un sottoin-
sieme dello spazio Rn per cui vale
tutte le traiettorie che partono da punti sufficientemente vicini a Λ convergono a Λ per T → +∞.