Newsgroup: it.scienza.fisica
Titolo: Orbite dei pianeti con le equazioni differenziali

Anch'io ai vecchi tempi avevo scritto un programma che 
calcolava le orbite, a piccoli passi (soltanto che gli errori per
arrotondamento si sommavano a quelli della discretizzazione), 
e quindi non mi riusciva di chiudere le orbite. Tutte aperte!
Come si fa a risolvere il problema con le equazioni differenziali?
Mi piacerebbe mettere un sole al centro, un pianeta che gira intorno al
sole
e un satellite che gira attorno al pianeta!
Grazie in anticipo per le risposte!
Ciao
Dangermouse 
-- 
tizi...@student.ethz.ch

E' molto semplice se usi Mathematica ti crei il sistema di equazioni
differenziali con le accelerazioni che certo conosci e gli fai disegnare le
traiettorie...e ne puoi mettere anche di +- usando NDsolve che in via
numerica non ci mette molto tempo.
Il punto +- difficile sono le condizioni di contorno che e' molto difficile
impostare in modo corretto e devi per forza provare per tentativi comunque
anche i tentativi sono divertenti e vengono fuori delle orbite curiose epoi
neanche la terra segue un orbita chiusa...

traiettorie...
Ho appena acquistato una TI-89 che risolve le equazioni differenziali...
Però ehm ehm, qual'e' il sistema di equazioni differenziali che devo usare?
Pensavo a un
F = a * m1 = G * m1 * m2 / r^2
radice(x''^2+y''^2)= G * m2 / (x^2+y^2), se m2 si trova al centro ed è
ferma...
Pero' non tengo ancora conto della velocità di m1..
è giusto od ho cannato tutto? E come si fa a trasformare sta roba in
qualcosa di un po' piu' lineare?
O forse più probabilmente devo usare le coordinate polari?
ciao e grazie per l'aiuto
un Dangermouse molto meno pericoloso del previsto!

 Perň ehm ehm, qual'e' il sistema di equazioni differenziali che devo usare?
Non  so cosa sia un Ti-89 e che eq diff risolva comunque l'eq e'
ovviamente:
Ai=Somm j (i<>j)[Mj*|rj-ri|^-2 *eij]
Meglio non usare le coord polari, in 2 dim:
x''i=Somm j (i<>j)[Mj*(xj-xi)*((xj-xi)^2+(yi-yj)^2)^-1.5]
y''i=Somm j (i<>j)[Mj*(yj-yi)*((xj-xi)^2+(yi-yj)^2)^-1.5]
Devi impostare anche le n condizioni iniziali x'(0)= y'(0)= x(0)= y(0)=
Ovviamente a meno di una costante che comunque non interessa + di tanto

 ferma...
 No, e' sbagliato. Tu stai eguagliando il modulo della forza al modulo
della velocita', ma F=ma e' una relazione vettoriale. Il modo piu'
elementare per risolvere il problema e' il seguente:
a) Riduci il problema dei due corpi a quello di un solo corpo orbitante
attorno ad un punto fisso - implicitamente lo hai gia' fatto sopra.
Basta sostituire la massa inerziale (non quella gravitazionale!) in F=ma
con la massa ridotta, definita come il reciproco della somma dei
reciproci delle masse. Nel caso del sistema terra-sole la m.r. e'
pressoche' identica alla massa terrestre, nel caso terra-luna e' circa
quella della luna, ma con una apprezzabile differenza.
b) Osservi che la forza gravitazionale e' centrale, dunque si conserva
il momento angolare L (= prodotto vettore di r e p): percio' il moto si
svolge sempre nel piano perpendicolare al vettore L.
c) Adesso il problema e' ridotto al moto in un piano, percio' dobbiamo
cercare due equazioni. Conviene passare in coord. polari, r e phi.
d) Per la ragione detta sopra, anche il modulo di L si conserva. Percio'
(1) r^2 * d phi/ dt = A = costante (e' la seconda legge di Kepler).
Questa e' la prima equazione, e A e' la prima cost. d'integrazione.
e) La seconda eq. la trovi, per esempio, scrivendo l'energia totale E =
T + V in coord. polari. Nota che T contiene un termine che dipende da d
phi/dt: e' questo che rende scorretta la tua equazione piu' sopra (il
termine addizionale e' chiamato "potenziale centrifugo"). Eliminalo in
favore di A/r^2 usando la (1). L'energia E e' la seconda cost. di
integrazione.
f) Trovi un' eq. che ti da' (2) dr/dt = una funzione di r. Nel caso
gravitazionale (e coulombiano) l'integrale e' fattibile e da' le solite
funzioni trigonometriche.
 In realta' fai ancora prima a cercare la soluzione in un qualunque
testo di meccanica analitica, p. es. Goldstein, Meccanica Classica,
cap.3 discute in dettaglio il problema. Se vuoi invece sfruttare il
problema per fare un po' d'esercizio di programmazione sulle eq.diff.,
allora ti conviene scrivere direttamente F=ma in coordinate polari
(sfruttando le osservazioni a-c) e non passare per l'energia. Ottenere
le equazioni in questo modo, pero', e' un po' piu' complicato, visto che
devi scrivere le der. seconde risp . al tempo delle componenti del
vettore r e poi passarle in coordinate polari.
 Se poi conosci il formalismo lagrangiano il tutto e' ancora piu'
