Skocz do zawartości

technikalia astronomii

  • wpisów
    16
  • komentarzy
    27
  • wyświetleń
    7 528

IRAF - srogie niewygodne narzędzie...


Michal G.

1 610 wyświetleń

Dzień dobry,
niniejszym wpisem zaczynam opisywanie wykonywania fotometrii za pomocą IRAFA. Rzecz jest niestety żmudna, upierdliwa, a co najgorsze - warta świeczki...

Co jest środku:

  1. Trochę o IRAFie
  2. Nieco o dystrybucjach linuksa
  3. o instalowaniu IRAFa
  4. Appendix z paroma komendami używanymi podczas instalacji
  5. Parę słów komentarza i plany na kolejne wpisy


1.
IRAF jest kawałkiem software-u służącym do analizy danych pochodzących z bardzo różnorodnych instrumentów, między innymi teleskopów. Nie posiada interfejsu graficznego, obsługuje się go wpisując komendy. Żeby prawidłowo przejść przez wszystkie kroki od redukcji, aż do redukcji trzeba się całkiem nieźle napracować. Da się napisać skrypty, które za nas wykonają robotę, np, jeśli często analizujemy podobne dane, to można sobie nieco ułatwić życie. Najczęściej jednak lepiej jest wszystko robić ręcznie, przynosi to lepsze rezultaty.

