2.6.
Program wyliczający datę
juliańską 'juldat.c'
Jedną
z pierwszych operacji
programu tworzącego efemerydę
zakryć gwiazd przez
Księżyc jest zamiana
wprowadzanej kalendzrzowej daty
obserwacji na datę
juliańską. Jednostką tej
skali czasu jest
1 doba. Taka
rachuba czasu wprowadzona
zostałała w roku
1582 przez J.J.Scaligera i oparta jest
na tzw. erze juliańskiej
liczącej 7980 lat.
Początek ery przypada
na 1 . I . 4713 p.n.e.
w południe czasu
uniwersalnego.
2.7.
Program obliczający fazę
i elongacje Księżyca
'phase.c'
Jedną z
ważnych charakterystyk zakrycia
gwiazdy przez Księżyc
jest faza ziemskiego
satelity, ponieważ to
ona w dużym stopniu decyduje,
czy możliwa jest
obserwacja danego zjawiska.
Faza Księżyca zależy
od wzajemnej konfiguracji Ziemi, Słońca i
Księżyca (Rys.2.3.) i
zmienia się w
czasie. Ta sama faza
powtarza się co
29,5 dób (tzw.
miesiąc synodyczny).
Program otrzymuje
date juliańską z
programu głównego. Odległości
pomiędzy Ziemią, Słońcem
i Księżycem są
pobierane z programu 'jpl.c' (efemeryda DE 405).
Rys.2.3. Kąt
fazowy i elongacja
Księżyca.
Algorytm obliczania
fazy i elongacji:
1) Obliczenie
odległości pomiędzy Ziemią,
Słońcem i Księżycem
odpowiednio:
E - heliocentryczne położenie
Ziemi
Q - heliocentryczne położenie
Księżyca
P - geocentryczne położenie
Księżyca
2) Obliczenie kąta
fazowego 'i':
(31)
3)
Obliczenie fazy 'k':
k = (1 +
cos ( i )) / 2 (32)
4) Elongacja 'L':
L = 180 - i (33)
2.8. Oprogramowanie służące
do wykorzystywania efemeryd
JPL
Program
służący do obliczenia
momentów zakryć korzysta
z danych, które
opisują położenie Księżyca,
Ziemi i Słońca.
Do tego zastosować
można efemerydę JPL DE405.
Układem odniesienia jest
tu epoka J2000,0 ICRF (International Celestial
Reference Frame).
Efemeryda DE 405 zawiera:
- barycentruczne
położenia i prędkości ciał
Układu Słonecznego,
- kąty
nutacyjne,
- libracje
Księżyca,
dla
okresu czasu:
od JED 2305424.5 (09.XII.1599),
do JED 2525008.50
(20.II.2201).
Efemeryda jest w użyciu
od czerwca 1997
roku. Zapisana jest
w 50-letnich blokach
po 4,7 MB (UNIX binary) lub
w 20-letnich blokach
po 6,4 MB (ASCII). Dokładność
wyznaczeń dla planet
jest nie mniejsza
niż 25 m natomiast
dla Księżyca wynosi
ona 1m. Program do
wykorzystywania efemeryd JPL powstał
na podstawie oprogramowania otrzymanego dzięki uprzejmości
dr P.A.Dybczyńskiego
(oryginalne oprogramoiwanie NASA przetransponowane na język
"C"). Moduł 'jpl.c' generuje
kąty nutacyjne, położenia i
prędkości wybranego obiektu
Układu Słonecznego. Napisany
został na podstawie
wyżej wymienionego
oprogramowania.
2.9. Program
testujący dostęp do
efemerydy
W
celu upewnienia się
czy program obsługujący
efemerydę działa poprawnie napisano
program testowy. Korzysta on
z pliku zawierającego dane testowe dla
programów korzystających z
efemerydy JPL(DE 405).
Uzyskano maksymalną
dokładność, czyli trzynaście
miejsc po przecinku.
2.10. Program liczący
kąt pozycyjny gwiazdy
Bardzo ważną
informacją dla obserwatora
jest kąt pozycyjny
jest jako, że
służy on do
identyfikacji gwiazdy (Rys.2.4.).
Rys.2.4.
Kąt pozycyjny gwiazdy
względem tarczy Księżyca.
Do
wyznaczenia kąta pozycyjnego
zastosowano własny przybliżony
algorytm.
(34)
Wynikiem
równania (34) jest
kątem pozycyjnym gwiazdy
liczonym od kierunku
na biegun północny,
w kierunku odwrotnym
do ruchu wskazówek
zegara.
2.11. Program tworzący
podzbiór katalogu zodiakalnego: 'hip2000z.dat'
Program efemerydalny generuje efemerydy na
okres 24h. W
celu zoptymalizowania pracy
przy pomocy programu
'efem.c' dokonano wyboru
gwiazd, które znajdują
się w pobliżu Księżyca w
ciągu danej dody.
Powstały w ten
sposób podkatalog zazwyczaj
zawiera około
kilkudziesięciu gwiazd.
Rys.2.5. Podzbiór katalogu.
Program ten
korzysta z programu
'moon.c', który
dostarcza informacje na
temat miejsca widomego
Księżyca przesuwającego się
w ciągu doby
o około 15
stopni względem gwiazd.
Informacje te zapisywane
są do pliku 'stars1.dat', który przy pomocy
programu 'star.c' jest przetransformowany do miejsc widomych
gwiazd na daną
datę ( 'stars2.dat').
2.12. Program efemerydalny 'efemain.c'
Główny program efemerydalny służący do generowania
topocentrycznej efemerydy zakryć
gwiazd przez Księżyc
korzysta z pliku
'stars2.dat' (miejsca widome
gwiazd), programu liczącego
miejsce widome Księżyca ('moon.c') oraz z
programu opisującego warunki
obserwacyjne ('phase.c'). Wynik
końcowy programu zostaje
zapisany do pliku
'efem.dat':
data
godź.UT Nr mag JD faza el.
PA RA DA
22 4 1999 18 38 53 D 40458 7.7 2451291.277008 0.50 89 115
8 15 35.866 17 34 24.691
22 4
1999 19 0 30 R 40342 6.5
2451291.292016 0.50 90
274 8 14 7.148
17 40 39.688
22 4
1999 19 49 28 R 40458
7.7 2451291.326023 0.50
90 270 8 15 35.866 17 34 24.691
22 4
1999 21 46 8 D 40977 9.2
2451291.407031 0.51 91
101 8 21 37.787 17 17 17.583
22 4
1999 22 45 11 R 40977
9.2 2451291.448039 0.52
92 285 8 21 37.787 17 17 17.583
22 4
1999 23 8 14 D 41226 7.1
2451291.464047 0.52 92
86 8 24 40.695 17 11
4.229
22 4
1999 23 35 35 D 41319
6.1 2451291.483049 0.52
92 102 8 25 45.145 17 2 56.748
Tabela 2.5. Efemeryda
uzyskana przy pomocy
programu 'efemain.c'.
gdzie:
Nr
- numer gwiazdy w katalogu
Hipparcos,
mag -
jasność gwiazdy,
JD -
data juliańska,
el -
elongacja Księżyca,
PA -
kąt pozycyjny,
RA,
DA -
rektascencja i deklinacja
gwiazdy,
D
(disappearance) - moment
zakrycia,
R
(reappearance) - moment
odkrycia.
W celu uzyskania
efemerydy opracowany został
własny algorytm obliczania
momentów zakryć gwiazd
przez Księżyc.
Program
wczytuje dane dotyczące
gwiazd ('stars2.dat') tak, aby
każdej gwieździe o
danym numerze katalogowym
przyporządkowany był komplet
danych opisujących jej
położenie i jasność
dla wybranej daty.
Następnym krokiem jest
ustalenie stanu początkowego czyli przypisanie gwiazdom
z powyższego zbioru
wartość (stan) zero, dla
gwiazd niezakrytych i
wartość jeden dla
gwiazd zakrytych.
Gwiazda
jest traktowana jako
zakryta, jeśli odległość kątowa
pomiędzy wektorem wskazującym
środek mas Księżyca
i wektorem do
gwiazdy jest mniejszy
niż chwilowy promień
kątowy Księżyca (Rys.2.6.).
Rys.2.6. Chwilowy promień kątowy.
Chwilowy
promień kątowy:
,
(35)
gdzie:
wartość 1738
jest średnim promieniem
R Księżyca [km] (IAU, 1976),
d
jest topocentryczną odległością
do środka masy
Księżyca [km] (program
moon.c).
Do
określenia stanu początkowego niezbędna jest znajomość
odległości kątowej pomiędzy
gwiazdą a Księżycem:
(41)
gdzie dr
to odległość kątowa
Księżyca i gwiazdy.
Jeżeli dr <
gwieździe przypisuje się status "1". (Sprawdzanie kolejnych gwiazd wykonywane
jest w pętli).
Po
ustaleniu stanu początkowego wykonywane jest krokowe
sprawdzanie (z krokiem
0,001 doby), czy
nastąpiła zmiana statusu
gwiazd (Rys.2.7.).
Rys.2.7. Krokowe sprawdzenie
stanu.
W ten
sposób jest możliwym
staje się wyznaczenie
przybliżonego momentu zakrycia.
Dla małych kroków
(duża dokładność) metoda ta
jest nieefektywna ponieważ
jest bardzo czasochłonna. Zatem w celu
zwiększenia dokładności wybrano
nie zmniejszenie kroku
lecz metodę bisekcji.
(Jest to szybkozbieżna metoda oszczędzająca czas
w znaczący sposób).
Po jej zastosowaniu czas
liczenia efemerydy jednodobowej zredukowany został do
kilku minut (w
zależności od tego
jaka jest gęstość
gwiazd w danym
obszarze).
Kiedy
metoda krokowa wykrywa
zmianę stanu w
chwili JD, dla
przedziału [ (JD-0,001) , JD ] zastosowana zostaje
metoda bisekcji polegająca
na kolejnych podziałach
przedziału na pół
i sprawdzaniu, w
której połowie zachodzi
oczekiwane zjawisko (Rys.2.8.).
Rys.2.9.
Metoda bisekcji.
Uzyskanie
odpowiedniej dokładności wymaga
paru sekund, po
czym informacja zapisywana
jest do pliku
'efem.dat' (jedna
linijka zawierająca zilustrowana w Tab.2.5.) Kolejne
dzielenia przedziałów wykonywane
są w pętli.
Końcowa
efemeryda zawiera wszystkie
dane potrzebne do
przeprowadzenia obserwacji zakryć. Wzorowana jest i porównywana
z efemerydą pochodzącą
z ILOC (International Lunar
Ocultation Center).