semplice...
-- 
To reply, replace "smartassi@triste" with "smargiassi@trieste"
in my e-mail address
Enrico Smargiassi
http://www-dft.ts.infn.it:6163/~esmargia

>Non  so cosa sia un Ti-89
E' una calcolatrice grafica ma non dico di piu' se no faccio pubblicita'!
(Pero' detto fra noi:
che bomba di una calcolatrice!)
Grazie per la risposta!
Dangermouse

semplice...
No. E' buono da mangiare? ;-)
ciao
Dangermouse

Si ma per 2 corpi, e se sono n ?

 credo che qui abbiano gia' fatto la sostituzione di sopra.
 Si', e' cosi'.


Beh visto che studi informatica non potresti scriverti un prrogrammino su un
pc ?
In effetti per curiosita' ho provato ma ottengo risultati leggermente
diversi usando Mathematica e "manualmente" e in particolare c'e' un effetto
curioso dovuto alle approssimazioni che se metto un intervallino dt troppo
piccolo le orbite sballano completamente probabilmente a causa dei numeri
troppo piccoli in gioco che vengono tagliati "perdendo" parte
dell'informazione ma devo pensarci un po', quando ottieni qualcosa fammi
sapere.

 Si ma per 2 corpi, e se sono n ?
 Se sono n si fa come hai scritto tu :-)


perche  r^2?
c'e' qualcosa che non va :)
immagina di stare calcolando la velocita' areolare.
Allora..dovrai calcolare  l'area di un pezzettino di
spazio spazzata dal raggio vettore in un intervallo piccolo di tempo.
Praticamente devi calcolare l'area di un triangolino che ha
per altezza r e per base r*sen(deltaphi).
Quando deltaphi e' 'abbastanza piccolo', sen(deltaphi) e' circa
uguale a deltaphi, quindi  l'area del triangolo diventa pari
a r^2*deltaphi, e nell'unita' di tempo..sara' r^2/2*deltaphi/deltat.
Calcolando il limite per deltat che tende a zero ottieni
r^2/2*(dphi/dt).
Che e' costante perche' e' uguale al momento angolare a meno
di fatto moltiplicativi costanti.
Infatti il momento angolare e' m*r^2*(dphi/dt).
Mi pare che questa si possa considerare una conferma della
seconda legge di keplero :)
ciao,
Marco

Grazie a tutti e due per la risposta.
Mi dispiace di non esserci arrivato da solo...
un Dangermouse che aspetta la pensione

pc ?
Ciao!
Se vai all'indirizzo
http://a.trevano.ch/c3/C3_97/Crameri_Mengotti_Zanetti/indice.html
troverai il progetto di me e due altri amici, svolto tanto, tanto tempo fa.
Li' troverai il codice sorgente in Matlab per Unix. E alcune immagini
generate dal programma
sono qui:
http://a.trevano.ch/c3/C3_97/Crameri_Mengotti_Zanetti/page2.html
Pero' l'ultima immagine in fondo e' stata creata dal nostro tutore con le
equazioni differenziali, che per me hai tempi
erano una vera e propria stregoneria! Per questo vi ho rivolto la domanda!
saluti da...
un Dangermouse apprendista stregone
P.S.: sarei lieto anche di vedere il tuo programma! Lavora su due o piu'
corpi?

  Se sono n si fa come hai scritto tu :-)
Quindi non è stato ancora risolto il problema dei tre corpi?
Come fanno allora a prevedere impatti di asteroidi e percorsi di comete?
--
------------------------------------------------------
Giampaolo Tomassoni Information Systems Consultant
P.za 8 Aprile 1948, 4 Tel/Fax: +39 (578) 21100
I-53044 Chiusi (SI)  e-mail: 
toma...@geocities.com
ITALY
homepage: 
http://www.geocities.com/Eureka/Park/2209/

 Come fanno allora a prevedere impatti di asteroidi e percorsi di comete?
Si puo` usare l'equazione dei due corpi con la teoria della
sfera di influenza (in pratica si considera solo un corpo
grande per volta). Se la cometa e` lontana dagli altri
pianeti si considera sulo l'influsso del sole. Quando la
cometa si avvicina a un pianeta si considera solo l'effetto
del pianeta. Ovviamente questa e` una approssimazione. In
pratica si cerca sempre di usare una orbita di tipo 'conica'
eventualmente con i termini dell'orbita perturbati.
Ad esempio con due corpi un'orbita ellittica ha dei
parametri che sono fissi. Se c'e' un terzo corpo non troppo
vicino si puo` continuare ad usare i parametri di un'orbita
ellittica, ma con i parametri variabili nel tempo. 
Se serve una maggiore precisione, si integra per via
numerica. 
Ciao 
Franco

 Come fanno allora a prevedere impatti di asteroidi e percorsi di comete?
 Calcolo numerico, oppure con opportune approsimazioni (tecnicamente si
chiama 'teoria delle perturbazioni').


per quel poco che ne so risolvono numericamente il sistema di
eq.differenziali cosa che si fa in tutti gli ambiti della fisica vistoche
sono molte poche quelle risolvibili analiticamente