Oppsummering part2
P? NASA-m?tet snakket vi mest om hvordan man numerisk kan l?se Newtons gravitasjonsligning for ? f? fine ellipsebaner n?r man simulerer et solsystem. Et problem med b?de Euler, Euler-Cromer og vanlig Runge-Kutta er at mekanisk energi ikke er bevart, noe som f?rer til spiralbaner i stedet for ellipsebaner. Det fins et sett numeriske integrasjonsmetoder som er designet for ? bevare mekanisk energi (over tid, ikke n?dvendigvis i l?pet av ett oml?p), og den enkleste av disse er Leapfrog / Velocity Verlet, som er nesten like enkel ? kode som Euler. En beskrivelse st?r i part2-pdfen og du kan finne mer informasjon p? nettet.
Man kan ignorere kreftene mellom planetene og fra planetene p? solen hvis solen er betydelig mer massiv enn planetene. Det er dette dere skal gj?re. Vi l?ser alts? IKKE et N-legemeproblem (unntatt i en optional exercise p? slutten av part 2)
N?r du er forn?yd med dine simulerte planetbaner, kan du sjekke dem ut i et awesome 3D-visualiseringsprogram!
3D-softwaren det er snakk om heter AST2000 Mission Control (MCAst) og er utviklet av Nicolaas Groeneboom. Akkurat som med .pyc-filene vil denne kanskje oppdateres et par ganger i l?pet av kurset. Den nyeste versjonen kan lastes ned her: http://www.irio.co.uk/MCAst/
Husk ? bruke nyeste versjon av AST2000SolarSystem-pyc, vi er n? p? V3, denne skal fungere ganske bra med den versjonen av MCAst som ligger ute.
N?r du lager en xml med orbit_xml for ? sjekke om planetbanene ser fine ut, kan du ?pne xml-en i MCAst sin SolarSystemViewer ved ? legge den i mappen "data" under mcast, og deretter starte ssview (ikke mcast). Disse xml-ene kan v?re ganske store, flere hundre MB hvis du har mange tidssteg! Send meg gjerne en mail hvis du har en treg maskin og stor xml-fil, s? kan jeg hjelpe deg med ? fjerne m?ner fra xml-en (m?nene er bare til pynt, kan ikke kollideres med eller landes p?, men tar stor plass).
Et litet triks for ? slippe ? flytte xml-filene dine hver gang du lager nye er ? opprette filen "path.txt" i mappen hvor du har AST2000SS.pyc og scriptene dine. path.txt skal inneholde den relative stien til data-mappen din. Hvis du for eksempel har to mapper: mcast og python. Under mcast ligger programmet MCAst og bl.a. mappen data, hvor xmler skal lagres. i mappen python har du AST2000SolarSystem.pyc og alle dine part1a.py part1b.py part2.py etc. I python-mappen kan du opprette path.txt som skal inneholde den f?lgende linjen for ? lagre alle .xml-filer i mcast/data:
../mcast/data