Oryginalnie IRAF powstał dla użytkowników systemów UNIX, da się go jednak zainstalować i używać na Windowsach - działa pod Cygwinem. Zdecydowanie jednak odradzam próby używania IRAFA pod Windowsami. Działa, ale za to bardzo wolno, a żeby w ogóle go zainstalować trzeba poświęcić kilka godzin na rozwiązanie problemów, które na dowolnym linuxie by nie wystąpiły. No dobrze, skoro nie Windows, a linux - to jaki jaki linux? Ja na swoim komputerze zainstalowałem Ubuntu ( http://www.ubuntu.com/ ). Jest to popularna dystrybucja, w razie jakichś problemów można znaleźć dużo pomocy w internetach. Dobrym pomysłem jest zainstalowanie sobie Scientific Linuxa ( https://www.scientificlinux.org/ ). Jest to specjalna dystrybucja linuxa z od razu zainstalowanymi wieloma programami przydatnymi w analizie danych. Technicznie rzecz biorąc nic nie stoi na przeszkodzie, żeby zainstalować sobie linuxa na jakiejś wirtualnej maszynie - mnie osobiście irytuje ich użytkowanie (dlatego tak nie mam), ale wszystko powinno działać poprawnie.

2.
Zainstalowanie współczesnych dystrybucji linuxów odbywa się bardzo przyjemnie. Bardzo ważne jest, że można bez problemu mieć na tym samym komputerze dwa systemy operacyjne. Sam linux podczas instalacji proponuje taką opcję. Jest to bardzo wygodna droga i w miarę bezpieczna. Żeby doinstalować linuxa równolegle do np. Windowsa warto się wcześniej upewnić, że dysk jest zdefragmentowany, a kluczowe dane mamy gdzieś indziej zabezpieczone. Doinstalowanie linuxa polega na tym, że wolna przestrzeń na dysku wykorzystana jest na utworzenie nowych partycji. Można oczywiście samemu wydzielić partycję na linuxa, albo zainstalować go na zupełnie innych dysku, a nawet pendrive-ie. Ja u siebie mam Windowsa na dysku SDD, a linuxa na zwykłym HDD, na którym wydzieliłem jakies 50 GB miejsca. Linux potrafi czytać i pisać partycje windowsowe, ale zasadniczo lepiej nie planować pracy w ten sposób. To pisanie i czytanie nie zawsze działa w sposób bezproblemowy, zatem warto zastanowić się nad większą ilością miejsca. Ja mam tak, że pliki którym chce zrobić redukcje i fotometrię kopiuje tymczasowo na partycje z linuksem, a jak skończę to kasuję.

Wszystkich chętnych do przejścia przygody z fotometrią razem ze mną i IRAFem zachęcam już sobie zainstalować linuxa. Zapoznajcie się z systemem, a w szczególności zaprzyjaźnijcie z terminalami i poruszaniem w nich. Wyprobujcie komendy takie jak "cd", "ls", "cd ..", "ls -ltr", "cd {folder}". To będą Wasi przyjaciele przy dalszych krokach, np takim kroku jak instalacja IRAFA.

3.
Do zainstalowania IRAFA istnieją w internecie poradniki. Niestety niektóre z nich są niekompletne :( Kilka tygodni temu, instalując IRAFA, opierałem się najbardziej na http://www.astronomy.ohio-state.edu/~khan/iraf/iraf_step_by_step_installation_64bit Chyba jedyny krok, którego brakuje, to dodanie użytkownika. IRAF do poprawnego działania wymaga utworzenia dodatkowego konta uzytkownika. Na to konto nikt się ma nie logować itp. ale IRAF z niego będzie korzystał, trochę dziwnie, ale co poradzić? ;)
Konto użytkownika można dodać z poziomu dowolnego terminala za pomocą komendy adduser. Żeby jednak ta komenda zadziałała trzeba ją wykonać jako administrator, dlatego wywołujemy dwie komendy w jednej linijce: sudo adduser iraf
sudo to komenda, która powoduje wywołanie innych komend z uprawnieniami administratora. W linuksach można dużo dowiedzieć się o każdej komendzie / programie (tak naprawdę to te komendy, to są programy) wywołujac man. Np. man adduser

Z zainstalowanym irafem wchodzimy do folderu, w którym trzymamy klatki ze zwierzę. Fitsy. W tym folderze wykonujemy mkiraf, w celu przygotowania folderu pod IRAFa. Utworzone zostaną odpowiednie pliki i foldery do trzymania parametrów później uzywanych.

Technicznie rzecz biorąc istnieją projekty, które mają zadanie ułatwic użytkownikowi zainstalowanie IRAFa, np. http://astroconda.readthedocs.io/en/latest/installation.html
Osobiście nigdy nie skorzystałem z żadnej z nich, ale głównym powodem był fakt, że nie widziałem powodu - instalują one dużo różnych rzeczy, które zazwyczaj już wcześniej mam. Wydaje mi się, że zainstalowanie IRAFa wykorzystując taką paczkę, to dobry pomysł, z zastrzeżeniem, że nie wiem co te paczki robią dokładnie. Ja preferuję robić rzeczy samemu, bo potem mam większą kontrolę i świadomość tego co się dzieje. Prawdopodobnie w ciągu paru najbliższych dni spróbuję zainstalować astrocondę na swoim komputerze i zobacze czy wszystko śmiga - chyba że jakiś śmiałek to zrobi wcześniej, to proszę napisać w komentarzach :)

4.
Dodatek dla początkujących uzytkowników linuksa.
Nie planuję tutaj (przynajmniej na razie) rozpisywać się na temat uzytkowania tego systemu. Powodów jest kilka, przede wszystkim jest pełno tego typu materiałów w internecie, a po drugie: zapewne jest pełno ludzi bardziej kompetentnych ode mnie. W razie jakichś pytań, wątpliwości - piszcie, będziemy rozwiązywac na bierząco :)
W poźniejszych wpisach będę używał trochę podstawowych komend w terminalu - te pewnie skomentuję. Żeby przebrnąć przez instalację trzeba wywołać komendy tak jak w tutorialu zlinkowanym powyżej. Żeby zastartować napiszę czym one z grubsza są. Terminale otwiera się zazwyczaj łatwo we wszystkich dystrybucjach linuksów, ale bywa, że różnie się nazywają - xterm, xgterm, konsole itd. Najczęściej wyróżnia je charakterystyczna ikonka przypominająca stary monitor ;)

sudo apt-get install tcsh libxss1 lib32z1 lib32ncurses5 lib32bz2-1.0 libXmu6:i386
sudo - wykonuje komendy jako root (administrator)
apt-get - program do instalowanie programów :)
install - komenda do apt-get
tcsh - rodzaj terminala do zainstalowania
lib.... - biblioteki do zainstalowania

