In un articolo precedente è stata illustrata la costruzione del progetto di Scratch "gravitazione di tre corpi: base" per simulare il moto di tre corpi legati gravitazionalmente.
Non è una animazione ma una simulazione che calcola le posizioni usando esclusivamente l'espressione della legge della gravità di Newton.
Per esaminare la bontà del progetto si dovrebbero confrontare i risultati con quelli ricavati da programmi più evoluti e professionali ma non mi è possibile farlo.
È possibile però ricostruire traiettorie già studiate in altre occasioni per vedere se perlomeno vengono ripetuti i risultati.
Nel fare questo ci si trova ad affrontare alcuni problemi prima non considerati che in questo articolo vado ad illustrare.
Il progetto "gravitazione di tre corpi, esperimenti 1" è uno sviluppo del progetto base fatto per mettere a disposizione da tastiera alcuni comandi adatti a rendere meglio fruibile la simulazione.
Tre corpi: A (arancione), B (verde), C (blu) hanno masse diverse, posizioni iniziali diverse e velocità iniziali diverse e sono tutti valori modificabili a piacere.
Lo sprite "Y" contiene tutti i parametri modificabili dall'utente per provare a vedere "cosa succede se"; dopo aver unsrito i parametri in modalità editor, si preme tasto [Y] per attivare la situazione iniziale e poi si preme tasto [Q] per avviare la simulazione [usare turbo mode].
In generale l'evoluzione delle traiettorie non è prevedibile salvo casi semplificati che si possono riassumere così:
- se si annulla una delle tre masse ed una delle restanti ha massa trascurabile il problema si dovrebbe ricondurre a quello dei due corpi che ha soluzioni analitiche come sviluppato nel libro "satelliti e orbite";
- se uno degli oggetti ha una massa trascurabile facilmente ci si avvicina alla situazione dei due corpi ma solo per un tempo limitato, a lungo andare se ne vedono gli effetti;
- due corpi di massa paragonabile orbitano intorno al baricentro del sistema in una configurazione detta di "sistema binario", se ne parla in un altro articolo;
- se uno degli oggetti si muove molto lontano, i suoi effetti potrebbero essere trascurabili riconducendo il moto degli altri due a situazioni note.
Per sapere cosa accade con un dato insieme di parametri, si può solo provare, non si posso o prevedere gli esiti per l'impossibilità di trovare soluzioni analitiche esplicite mentre si può dire che l'instabilità delle traiettorie è la norma.
Controlli
Con la tastiera si possono controllare alcuni parametri:
[Q]: avvio del moto;
[spazio]: pausa;
[S]: esegue un passo singolo; [Z]: effettua un avanzamento di un tic (nota 1);
[I]: consente o no l'impatto;
[A], [B], [C]: mostra nasconde alcune variabili dei tre corpi;
i tasti freccia spostano di 20 passi il centro di massa;
i tasti [H], [J] e [K] cambiano la scala;
i tasti [V] e [L] accelerano o rallentano il moto;
[E]: cancella la grafica
[N]: nasconde le variabili
Esperimenti predisposti
In questo progetto sono stati predisposti alcuni esperimenti attivabili con i tasti numerici per esaminare alcuni aspetti dell'interazione gravitazionale fra tre corpi.
tasto [0]
Le tre masse sono paragonabili, le posizioni e le velocità iniziali sono messe un po' a caso salvo la correzione automaticamente attivata per porre il baricentro del sistema nell'origine dello stage e per mantenerlo lì, le velocità iniziali sono calcolate in modo che la quantita di moto complessiva del sistema sia nulla per tenere fermo il baricentro del sistema.
Ci può essere moto caotico che può sfociare in configurazioni più "ordinate" con due dei corpi orbitanti ed anche allontanamento in direzioni opposte (situazione inevitabile perchè il baricentro non può spostarsi non intervenedo forze esterne al sistema).
tasto [1]
Si riproduce l'orbita di default del progetto "satelliti e orbite" annullando la massa di B e con C di massa piccola ma non trascurabile e posizionato a 50 passi di distanza da A con V tangenziale di 18 passi/tic.
B di massa nulla non viene influenzato dall'attrazione degli altri due corpi (nota 2) per cui si muove di moto rettilineo uniforme.
Questa prova serve per vedere se si riproduce la stessa orbita di default del progetto "satelliti e orbite"; si osserva che così è, solo che la posizione iniziale di A al centro con velocità iniziale nulla conferisce al sistema una quantità di moto iniziale rispetto al centro dello stage, assunto come sistema di riferimento, pari a 18*massaC con inevitabile trascinamento verso l'alto delle orbite che così non si sovrappongono una sull'altra.
Si vede anche che l'oggetto A oscilla lungo l'asse X e questo accade perché il baricentro del sistema deve muoversi lungo l'asse y.
tasto [2]
Con C di massa ancora più piccola non si vede l'effetto di trascinamento perché trascurabile.
tasto 3
Con massa di C di valore confrontabile con la massa di A si vede nettamente il trascinamento del sitema verso l'alto.
tasto [4]
Per fissare il baricentro del sistema dei tre corpi al centro dello stage si posiziona appositamente il baricentro del sistema e si compensano le quantità di moto iniziali.
Così facendo le orbite si sovrappongono e si vede che anche A orbita intorno al baricentro occupando la posizione opposta a quella di C.
La situazione è stabile ma se con tasto [W] si posiziona B molto lontano, con massa pari a 1; con traiettoria che intersecherà il sistema binario si vedrà che il suo passaggio produce un effetto sulla configurazione orbitale precedente.
tasto [5]
Vengonoo impostate due orbite complanari di cui una circolare.
Le masse di B e C sono minuscole per cui non si osserva per molto tempo lo spostamento del baricentro del sistema e comunque B e C impattano al tempo 1715 tic circa arrestando la simulazione.
tasto [6]
Con massa di C non trascurabile e baricentro del sistema posizionato al centro si vede che B, di massa ancora trascurabile, risente delle perturbazioni date da C con orbita non stabile ed impatto al tempo 271 tic.
tasto [7]
Si posiziona C in una orbita poco eccentrica e B in modo che possa orbitare intorno a C.
Dato che il tutto funziona come previsto sembra che il progetto sia accettabile almento per fini didattici.
note
nota 1: il tic è una unità di tempo fittizia basata sul numero di iterazioni di calcolo; i calcoli vengono ripetuti con un valore del tempo pari a ∆t (tipicamante 0,001) che è una frazione del tempo base, chiamato arbitrariamente "tic"; valori bassi di ∆t rallentano il moto ma assicuramo maggior precisione nel calcolo delle variabili;
nota 2: la trattazione è classica, si usano le equazioni di Newton.