Licencja Creative Commons

Autorem poniższego opracowania jest dr Piotr A. Dybczyński z Instytutu Obserwatorium Astronomiczne UAM w Poznaniu.


Transformacje między astronomicznymi układami współrzędnych




Rysunek 1

Na Rysunku 1 mamy zdefiniowane trzy operatory obrotu: `R_x()`, `R_y()` oraz `R_z()`. Wszystkie transformacje, o których mowa w tym materiale, realizujemy poprzez obroty lub ciągi obrotów z użyciem tych operatorów.

Mając dane jakieś kątowe współrzędne sferyczne, np. `(u, v)`, gdzie `u in <0^circ, 360^circ)` oraz `v in <-90^circ, +90^circ>` wyliczamy (po przeliczeniu kątów na radiany!) składowe wersora:

`x=cos u cos v`

`y=sin u cos v`

`z=sin v`


Taki wersor, traktowany jako wektor kolumnowy `[[x],[y],[z]]`, oznaczymy jako `hat r_{u,v}`. Będziemy na niego działać operatorami obrotu (czyli mnożyć lewostronnie wersor - raz lub kolejno kilka razy - przez odpowiednie macierze obrotu) uzyskując nowy wersor, z którego będziemy wyliczali współrzędne sferyczne w nowym układzie ze wzorów:

`v="asin"(z)`

`u= "atan2"(y,x)`

Funkcje asin i atan2 to nazwy bibliotecznych funkcji matematycznych języka C, realizujących arcsin() oraz dwuargumentowy arctan() wyliczający arcus tangens od razu we właściwej ćwiartce. Kąt `v` otrzymamy od razu w prawidłowym przedziale `<-pi/2,+pi/2>`, natomiast kąt `u` otrzymamy w przedziale `<-pi,+pi>` i trzeba go przenieść do przedziału `<0, 2pi)` dodając `2 pi` gdy kąt `u` będzie ujemny.

Transformacje między układami: równikowym równonocnym `(alpha,delta)` a ekliptycznym `(lambda,beta)`:

`hat r_{lambda,beta} = R_x(epsilon) hat r_{alpha,delta}`

`hat r_{alpha,delta} = R_x(-epsilon) hat r_{lambda,beta}`

gdzie `epsilon` jest nachyleniem ekliptyki do równika niebieskiego. Proszę używać wartości dla epoki J2000:   `epsilon_{"J2000"}` = 23° 26' 21.448" .

Transformacje między układami: równikowym godzinnym `(t,delta)` a horyzontalnym `(A,h)` :

`hat r_{t,delta} = R_y(varphi-90^circ) R_z(180^circ) hat r_{A,h}`

`hat r_{A,h} = R_z(-180^circ) R_y(90^circ - varphi) hat r_{t,delta}`

gdzie `varphi` to astronomiczna szerokość geograficzna obserwatora.

Transformacje między układami: równikowym równonocnym `(alpha,delta)` a galaktycznym `(l,b)` :

Układ współrzędnych galaktycznych zdefiniowany jest przez podanie współrzędnych równikowych równonocnych północnego bieguna Galaktyki `alpha_o` i `delta_o` oraz kąta pozycyjnego północnego bieguna świata w układzie galaktycznym, `theta` (por. np. wykład prof. T. Jopka).

Proszę używać następujących wartości tych kątów:

`alpha_o` = 12h51m26.27549s ,

`delta_o` = 27°07'42.7043" ,

`theta` = 122°55'54.9069" ,

a transformacje mają postać:

`hat r_{l,b} = R_z(90^circ-theta) R_x(90^circ-delta_o) R_z(90^circ+alpha_o) hat r_{alpha,delta}`

`hat r_{alpha,delta} = R_z(270^circ-alpha_o) R_x(270^circ+delta_o) R_z(270^circ+theta) hat r_{l,b}`

Transformacje między układami: równikowym równonocnym `(alpha,delta)` a równikowym godzinnym `(t,delta)` :

Transformacja ta wymaga pewnego dodatkowego zabiegu, gdyż oprócz obrotu wymaga przejścia z układu lewoskrętnego na prawoskrętny (lub odwrotnie).

Idąc od `(t,delta)` do `(alpha,delta)` postępujemy tak:

mając dane jakieś współrzędne równikowe godzinne `(t,delta)` wyliczamy troszkę inaczej składowe wersora:

`x=cos u cos v`

`y=color(red){-sin u cos v}`

`z=sin v`

a następnie stosujemy do tego wersora transformację:

`hat r_{alpha,delta} = R_z(-s) hat r_{t,delta}`

gdzie `s` jest miejscowym czasem gwiazdowym.

Transformacja odwrotna:

`hat r_{t,delta} = R_z(s) hat r_{alpha,delta}`

i w tak otrzymanym wersorze zmieniamy znak składowej `y`.


Zestawy danych testowych




Licencja Creative Commons