Simulare piccoli sistemi stellari con StarDance

StarDance (o “danza delle stelle”) è un semplice programma di dinamica stellare che permette di simulare quasi tutta la gamma di comportamenti di un piccolo sistema isolato di stelle. In pratica, poste nello spazio un certo numero di stelle e fissate le loro posizioni e velocità iniziali, il programma impone che ciascuna obbedisca alla sola legge gravitazionale di Newton: è allora interessante – e soprattutto divertente – stare a guardare quello che succede. Alcuni esempi preimpostati e un generatore casuale di condizioni iniziali permettono di visualizzare, volendo, subito i casi più significativi con poca fatica.

StarDance è un programma di simulazione non professionale che sviluppai, poco dopo laureato, affascinato dal problema degli N-corpi, che ha un importanza enorme non solo in astrofisica ma in numerosi altri campi della fisica. Le sue implicazioni matematiche (i vari possibili metodi di integrazione del sistema di equazioni differenziali risultante ed il trattamento degli incontri ravvicinati) e algoritmiche (sviluppo di un codice di istruzioni per fare i calcoli e mostrarli sullo schermo) erano coinvolgenti.

La figura qui in alto mostra la formazione di un sistema stellare gerarchico ottenuta con il programma StarDance e dà già una prima idea degli “esperimenti” interessanti che si possono condurre con un software di questo tipo, di cui potete trovare il file – insieme alle istruzioni per farlo funzionare su un computer moderno – in fondo a questa pagina.

Caratteristiche principali del programma

  • Condizioni iniziali. Numero totale di stelle, posizione e velocità iniziale di ciascuna stella.
  • Parametri della simulazione. Passo temporale iniziale e lunghezza di smorzamento della forza.
  • Zoom. Possibilità di zoom “in” e zoom “out” agendo sui tasti “+” e “-“.
  • Posizione della figura. Possibilità di spostare la figura a destra, a sinistra, in alto, o in basso sullo schermo agendo, rispettivamente, sui tasti “d”, “s”, “a”, e “b”.
  • Salvataggio dei dati. Possibilità di salvare le condizioni iniziali della simulazione.
  • Caricamento dei dati. Possibilità di caricare dati da file “demo” o da file creati in precedenza con il programma stesso.
  • Salvataggio delle figure. Le figure possono essere salvate con un programma di “cattura schermo” dopo aver premuto il tasto “Pausa”.

La schermata iniziale del programma StarDance visualizzata sul proprio computer.

Come usare subito StarDance

StarDance risolve il problema degli N-corpi gravitazionale nel caso “a pochi corpi”, cioè in cui il numero di stelle è sufficientemente piccolo perchè l’evoluzione del sistema possa essere calcolata in un tempo ragionevole. La caratteristica peculiare del programma è l’estrema facilità di utilizzo. Basta mandare il relativo file in esecuzione e si è guidati dal programma stesso ad attivare le diverse opzioni del menù. Nella schermata iniziale viene richiesto di scegliere fra tre diverse continuazioni:

Piccolo ammasso stellare. Il programma simula un piccolo ammasso (cioè un insieme di stelle gravitazionalmente legate) composto da cinque corpi di uguale massa. Le condizioni iniziali del sistema sono scelte dal computer: le posizioni iniziali delle stelle sono fissate in modo del tutto casuale all’interno di una sfera, e le velocità iniziali sono scelte a caso in maniera isotropa.

Simulazione di un piccolo ammasso aperto composto da 5 stelle.

Collisione binaria-singola. Permette di fare esperimenti di “scattering a tre corpi”, cioè di simulare i vari possibili esiti di un incontro ravvicinato tra una stella binaria ed una stella singola di passaggio, un problema che gli scienziati considerano fondamentale per lo studio dell’evoluzione dinamica degli ammassi stellari, per cui lo hanno studiato in grande dettaglio. Qui la maggior parte dei parametri che descrivono le condizioni iniziali sono fissi, mentre altri sono variati a caso dal computer.

“Ionizzazione” ottenuta sparando una stella singola non troppo vicino alla binaria.

“Scambio” ottenuto in un’altra simulazione casuale, con zoom sul sistema binario.

Libera scelta del sistema. Consente di costruirsi da soli il proprio sistema stellare introducendo manualmente le varie condizioni iniziali, e cioè: numero di corpi, e poi massa (in unità solari), coordinate (in parsec) e velocità iniziale (in km/s) di ciascuna stella. Si può così tentare di studiare alcuni aspetti interessanti del problema N-corpi: dai semplici incontri ravvicinati in un sistema a 2-corpi (cioè stelle), ai fenomeni di cattura, caos e fuga nel problema dei 3-corpi, dai molteplici esiti di una collisione binaria-binaria (cioè fra due stelle binarie), alla stabilità di un sistema stellare gerarchico.

Simulazione con libera scelta dei parametri di un sistema, ad esempio, di tre stelle.

