TAIVAANMEKANIIKAN KOTITEHTÄVÄT (syksy 214) 1. Marsin rata taivaalla vuosina 2-22 2. Numeerinen integrointi a) 2-kappaleen liike 1/r 2 voimakentässä (Kepler liike) b) 2-kappaleen liike 1/r 3 voimakentässä (harjoitusten esimerkki) Tee kummastakin tehtävästä lyhyt selostus = muutama kuva, joissa on selvästi kerrottu mitä ne esittävät + hyvin dokumentoitu ohjelmalistaus. Käytä hyväksi IDL-harjoitusmateriaalia, jolloin tehtävät ovat erittäin helpot ratkaista! Tee selostus käyttäen pdatex-ohjelmaa (=latex, kuvat pdf-muodossa) HUOM: tehtävien tarkoituksena ei ole viivästyttää kurssin suorittamista! Eli neuvoja saa tulla aina kysymään! 1
TEHTÄVÄ 1: Marsin rata taivaalla vuosina 2-22 Luennoilla (ja harjoituksissa) on ollut esimerkkinä Jupiterin paikan laskeminen 1.1.2 rataelementeistä lähtien (sama esimerkki Karttusen kirjassa). Tämän ohjeen liitteenä on esimerkki tm214_rata_jupiter.pro joka käyttää /wrk/hsalo/tm214_idl.dir/tm214_demo2.dir hakemistossa olevaa elem_to_rv.pro aliohjelmaa. Tämä aliohjelma laskee planeetan heliosentriset ekliptika-koordinaatit annetuista rataelementeistä. Pääohjelma tm214_rata_jupiter.pro laskee Jupiterin paikan.1 vuoden valein vuosille 2-22. Rataelementtien muutokset on otettu huomioon kayttamalla Tähtitieteen Perusteet kirjan taulukkoa D.12. Tulokset on tarkastettu vertaamalla niitä IDL:n ASTRO-kirjaston planet_coords.pro ohjelman laskemiin. Tama ohjelma laskee paikat kahdella valinnaisella tarkkuudella: 1) käyttäen samantapaista (ellipsirata, lineaariset häiriöt rataelementeissä) approksimaatioita kuin tm214_rata_jupiter.pro 2) käyttäen tarkkoja JPL-ephemeridejä (vaatii JPLEPH.45 tiedoston samassa hakemistossa) Seuraavan sivun kuvissa on esitetty tm214_rata_jupiter.pro ohjelman tuottamat kuvat. TEHTÄVÄ: Laske vastaavalla tavalla Marsin sijainti taivaalla v. 2-22. Kopioi itsellesi hakemisto /wrk/hsalo/tm214_harjtyo.dir joka sisältää edellämainitut esimerkkiohjelmat sekä JPLEPH.45 tiedoston) [BONUS - Ei tehtävä] Katso myös ohjelmaa tm214_solarsystem.pro joka plottaa animaation Aurinkokunnan sisäosien liikkeestä, käyttäen hyväksi ASTROkirjaston ohjelmia. 2
Ohjelman tm214_rata_jupiter.pro tulostuksia: 2 Jupiterin rata 2-22 1 latitudi -1-2 -2-1 1 2 longitudi pitkin elliptikaa Jupiterin deklinaatio 3 2 1-1 -2-3 2 25 21 215 22 Vuosi Jupiterin rektaskensio 4 3 2 1 2 25 21 215 22 Vuosi 4 15 deklinaation virhe (arcmin) 2-2 rektaskension virhe (arcmin) 1 5-5 -1-4 2 25 21 215 22 Vuosi -15 2 25 21 215 22 Vuosi 3
tm214_rata_jupiter.pro program='tm214_rata_jupiter' ps= rad_to_deg=18.d/!dpi ;jatkoa harjoitusesimerkille ;lasketaan 1.1.2 sijainnin sijasta Jupiterin ;naennainen rata vuosina 2-22 ;Kaytetaan Tahtitieteen perusteet Taulukon D.12 rataelementteja ;eli v. 2. rataelementteihin lisataan aikaan verrannolliset ;korjaukset ;tehdaan kaikki laskenta kaksoistarkkuudella ;huom: 2. = klo 12 UT 1.1.2 ;---------------------------------------------------------- ;lasketaan rata 2-22 (21 vuoden ajalle) timet=dindgen(21)/1. tday=timet*365.25d tcen=tday/36525.d ; aika vuosina 21 vuotta,.1 vuoden valein ; aika vuorokausina 1.1.2 lahtien ; aika vuosisatoina ;tallennetaan taulukoihin ;declinaatio, rektaskensio deltat=timet alphat=timet ;latitudi, longitudi ekliptika systeemissa lattab=timet lontab=timet for i=l,n_elements(timet)-1 do begin T=tcen(i) ;aika juliaanisina vuosisatoina ;------------------------------------------------------ ;Jupiterin rataelementit : lisataan korjaukset (HUOM yksikot!) ;------------------------------------------------------ a = 5.233631d +.6737*T eks =.4839266d -.1288*T ink = 1.353d - 4.15/36.*T ome =1.55616d + 1217.17/36.*T wp = 14.75385d + 839.93/36.*T ;perihelin pituus (solmuviivasta) L = 34.4438d +.838676*tday(i) ;keskipituus ;(solmuviivasta) w=wp-ome M=L-wp ;perisentrin argumenttti ;keskianomalia tau=.d ;dummy, silla annateaan M suoraan elem_jup=[a,eks,ink,ome,w,tau] M_jup=(M mod 36.d)/36.d*2.*!dpi ;------------------------------------------------------ ;Maan ratalementit ;------------------------------------------------------ a = 1.11d -.5*T eks =.16712d -.384*T ink =.5d - 46.94/36.*T ome =-11.2664d - 18228.25/36.*T wp = 12.94719d + 1198.28/36*T L = 1.46435d +.985691*tday(i) 4
w=wp-ome M=L-wp ;perisentrin argumenttti ;keskianomalia elem_maa=[a,eks,ink,ome,w,tau] M_maa=(M mod 36.d)/36.d*2.*!dpi time=.d ;dummy koska kaytetaan M elem_to_rv,elem_jup,time,rad,vel,m=m_jup rad_jup=rad elem_to_rv,elem_maa,time,rad,vel,m=m_maa rad_maa=rad ;erotus: ekliptika-systeemi x=rad_jup()-rad_maa() y=rad_jup(1)-rad_maa(1) z=rad_jup(2)-rad_maa(2) r=sqrt(x^2+y^2+z^2) lattab(i)=asin(z/r)*rad_to_deg lontab(i)=atan(y,x)*rad_to_deg ;erotus: ekvaattori-systeemi ;kierretaan ekliptikan kaltevuuden verran ; ekli=23.4393d-46.815d/36.*t-.59/36.*t^2+.1813*t^3 ekli=23.4392911111d ;J2 sine=sin(ekli/rad_to_deg) cose=cos(ekli/rad_to_deg) xe=x ye=y*cose-z*sine ze=y*sine+z*cose re=sqrt(xe^2+ye^2+ze^2) delta=asin(ze/re)*rad_to_deg alpha=atan(ye,xe)*rad_to_deg if(alpha le ) then alpha=alpha+36. deltat(i)=delta alphat(i)=alpha endfor ;-------------------------------------------------------------- ;Plot 1 ;piirretaan rata ekliptika-systeemissa ;latitudi vs longitudi psdirect,program+'_a',ps,/color nwin plot,lontab,lattab,xtitle='longitudi pitkin elliptikaa',$ title='jupiterin rata 2-22', ytitle='latitudi',psym=3 psdirect,program+'_a',ps,/color,/stop ;---------------------------------------- ;Plot 2 ;2*2 kuvaa ;ylã rivi: deklinaatio ja rektaskensio vs aika ;alarivi: virheet 5
;tarkistuksessa kaytetaan ;ASTRO-kirjaston planet_coords proseduuria ;juldate palauttaa redusoidun Julian Date ; = JD-24. ;huom: 2. = klo 12 UT 1.1.2 juldate,[2.,1.,1,12.,,],jd jd=jd+24.d jd=jd+tday ;ylla maaritellyt ajanhetket -> JD ;tarkistus planet_coords,jd,/jd,ra_astro,dec_astro,planet='jupiter' ;tarkempi tarkistus, kayttaen JPL ephemerideja planet_coords,jd,/jd,ra_jpl,dec_jpl,planet='jupiter',/jpl ;--------------------------------------------------- psdirect,program+'_b',ps,/color nwin!p.multi=[,2,2]!p.charsize=.7 ; astro-tarkistus: ;plotaan vain joka 2 piste index=lindgen(n_elements(timet)/2)*2 ;----------------- ;deklinaatio plot,2+timet,deltat,xr=[,2]+2,$ xtitle='vuosi',ytitle='jupiterin deklinaatio',psym=3 oplot,2+timet(index),dec_astro(index),col=2,psym=6,syms=.5 oplot,2+timet(index),dec_jpl(index),col=3,psym=1,syms=.5 ;----------------- ;rektaskensio plot,2+timet,alphat,xr=[,2]+2,$ xtitle='vuosi',ytitle='jupiterin rektaskensio',psym=3 oplot,2+timet(index),ra_astro(index),col=2,psym=6,syms=.5 oplot,2+timet(index),ra_jpl(index),col=3,psym=1,syms=.5 ;----------------- ;deklinaation virhe ; musta = laskettu -JPL ; punainen (col=2) astro-jpl plot,2+timet,(deltat-dec_jpl)*6.,xr=[,2]+2,$ xtitle='vuosi',ytitle='deklinaation virhe (arcmin)',psym=3,yr=[-4,4],ys=1 oplot,2+timet,(dec_astro-dec_jpl)*6,col=2 ;----------------- ;rektaskension virhe ; musta = laskettu -JPL ; punainen (col=2) astro-jpl ;alkuperaiset alpha ja ra_jpl voivat poiketa 36 verran d_alpha=atan(tan((alphat-ra_jpl)/rad_to_deg))*rad_to_deg plot,2+timet,d_alpha*6,xr=[,2]+2,$ xtitle='vuosi',ytitle='rektaskension virhe (arcmin)',psym=3,$ yr=[-15,15],ys=1 d_alpha=atan(tan((ra_astro-ra_jpl)/rad_to_deg))*rad_to_deg 6
oplot,2+timet,d_alpha*6,col=2 ;----------------------------------------------------------------------------!p.charsize=1!p.multi= psdirect,program+'_b',ps,/color,/stop end tm214_solarsystem.pro print,'inner solar system' print,'example of using helio, juldate,daycnv from ASTRO' ;juldate palauttaa redusoidun Julian Date ; = JD-24. juldate,[2.,1.,1],jd jd=jd+24.d timet=dindgen(21)/1.*2*!pi jd=timet*365.25636/2.d/!dpi+jd ; 21 vuotta,.1 valein nwin xylim,1 ;xylim,5 ;just up to saturn ;show also outer Solar System plot,lindgen(2),lindgen(2),/nod,/iso plots,,,psym=1 for i=,n_elements(timet)-1 do begin if(i ne ) then begin ;piirretaan edelliset sijainnit mustalla oplot,hrad*cos(hlong),hrad*sin(hlong),psym=1,col= ;JD -> kalenteripaiva daycnv,jd(i-1),yr, mn, day ;liitetaan yr,mn,day sopivasti formatoituna yhteen merkkimuuttujaan timestring=string(yr,'(i4)')+'-'+string(mn,'(i2)')+'-'+string(day,'(i2)') ;kirjoitetaan mustalla xyouts,.5,.9,/normal,timestring,align=.5,col=,chars=2 endif ;astro-kirjasto helio,jd(i),lindgen(9)+1,hrad,hlong,hlat,/rad ;piirretaan uudet sijainnit valkoisella oplot,hrad*cos(hlong),hrad*sin(hlong),psym=1 daycnv,jd(i),yr, mn, day timestring=string(yr,'(i4)')+'-'+string(mn,'(i2)')+'-'+string(day,'(i2)') xyouts,.5,.9,/normal,timestring,align=.5,col=255,chars=2 ;odotetaan wait,.2 endfor defplot end 7
TÄHTITIETEEN PERUSTEET TAULUKKO D.12 8