wget ftp://iraf.noao.edu/iraf/v216/PCIX/iraf.lnux.x86_64.tar.gz
wget - program do ściagania plików

sudo mkdir /iraf
mkdir - tworzy folder. W tym wypadku stworzy folder "na samej górze" czyli w / .

sudo mv iraf.lnux.x86_64.tar.gz /iraf/iraf/.
mv - przenosi pliki/fodery z jednego miejsca w drugie

cd /iraf/iraf
wchodzi do folderu

sudo tar -zxf iraf.lnux.x86_64.tar.gz
tar - program do rozpakowywania plików

sudo rm iraf.lnux.x86_64.tar.gz
rm - kasowanie plików (fodlery też kasuje, jeśli się go o to popros).

sudo ./install
./install - w tym wypadku jest to program (lub skrypt), który znajduje się w ścieżce, w której się jest, to oznacza ta kropka w ./

sudo wget http://ds9.si.edu/archive/linux64/ds9.linux64.7.2.tar.gz
ds9 - tu jest ściagany ds9, jest to program do oglądania i analizowania plików fits. Potem używa się go wewnątrz IRAFA, żeby np oszacować jasność tła i inne statystyki

sudo chmod u=rwx iraf
chmod - zmiana uprawnień do pliku. u oznacza, że użytkownicy będą mieli uprawnienia rwx czyli do czytania, edytowania i uruchamiania danego pliku. W tym wypadku iraf na końcu jest plikiem skompilowanym, tak samo działałoby to dla skryptów, które samemu się pisze.

mkdir IRAF
w tej komendzie niby chodzi o to, żeby utworzyć sobie folder do trzymania fitsów i zacząć pracę nad nimi. Na dobrą sprawę mógłby to być dowolny inny folder, ja np zazwyczaj mam ~/fits czyli w folderze użytkownika, moim, mam folder fits.

mkiraf
mkiraf to specjalna komenda (progrram, jak zwał tak zwał) do przygotowania folderu, w którym się jest, do pracy z IRAFem. Tworzy niezbędne pliki i foldery, w których potem trzymane są parametry i ustawienia.


5.
UF!
No to tyle! Nie ma w tym wpisie obrazków, mam nadzieję że mi wybaczycie ;) W przyszłych odcinkach już będę się zajmował faktyczną fotometrią. Myślę, że zacznę od konwersji rawów do fitsów, bo IRAF łyka tylko fitsy i należy je prawidłowo przygotować - ze wszystkimi niezbędnymi kluczami w nagłówku. Potem porobimy redukcje, fotometrię aperturową i wreszcie profilową. Na koniec rysowanie krzywych zmian blasku. Długa droga przed nami ;)

Jeszcze może dodam dlaczego w ogóle warto się trochę pomęczyć z IRAFem. Otóż dla mnie najważniejsza zaleta to fotometria profilowa. Daje ona bardzo dobre oszacowania błędów, można dzięki temu bardzo skutecznie obrabiać dane (no chociażby niektóre punkty pomiarowe usunąć w sposób uzasadniony). Do całej tej akcji zainspirowała mnie prezentacja LibMara na ostatnim zlocie oraz wyniki przedstawiane przez niego i Grzędziela tu na forum. Nie znam innego programu, który pozwoliłby na zrobienie fotometri profilowej i był łatwiejszy w zainstalowaniu... Ponadto MuniWin, który wykonuje fotometrie aperturową moim zdaniem robi to źle - uważam, że błędnie szacuje błedy ;D Postaram się to potwierdzić lub obalić w przyszłych wpisach, jak już będziemy przerabiali fotometrię.

Jeśli macie jakieś pytania, prośby, problemy - piszcie! Postaram się pomóc. Czy taki poziom szczegółow dot. linuksa jest wystarczający? W przyszłych wpisach będzie tego dużo, więc potrzebuję mieć jakąś metodę na wydajne pisanie co trzeba robić...



  • Lubię 7

0 komentarzy


Rekomendowane komentarze

Brak komentarzy do wyświetlenia

Gość
Dodaj komentarz...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.