Una volta fissate le varie condizioni iniziali, il programma determina automaticamente il fattore di scala da utilizzare per la visualizzazione delle immagini e, soprattutto, il passo temporale iniziale e la lunghezza di smorzamento della forza che ottimizzano la precisione e la velocità della simulazione tenendo conto della velocità del proprio computer. A questo punto il programma calcola l’evoluzione temporale del sistema integrando le equazioni attraverso il semplice metodo di Eulero (integrazione per tangenti), utilizzando un passo temporale variabile (più piccolo via via che i corpi si avvicinano).

Man mano che la simulazione procede, vengono visualizzati sullo schermo sia le traiettorie delle varie stelle proiettate sul piano x-y, sia il tempo “fittizio” fino a quel momento trascorso. A meno che non si verifichi una collisione tra due stelle – nel qual caso il programma avverte “Collisione!” e si arresta – la simulazione continua indisturbata. Essa può comunque venire interrotta dall’utente premendo un tasto qualsiasi. Apparirà allora un nuovo menù che permetterà di scegliere fra varie alternative: 1-Continua calcolo, 2-Nuova simulazione, 3-Menù principale, 4-Salva dati, 5-Carica dati iniziali, 6-Fine.

Esempio: le collisioni stella binaria-stella singola

Vi siete mai chiesti che cosa può succedere quando una stella vagante nello spazio sperimenta un incontro ravvicinato con una stella “doppia” fisica, ovvero con una stella binaria, cioè con una coppia di stelle legate fra loro gravitazionalmente? La domanda non è peregrina. In un ammasso globulare, gli incontri ravvicinati tra stelle doppie e stelle singole di passaggio sono relativamente frequenti, ed influenzano in modo sostanziale l’evoluzione complessiva dell’ammasso.

Cattura in una collisione binaria-singola con un SW professionale (fonte: S. Sigurdsson)

È possibile sorvolare sui dettagli del processo collisionale e classificare l’incontro soltanto in base al suo risultato finale. Sono infatti possibili tre tipi di eventi ben distinti: il “flyby“, lo “scambio” e la “ionizzazione“. In un flyby, la stella doppia rimane intatta, sebbene i suoi parametri orbitali possano risultare alterati. In uno scambio la stella intrusa espelle uno dei membri della binaria, prendendone il posto. In una ionizzazione, infine, tutte e tre le stelle diventano slegate.

Se la velocità relativa tra la stella singola e il centro di massa della binaria è inferiore ad un certo valore critico, la stella singola può subire una “cattura” da parte della stella doppia (ovvero la somma delle distanze fra le tre stelle presenta più di un minimo). Il sistema che ne risulta è però instabile: può rimanere legato per centinaia o anche migliaia di periodi orbitali, ma alla fine è destinato a decadere di nuovo in una stella singola e in una stella doppia (cioè il risultato finale è sempre uno scambio o un flyby).

Le collisioni binaria-singola sono molto importanti negli ammassi globulari.

Introduzione alla simulazione N-corpi

I sistemi stellari sono delle strutture astrofisiche estremamente comuni nel nostro Universo, ed abbracciano qualcosa come quattordici ordini di grandezza nelle dimensioni (e nella massa): si va dalle stelle binarie, sistemi composti da appena due corpi, agli ammassi stellari, contenenti dalle dieci al milione di stelle; dalle galassie, che ospitano tipicamente dai dieci ai mille miliardi di stelle, agli ammassi di galassie, contenenti centinaia o anche migliaia di membri.

Al fine di determinare il comportamento dinamico di un sistema stellare, nella maggior parte dei casi le stelle – o le galassie – possono essere considerate, almeno in prima approssimazione, come delle masse puntiformi con nessun altra proprietà al di fuori del proprio campo gravitazionale, e gli effetti fisici importanti nello studio dell’evoluzione stellare (come la combustione nucleare, il trasporto del calore, la perdita di massa, ecc.) possono essere tranquillamente trascurati.

Il problema di come il sistema evolverà si riduce, quindi, allo studio del moto di N masse puntiformi che si muovono sotto l’influenza delle mutue forze di attrazione gravitazionale, in accordo con le leggi classiche del moto descritte da Newton: è il cosiddetto problema degli N-corpi gravitazionale. Come il matematico francese Henri Poincarè dimostrò alla fine del secolo scorso, per N maggiore o uguale a 3 il problema degli N-corpi non può essere risolto per via puramente analitica, ma soltanto in maniera approssimata per via numerica: in pratica con il computer, dato che occorre fare tanti calcoli.

I “punti lagrangiani” (L1, L2, L3, L4, L5), soluzioni del problema dei 3-corpi ristretto, sono i punti in cui un corpo nella sfera di influenza gravitazionale di 2 grandi corpi può mantenere la sua posizione relativa. Molti pianeti hanno perciò satelliti nei punti L4 e L5.

Gli approcci numerici utilizzati per la risoluzione del problema N-corpi nel caso in cui i corpi in questione siano stelle o galassie variano considerevolmente a seconda dell’importanza che le interazioni ravvicinate a due corpi assumono nel determinare l’evoluzione complessiva del sistema: infatti, se questa importanza è grande, il sistema è detto collisionale, se invece essa è piccola il sistema è non collisionale, e va trattato in maniera diversa (dal punto di vista sia fisico sia matematico).

