Re: simulazione del sistema solare
"(�`�.� D� �.���)" ha scritto:
> Spiego meglio il funzionamento del programma, cos� chiarisco molte
> idee.
> Ho fatto in C un risolutore di equazioni differenziali col metodo
> iterativo di Runge-Kutta del secondo ordine, potendo scegliere un
> intervallo di integrazione a mio piacimento, che per quanto riguarda
> la precisione sembra soddisfacente, ma forse dovrei ragionarci meglio,
> per calcolare effettivamente quanto errore mi da.
Si', ora e' un po' piu' chiaro...
Anche se io forse non mi sarei fermato alsecondo ordine: ho sempre
usato il quarto.
Per vedere che errore ti da', c'e' un modo molto semplice: prova per
es. a dimezzare il passo, e confronta i risultati.
Se sono suff. vicini, sei a posto.
BTW: Dunque il problema delle unita' e delle cifre l'hai risolto? Se
programmi in C, non vedoproprio che difficolta' ci fosse a usare
numeri floating, meglio in doppia precisione.
> Immetto come input le posizioni x,y e le velocit� x,y di ogni pianeta,
> e la sua massa.
Beh, solo x,y? Le orbite non sono mica complanari...
> La forza gravitazionale agisce su ogni pianeta come nella realt�,
> tutto � ben simulato, il sole � come un pianeta. Sostanzialmente � il
> problema degli n corpi con un potenziale gravitazionale, dal quale
> ottengo come risultato un file contenente le posizioni di ogni
> pianeta, da plottare.
OK, con una riserva che dico fra poco.
> Volendo simulare le condizioni reali del nostro sistema, dovrei
> immettere i giusti rapporti delle masse e le giuste distanze, ma dopo
> vari tentativi scopro che non si instaura un orbita chiusa. Questo
> solo inserendo un pianeta come giove e il sole. Trovo strano che il
> giove si porti appresso il sole nel suo viaggio :-)
> In altre simulazioni che vedo infatti il sole si muove di molto poco,
> verosimilmente.
Di solito quando si trovano orbite nn chiusa, la colpa sta
nell'insuff. approssimazione dell'integrazione, ma nel tuo caso ho un
altro sospetto...
Se nel problema di due corpi parti col Sole fermo e dai una velocita'
al pianeta, di sicuro non troverai orbite chiuse, perche' il centro di
massa non sta fermo.
Non mi meraviglia che l'effetto si noti di piu' con Giove, visto che ha
massa piu' grande.
Infatti questi conti si fanno sempre in _coordinate relative_: si
assume fermo il centro di massa, e studia il moto del pianeta rispetto
al Sole.
> Il problema per� si evolve: anche se potessi inserire i valori veri
> (penso che sia un inutile appesantimento del carico di lavoro del pc)
> io devo inserire la velocit� iniziale del pianeta (per comodit� posto
> al perielio e con componente della velocit� solo lungo le y) che si
> esprime facendo uso del tempo. Ora, visto che non ho un modo di
> controllare il tempo nel mio programma, cio� non so come simulare il
> tempo che passa; penso quindi che la velocit� non abbia un significato
> reale, allora non potrei usare quella reale per ottenere una
> simulazione veritiera: infatti non la ottengo.
Sinceramente qua non ti capisco prorio: come sarebbe che nn sai come
simulare il tempo?
Hai scritto delle eq. diff. dove la var. indip. e' appunto il tempo;
ha fatto un'intgrazione discreta, in cui avrai per forza dovuto
scegliere un passo temporale.
Non so come ti sei comportato per le unita', ma come ho gia' detto
potevi liberamente usare unita' del SI oppure unita' astronomiche; non
fa nessuna differenza, purche' usi un sistema coerente.
Comunque sia, il tuo passo temporale avra' un certo valore, poniamo 10
giorni; basta che conti il numero dei passi, e vedi come "passa" il
tempo...
------------------------------
Elio Fabri
Dip. di Fisica - Univ. di Pisa
------------------------------
Received on Wed Jan 07 2004 - 20:55:23 CET
This archive was generated by hypermail 2.3.0
: Fri Nov 08 2024 - 05:10:27 CET