Ad esempio, la nostra Via Lattea – una galassia formata da oltre cento miliardi di stelle – è un sistema “non collisionale”. In altre parole, l’orbita di ciascuna stella non è particolarmente perturbata dalla presenza di singole compagne vicine, ma è governata dal campo gravitazionale medio creato dalle centinaia o migliaia di stelle circostanti. L’equazione fondamentale che descrive il moto delle stelle nei sistemi non collisionali (di cui StarDance non si occupa) è la cosiddetta equazione di Boltzmann-Liouville.

Gli ammassi aperti o galattici, cioè quei gruppi di stelle contenenti fino a qualche centinaio di membri e giacenti in vicinanza del disco galattico (come le Pleiadi e le Iadi, due sistemi formati da circa cento stelle) sono invece dei sistemi “collisionali”: poichè sono composti da un numero di membri relativamente piccolo, l’orbita di ciascuna stella è fortemente influenzata dal campo gravitazionale delle compagne più vicine.

L’ammasso delle Pleiadi è un tipico esempio di ammasso aperto.

Fra questi due casi estremi – gli ammassi aperti e le galassie – si collocano i cosiddetti ammassi globulari: giganteschi gruppi di stelle di forma tondeggiante, quasi perfettamente sferica, che contengono da diecimila fino ad un milione di membri e formano una sorta di “alone” intorno alla nostra galassia. Le nostre conoscenze sulla dinamica degli ammassi globulari riposano sull’utilizzo, per la soluzione del problema degli N-corpi, di numerosi metodi indiretti e approssimati.

L’evoluzione di un sistema collisionale può essere calcolata integrando in maniera diretta ed esatta le equazioni del moto del problema degli N-corpi. Infatti, entrambi i membri di una coppia di stelle sono sottoposti a una forza gravitazionale proporzionale all’inverso del quadrato della distanza che le separa; e questa forza, a sua volta, è proporzionale al prodotto delle due masse stellari. Quindi la somma (in senso vettoriale) di tutte le possibili coppie di forze che agiscono nel sistema permette di determinare i successivi movimenti all’interno del sistema stesso.

La simulazione di piccoli sistemi stellari (come ammassi aperti, associazioni, sistemi multipli, trapezi, sistemi gerarchici, ecc.) è oggi un’attività alla portata di qualunque astrofilo dotato di un PC. Già vent’anni fa (nel 1998), i PC in commercio erano sufficientemente potenti da calcolare l’intera evoluzione dinamica di un ammasso composto da una decina di stelle in un tempo che varia da pochi secondi a qualche minuto, a seconda del processore usato e, soprattutto, dell’efficienza dell’algoritmo utilizzato.

Il vecchio software OrbitMaker della Zephir per la simulazione di sistemi stellari e planetari.

 

APPENDICE: Come è stato realizzato StarDance

Il programma StarDance è stato realizzato utilizzando come struttura base un semplice programma N-corpi – il cui listato in QuickBasic è mostrato di seguito ed è scaricabile cliccando qui come semplice file di testo – che simula le interazioni gravitazionali esistenti in un gruppo di stelle. In più, StarDance utilizza un passo temporale “variabile”, proporzionale alla minima distanza che intercorre fra due stelle qualsiasi del sistema, per affrontare il cosiddetto “problema degli incontri ravvicinati”.

Il programma utilizza come unità di misura della distanza il parsec (1 pc = 3,09 * 10^18 cm), che corrisponde a 3,26 anni luce. La massa è invece misurata in masse solari (1 Ms = 1,99 * 10^33 g), mentre la misurazione del tempo è in milioni di anni (1 Ma = 3,16 * 10^13 s). Con questa scelta delle unità di misura la costante di gravitazione universale G assume il valore di 4,5 * 10^-3. È comodo, inoltre, esprimere le velocità iniziali delle varie stelle in km/s; in tal caso, occorre moltiplicare i valori di queste velocità iniziali, espressi in km/s, per il fattore 1,02, che opera la conversione in unità pc/Ma.

La “versione minima” del mio programma N-corpi (in questo caso per QuickBasic4.5).

 

Scarico e uso del programma StarDance

Innanzitutto, scarica il file sdance.exe cliccando qui. A questo punto dovete installare un emulatore DOS. Infatti, il programma StarDance non può girare sugli attuali sistemi operativi senza farlo partire da questo emulatore.

In pratica, puoi scaricare la Basic 2 DOSBox da qui: https://sourceforge.net/projects/dosbox/. Installala seguendo le istruzioni con essa fornite (in particolare, seleziona “QuickBasic 4.5”, “Fullscreen mode” e “Copy Examples Files”). Troverai i file di questo emulatore installati nella directory C:/Programmi/DOSBox-0.74, o qualcosa del genere.

Apri questa cartella. A questo punto aggiungi a questa cartella il file sdance.exe, come mostrato nella figura qui sopra. Infine, con il mouse trascina il file sdance.exe sopra il file DOSBox.exe e vedrai il programma StarDance partire dal tuo computer (operante con un qualsiasi sistema operativo Windows).

Leave a Reply