PRAKTYCZNA INSTRUKCJA OBSŁUGI PAKIETU DIA 1 Wstęp Pakiet DIA (Difference Image Analysis) przeznaczony jest do poszukiwania i analizy obiektów zmiennych zarejestrowanych na obrazach nieba. Programy wchodzące w skład pakietu wykorzystują algorytm opracowany przez Alarda i Luptona. Jest to pierwszy algorytm, który działa w przestrzeni rzeczywistej, a nie jak w innych implementacjach w przestrzeni Fouriera. Wszystkie programy i skrypty są autorstwa P.R. Wożniaka z Uniwersytetu w Princeton. 2 Przygotowanie do uruchomienia pakietu 2.1 Przestrzeń dyskowa Programy wchodzące w skład pakietu DIA operują zwykle na dużej ilości danych, w związku z czym należy zarezerwować odpowiednią ilość przestrzeni dyskowej. Ilość wolnego miejsca na twardym dysku powinna być w przybliżeniu taka sama jak objętość zajmowana przez dane wejściowe. 2.2 Przygotowanie składników obrazu referencyjnego Spośród obrazów przeznaczonych do analizy należy wybrać około 20 obrazów, które charakteryzują się: bardzo dobrym seeingiem niskim poziomem tła brakiem wad typu podwójne obrazy gwiazd, ślady meteorów, itp. brakiem zniekształceń profilu gwiazd podobną masą powietrzną, przy której wykonano obraz niewielkim względnym przesunięciem obrazów Nazwy wybranych obrazów (bez rozszerzenia) należy umieścić w pliku tplimages.txt (każdy w oddzielnej linii). Na początku listy powinien znaleźć się obraz, względem którego będą określane przesunięcia pozostałych obrazów. 2.3 Przygotowanie do pracy: - należy stworzyć katalog z danymi DATA_DIR oraz katalog roboczy WORK_DIR - w katalogu DATA_DIR umieszczamy zredukowane obrazki, które będziemy analizować - w katalogu WORK_DIR umieszczamy następujące pliki: - tplimages.txt zawierający listę obrazków z których stworzony będzie TEMPLATE, UWAGA: na pierwszym miejscu musi być obrazek względem którego policzone będą przesunięcia - images.txt zawierający posortowaną listę wszystkich obrazków do analizy przykład: mr10001 mr10002... - pliki z parametrami ( *.par, np: xygrid.par) - plik ONE_ushort.fts zawierające maskę złych pikseli (obecnie niewykorzystywana opcja programu) - w skryptach Find_shifts, Make_template i Pipe modyfikujemy linie zawierające: DATA_DIR WORK_DIR - tu podajemy ścieżkę dostępu do katalogu z danymi - tu podajemy ścieżkę dostępu do katalogu roboczego
refim FIELD - tu podajemy numer obrazka względem, którego liczone są przesunięcia - tu podajemy nazwę pola, które analizujemy 3 DIA opis skryptów i programów wchodzących w skład pakietu 3.1 Skrypt Find_shifts Skrypt tworzy plik shifts.txt zawierający przesunięcia względem wybranego obrazka (listing w dodatku A). Wywołanie - Find_shifts. Skrypt wywołuje program super_cutfits oraz cross: super_cutfits - wycina fragment obrazka wejściowego, zawsze zwraca rozsądny wynik niezależnie od podanego zakresu X,Y wywołanie: super_cutfits infile outfile n11 n12 n21 n22 infile outfile n11 n12 n21 n22 - plik FITS źródłowy - plik FITS z wycinkiem - zakres X1-X2 Y1-Y2 dla wycinka cross - dokonuje zgrubnego oszacowania przesunięć pomiędzy obrazkiem image1 lub image2 (lub obrazkami w liście image_names_file). Szacowanie odbywa się w dwóch etapach. W pierwszym obrazki są binowane (u nas po 16 pikseli) i znajdowane jest przybliżone względne przesunięcie. W drugim etapie wycinany jest ze środka każdego obrazka niewielki fragment (u nas 128x128 pikseli) i znajdowane jest przesunięcie z teoretyczną dokładnością do jednego piksela. wywołanie: cross parameter_file image1 (image2 lub -f image_names_file) parameter_file - plik za parametrami (opis w dodatku A1) image1 - plik względem, którego liczymy przesunięcia image2 - plik dla którego liczymy przesunięcie -f image_names_file - lista plików, dla których mają być policzone przesunięcia 3.2 SCHEMAT DZIAŁANIA SKRYPTU a) wycinamy z obrazka 2kx8k obrazek 2kx4k i nadajemy mu nazwę mrnnnnncr.fts - UWAGA: wymiary obrazków odpowiadają danym OGLEII, obrazki mrnnnnncr.fts wycinane są w celu skrócenia czasu działania programu cross, a ich rozmiar jest na tyle duży aby uwzględnić nawet duże przesunięcia b) za pomocą programu cross szacujemy zgrubne przesunięcia wszystkich obrazków z pliku images.txt - nazwy wyciętych obrazków wraz z rozszerzeniem mrnnnnncr.fts są przechowywane w pliku crossimages.txt
c) program cross wypisuje do pliku shifts.txt w katalogu roboczym zgrubne przesunięcia względem wybranego obrazka, zazwyczaj OGLE TEMPLATE d) na koniec usuwane są pliki mrnnnnncr.fts 3.3 Skrypt Make_template Skrypt ten (listing w dodatku B) realizuje procedurę tworzenia obrazka referencyjnego dla odejmowania obrazów. Wywołanie - Make_template. Skrypt wywołuje następujące programy: super_cutfits - wywołanie podobnie jak w skrypcie Find_shifts ushort2float - zmienia format zapisu pikseli w FITSIE z UNSIGNED SHORT na FLOAT wywołanie: ushort2float infile outfile [-min value -max value] infile - plik wejściowy outfile - plik wyjściowy [ -min value max value] - wartość minimalna i maksymalna, dla wartości piksela, do zapisu sfind - szuka gwiazd na wejściowym obrazku FITS, wynik to współrzędne + przybliżona magnituda wywołanie: sfind parameter_file input_image output_file parameter_file - plik z parametrami (opis w dodatku B1) input_image - plik wejściowy w formacie FITS (UNSIGNED SHORT) output_file - plik wyjściowy zawierający współrzędne i jasność xymatch - wykorzystuje listę gwiazd stworzoną przez program sfind do odnalezienia współrzędnych (x,y) tych samych gwiazd na dwóch obrazkach (referencyjnym i aktualnie analizowanym). Wykorzystywana jest metoda trójkątów. Program tworzy listę zawierającą odpowiadające sobie pary współrzędnych, na ekranie wypisuje przesunięcie miedzy listami. wywolanie: xymatch parameter_file reference_list matched_list output_file parameter_file - plik z parametrami (opis w dodatku B1) reference_list - lista współrzędnych gwiazd na obrazku referencyjnym matched_list - lista współrzędnych gwiazd na analizowanym obrazku output_file - plik wyjściowy z listą zawierającą X1 Y1 na pierwszym i X2 Y2 na drugim obrazku dla każdej zidentyfikowanej gwiazdy. xygrid - wykorzystując wynik działania programy xymatch, oblicza transformację wielomianową jednej siatki pikseli na drugą wywołanie: xygrid parameter_file input_list coeff_file parameter_file - plik z parametrami (opis w dodatku B1)
input_list coeff_file - lista współrzędnych gwiazd (wynik działania programu xymatch) - plik wyjściowy zawierający współczynniki transformacji jednej siatki pikseli na drugą resample - program transformuje siatkę pikseli danego obrazka tak aby odpowiadała siatce pikseli obrazka referencyjnego. Program korzysta ze współczynników transformacji policzonych przez program xygrid. wywołanie: resample param_file coeff_file input_image output_image param_file - plik z parametrami (opis w dodatku B1) coeff_file - plik ze współczynnikami transformacji stworzony przez program xygrid input_image - FITS (UNSIGNED SHORT) wejściowy output_image - FITS (FLOAT) z przetransformowaną siatką pikseli (wyjściowy) mstack - dodaje obrazki o uzgodnionej siatce pikseli i tworzy wycinek końcowego SUPERTEMPLATE. Opcjonalnie program usuwa promienie kosmiczne z wyniku. wywołanie: mstack parameter_file image_names_file output_image parameter_file - plik z parametrami (opis w dodatku B1) image_names_file - lista obrazków do dodania output_image - nazwa pliku wyjściowego getpsf - poszukuje gwiazd na obrazku i modeluje kształt ich PSF jako funkcję X,Y. PSF opisywany jest sumą funkcji Gaussa pomnożonych przez wielomiany. wywołanie: getpsf parameter_file input_image output_file param_file - plik z parametrami (opis w dodatku B1) input_image - plik wejściowy FITS (FLOAT) output_file - plik wyjściowy ze współczynnikami funkcji opisującej PSF na obrazku template - scala przygotowane wycinki w jedna całość i tworzy SUPERTEMPLATE. Obrazek ten nie jest wykorzystywany w dalszych obliczeniach tworzony jest tylko w celach kontrolnych. wywolanie: template image_names_file output_image x_nim y_nim image_names_file output_image x_nim y_nim - lista obrazkow do polaczenia - obrazek SUPERTEMPLATE - liczba podobrazkow w X i w Y do polaczenia Opis plików z parametrami, które należy dołączyć do każdego programu (oprócz ushort2float, template, super_cutfits) załączono w dodatku B1. Pliki te mają ustalona postać, nie wolno zmieniać kolejności parametrów, a tylko ich wartości. SCHEMAT DZIAŁANIA SKRYPTU:
Skrypt przygotowuje obrazek referencyjny. Obróbce podlegają wycinki rzeczywistych obrazków (dla OGLE-II każdy obrazek dzielony jest na 4 x 64 = 256 wycinków), wycinki pokrywają się na pewnym obszarze (dla OGLE-II margines wynosi 14 pikseli). Powtarzana jest następująca procedura, punkty a) j): a) dla każdego obrazka z listy tplimages.txt program super_cutfits tworzy wycinek z wcześniej ustalonym marginesem, współrzędne wycinka uwzględniają przesunięcia z pliku shifts.txt b) na każdym z wycinków program sfind znajduje gwiazdy i zapisuje ich współrzędne w pliku mrnnnnnc.coo c) teraz dla każdego obrazka z listy tplimages.txt, ale z pominięciem obrazka względem którego liczyliśmy przesunięcia nazwijmy go refim, powtarzane są poniższe kroki d) program xymatch tworzy listę par odpowiadających sobie gwiazd na wycinku analizowanego obrazka i wycinku obrazka refim, współrzędne gwiazd pobiera z plików mrnnnnnc.coo, dodatkowo podaje dokładne przesunięcie w X i Y pomiędzy porównywanymi listami e) jeśli znalezione przesunięcie jest większe niż pewna wcześniej ustalona wartość (u nas 5 pikseli), uaktualniane jest przesunięcie danego wycinka i dla tego obrazka powtarzane są punkty od a) do d) f) następnie program xygrid oblicza współrzędne transformacji siatki pikseli i zapisuje je w pliku mrnnnnnc.match g) program resample wykorzystując współczynniki z pliku mrnnnnnc.match transformuje siatkę pikseli na obrazku tak aby odpowiadała refim, wynik zapisany jest w pliku mrnnnnnr.fts (FLOAT) h) jeśli wynik działania, któregokolwiek z programów jest niepomyślny uruchamiana jest procedura FAKE: - kolejny wycinek zastępujemy pustym obrazkiem i) po przetransformowaniu wszystkich obrazków program mstack dodaje je tworząc obrazek referencyjny, a dokładnie jego wycinek (np. ref_2_16.fts) j) program getpsf tworzy model PSF na obrazku referencyjnym, wyniki zapisywane z pliku o nazwie np. psf_2_16.bin Na koniec program template skleja poszczególne wycinki w jeden obrazek o wymiarach 2kx8k (wymiar dla OGLEII). Jest to zabieg czysto kontrolny ułatwiający obejrzenie SUPERTEMPLATE w całości. Wycinki są zachowane, gdyż skrypt Pipe również analizuje obrazki po ich uprzednim podzieleniu na nx x ny wycinków. Podczas tworzenia obrazka referencyjnego usunięta zostaje BAD_COLUMN (OGLEII), a także większość złych pikseli (cosmic rays itp.). Pomimo, że obliczenia są przeprowadzane niezależnie na wycinkach dużego obrazu, na sklejonym SUPERTEMPLATE nie widać np. różnic poziomu tła pomiędzy sekcjami. 3.4 Skrypt Pipe Skrypt ten realizuje procedurę odjęcia obrazów. Wykorzystuje obrazek referencyjny stworzony za pomocą skryptu Make_template oraz ciąg obrazków, których listę zawarto w pliku images.txt. Skrypt korzysta z następujących programów: super_cutfits sfind ushort2float xymatch xygrid resample = wywołanie jak w Make_template = wywołanie jak w Make_template = wywołanie jak w Make_template = wywołanie jak w Make_template = wywołanie jak w Make_template = wywołanie jak w Make_template Powyższe programy podobnie jak w Make_template pozwalają na uzgodnienie siatki współrzędnych obrazka wejściowego z obrazkiem referencyjnym. Dopiero wtedy możliwe jest odjecie obu obrazów, wyszukanie obiektów zmiennych i ich fotometria. Realizują tę procedurę kolejne trzy programy.
aga - podstawowy program wykonujący odjęcia obrazów wywolanie: aga parameter_file mask_image reference_image image_names_file parameter_file - plik z parametrami (opis w dodatku C1) mask_image - plik z maską pikseli możliwość zamaskowania złych pikseli reference_image - wycinek SUPERTEMPLATE, od którego będziemy odejmować wycinki kolejnych obrazków image_names_file - plik z listą obrazków do odjęcia getvar - filtr do selekcji obiektów zmiennych na odjętych obrazkach. Program zapisuje dane znalezionych obiektów zmiennych w binarnej bazie danych. UWAGA: program dodatkowo tworzy tymczasowy plik (tekstowy) ze współrzędnymi obiektów zmiennych, nazwa pliku jest ustalana w pliku param_file wywolanie: getvar param_file ref_image psf_fit_file image_data_list variable_catalog x0_off y0_off param_file - plik z parametrami (opis w dodatku C1) ref_image - wycinek SUPERTEMPLATE psf_fit_file - plik z modelem PSFu gwiazd na ref_image image_data_list - plik zawierający trzy listy: obrazki odjęte, obrazki nieodjęte i pliki zawierające współczynniki jądra splotu (s_mrnnnnnr.fts mrnnnnnr.fts mrnnnnnr.ker) variable_catalog - plik wyjściowy: baza danych (FIELD.cat) zawierająca dane znalezionych gwiazd zmiennych x0_off - przesunięcie w X lewego brzegu wycinka względem dużego obrazka y0_off - przesunięcie w Y dolnego brzegu wycinka względem dużego obrazka phot - wczytuje plik ze współrzędnymi X Y obiektów zmiennych znalezionych przez getvara i wykorzystując znaleziony wcześniej PSF oblicza dla każdego obrazka fotometrie obiektów zmiennych. wywolanie: phot param_file ref_image psf_fit_file image_data_list var_coords_file phot_database parameter_file - plik z parametrami (opis w dodatku C1) ref_image - wycinek SUPERTEMPLATE psf_fit_file - plik ze współczynnikami PSFu image_data_list - plik zawierający trzy listy: obrazki odjęte, obrazki nieodjęte i pliki zawierające współczynniki jądra splotu (s_mrnnnnnr.fts mrnnnnnr.fts mrnnnnnr.ker) var_coords_file - plik ze współrzędnymi obiektów do fotometrii, zazwyczaj var.coo phot_database - plik wyjściow: baza danych (FIELD.db) przechowująca fotometrie kolejnych obiektów, w kolejności odpowiadającej plikowi FIELD.cat Programy podobnie jak w Make_template potrzebują parametrów wejściowych, dla nowych programów aga, getvar i phot opisane są one w dodatku C1. SCHEMAT DZIAŁANIA SKRYPTU: Podobnie jak podczas tworzenia obrazka referencyjnego każdy obrazek wejściowy jest dzielony na nx x ny wycinków (w przypadku OGLE-II, na 4x64=256, rozmiar wycinka został dobrany tak, aby zminimalizować zmienność kształtu
PSF-u w obu osiach). Sąsiednie wycinki nakładają się na siebie (w OGLE-II z marginesem 14 pikseli), nie ma to jednak wpływu na ostateczne wyniki, a wykryte zmienne obiekty nie powtarzają się na listach dla kolejnych wycinków. Zanim możliwe będzie odjęcie obrazów konieczne jest uzgodnienie siatek pikseli. Jest to procedura taka sama jak podczas tworzenia obrazka referencyjnego. Tak więc dla każdej sekcji powtarzane są punkty a) h) tak jak w skrypcie Make_template. Ale UWAGA tym razem lista tplimages.txt zastąpiona jest listą images.txt zawierającą wszystkie analizowane obrazki. Następnie dla danego wycinka wykonywane są poniższe kroki: a) program aga oblicza jądro przekształcenia pomiędzy obrazkiem referencyjnym a analizowanym, dokonuje splotu obrazka referencyjnego z otrzymaną funkcją i odejmuje obrazki od siebie. Jądro splotu zostaje zapisane w pliku mrnnnnnr.ker, a wynik odjęcia w pliku s_mrnnnnnr.fts b) następnie program getvar poszukuje obiektów zmiennych na odjętych obrazkach, potrzebuje ciągu obrazków odjętych (s_mrnnnnnr.fts), ciągu obrazków nieodjętych (mrnnnnnr.fts) dla określenia poziomu tła oraz plików mrnnnnnr.ker dla splotu PSF c) gdy obiekty zmienne zostaną wykryte wykonywana jest ich przybliżona fotometria na obrazku referencyjnym w celu określenia poziomu sygnału stałego (DC). Należy podkreślić, że fotometria ta jest mało wiarygodna, ponieważ nie jest odejmowany wkład sąsiednich gwiazd. Sygnał stały powinien być uzyskiwany przez pomiar jasności gwiazd na obrazku referencyjnym za pomocą innych programów (np. DoPhota). d) współrzędne obiektów zmiennych i ich fotometria zapisana zostaje do binarnego pliku FIELD.cat w następującym formacie: x - pozycja X gwiazdy na SUPERTEMPLATE y - pozycja Y gwiazdy na SUPERTEMPLATE p_flux - strumień profilowy na obrazku referencyjnym w X,Y p_err - błąd strumienia profilowego a_flux - strumień aperturowy na obrazku referencyjnym w X,Y a_err - błąd strumienia aperturowego bg - poziom tła chi2 - χ 2 na piksel dla dopasowania PSF (bez modelowania sąsiadów) corr - współczynnik korelacji z PSF vtype - typ zmienności nframes - liczba wykorzystanych obrazków dla określenia centroidu obiektu flag - flaga określająca stopień izolacji obiektu Dodatkowo współrzędne X Y obiektów zmiennych przechowane zostają w pliku ASCII (var.coo). e) w końcu program phot wykonuje fotometrię profilową i aperturową na ciągu obrazków odjętych, parametry PSF pobrane są z pliku, np. psf_2_16.bin, wynik fotometrii w postaci sygnału różnicowego (AC) zostaje zapisany do pliku FIELD.db w następującym formacie: p_flux p_err a_flux a_err bg chi2 corr chi2_im fwhm nbad - strumień profilowy na kolejnym obrazku odjętym - błąd strumienia profilowego - strumień aperturowy na kolejnym obrazku odjętym - błąd strumienia aperturowego - poziom tła - χ 2 na piksel dla dopasowania PSF - współczynnik korelacji z PSF - χ 2 na piksel dla odjęcia całego obrazka - szerokość połówkowa profilu PSF na obrazku - liczba złych pikseli w promieniu dopasowania
DODATEK A skrypt Find_shifts #!/bin/tcsh -f set DATA_DIR = "/home/ulens/data1/user/dumps" set WORK_DIR = "/home/ulens/data1/user/reds" set refim = "mr10000" cd $WORK_DIR awk '{printf"%scr.fts\n",$1}' images.txt >! crossimages.txt set images = ` cat images.txt ` echo CUTFITS wycinanie subframe'ów foreach im ( $images ) echo $im super_cutfits ${DATA_DIR}/${im}.fts ${im}cr.fts 1 2048 2049 6144 end echo CROSS liczenie przesunięć cross cross.par "${refim}cr.fts" -f crossimages.txt >! shifts.txt echo RM usuwamy zbędne pliki \rm mr*cr.fts echo DONE exit 0 Zmienne i pliki wykorzystywane przez skrypt: DATA_DIR WORK_DIR refim im ścieżka dostępu do katalogu z danymi ścieżka dostępu do katalogu roboczego numer obrazka względem którego liczymy przesunięcia zmienna przechowująca numer aktualnie analizowanego obrazka images.txt lista obrazków crossimages.txt lista wycinków shifts.txt plik z przesunięciami o formacie: mr10001cr.fts 10 +24 cross.par plik z parametrami
DODATEK A1 opis plików z parametrami dla skryptu Find_shifts cross.par X_NBIN = 16 - stopień w jakim obrazek jest binowany dla wstępnego oszacowania przesunięcia, dla osi X Y_NBIN = 16 - to samo dla osi Y NX_CUT = 128 - rozmiar w X wycinka ze środka obrazka dla ostatecznego określenia przesunięcia NY_CUT = 128 - to samo dla osi Y SAT_LEVEL = 32000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry BKG_FRAC = 0.5 - określa w którym miejscu posortowanego rozkładu bierzemy piksel dla określenia tła, 0.5 oznacza medianę VERBOSE = 0-0 brak informacji na ekranie, 1 podaje informacje na ekran OUTFNAME = crf - nazwa pliku gdzie zapisana jest funkcja cross-korelacyjna
DODATEK B skrypt Make_template #!/bin/tcsh -f set DATA_DIR = "/home/ulens/data1/user/dumps" set WORK_DIR = "/home/ulens/data1/user/reds" set FIELD = "lmc_sc4" set refim = "mr10001" cd $WORK_DIR echo PRZYGOTOWANIE LIST Z NAZWAMI PLIKÓW echo >! trimfiles.txt awk '{printf"%sr.fts\n",$1}' tplimages.txt >! stackimages.txt set nx = 512 set ny = 128 set nx0 = 2048 set ny0 = 8192 set edge = 5 set marg = 14 @ xload = $nx0 / $nx @ yload = $ny0 / $ny @ nxw = $nx + 2 * $marg @ nyw = $ny + 2 * $marg set images1 = ` cat tplimages.txt ` set images2 = ` cat tplimages.txt fgrep -v ${refim} ` echo NUMER WYCINKA, OD KTÓREGO ZACZYNAMY OBLICZENIA set ix = 1 set iy = 1 echo PĘTLA GŁÓWNA PO 6x64=256 WYCINKACH while( $iy <= $yload ) while( $ix <= $xload ) set prefix = "${ix}_${iy}" @ xl = 1 + $nx * ($ix - 1) - $marg @ xu = $nx * $ix + $marg @ yl = 1 + $ny * ($iy - 1) - $marg @ yu = $ny * $iy + $marg echo SZUKANIE GWIAZD NA KOLEJNYCH OBRAZKACH foreach im ( $images1 ) end set arg = ` fgrep ${im} shifts.txt ` @ n11 = $xl - $arg[2] @ n12 = $xu - $arg[2] @ n21 = $yl - $arg[3] @ n22 = $yu - $arg[3] echo ${im}: $n11 $n12 $n21 $n22 super_cutfits ${DATA_DIR}/${im}.fts ${im}c.fts $n11 $n12 $n21 $n22 sfind sfind.par ${im}c.fts ${im}c.coo echo PLIK refim USHORT > FLOAT ushort2float ${refim}c.fts ${refim}r.fts -min 1.0
echo xymatch PORÓWNANIE POZYCJI GWIAZD foreach im ( $images2 ) echo $im set failed = 0 set nstars = ` wc ${im}c.coo ` if( $nstars[1] < 10 $status!= 0 ) then set pname = "sfind or wc" set corr = `xymatch xymatch.par ${refim}c.coo ${im}c.coo ${im}c.match` set pname = "xymatch" echo shifts: $corr echo POPRAWKA GDY SHIFT WIĘKSZY NIZ WARTOŚĆ edge if( $corr[1]>$edge $corr[2]>$edge \ $corr[1]<-$edge $corr[2]<-$edge ) then set arg = ` fgrep ${im} shifts.txt ` @ n11 = $xl - $arg[2] + $corr[1] @ n12 = $xu - $arg[2] + $corr[1] @ n21 = $yl - $arg[3] + $corr[2] @ n22 = $yu - $arg[3] + $corr[2] echo nn: $n11 $n12 $n21 $n22 super_cutfits ${DATA_DIR}/${im}.fts ${im}c.fts $n11 $n12 $n21 $n22 sfind sfind.par ${im}c.fts ${im}c.coo set nstars = ` wc ${im}c.coo ` if( $nstars[1] < 10 $status!= 0 ) then set pname = "sfind or wc" xymatch xymatch.par ${refim}c.coo ${im}c.coo ${im}c.match set pname = "xymatch" echo OBLICZENIE WSPÓŁCZYNNIKÓW TRANSFORMACJI SIATKI PIKSELI xygrid xygrid.par ${im}c.match ${im}c.coeff set pname = "xygrid" echo PRZESUNIĘCIE SIATKI PIKSELI TAK ABY POKRYWAŁA SIĘ Z refim resample resample.par ${im}c.coeff ${im}c.fts ${im}r.fts
set pname = "resample" echo PROCEDURA AWARYJNA FAKE: echo WSPOŁRZĘDNE POZA OBRAZKIEM @ n11 = -$nxw @ n12 = -1 @ n21 = -$nyw @ n22 = -1 end if( $failed!= 0 ) then echo $pname failed, preparing fake image ${im}r.fts super_cutfits ${refim}r.fts ${im}r.fts $n11 $n12 $n21 $n22 echo KONIEC PĘTLI DLA OBRAZKÓW echo DODANIE OBRAZKÓW mstack mstack.par stackimages.txt ref_${prefix}.fts @ xl = 1 + $marg @ xu = $nx + $marg @ yl = 1 + $marg @ yu = $ny + $marg echo PRZYCINAMY STWORZONY WYCINEK TEMPLATE super_cutfits ref_${prefix}.fts trim_${prefix}.fts $xl $xu $yl $yu echo trim_${prefix}.fts >> trimfiles.txt echo ECHO OBLICZENIE WSPÓŁCZYNNIKÓW PSF NA DANYM WYCINKU getpsf getpsf.par ref_${prefix}.fts psf_${prefix}.bin echo: getpsf failed for ref_${prefix}.fts @ ix += 1 end @ ix = 1 @ iy += 1 end echo KONIEC PĘTLI PO WYCINKACH template trimfiles.txt tpl_${field}.fts $xload $yload \rm trim_*.fts exit 0 Zmienne i pliki wykorzystywane przez skrypt: DATA_DIR WORK_DIR refim xload yload nx0 ścieżka dostępu do katalogu z danymi ścieżka dostępu do katalogu roboczego numer obrazka względem którego liczymy przesunięcia ilość wycinków w X ilość wycinków w Y rozmiar X całego obrazka FITS
ny0 nx ny ix iy edge marg images1 images2 corr n11 n12 n21 n22 im rozmiar Y całego obrazka FITS rozmiar X wycinka rozmiar Y wycinka index X aktualnie analizowanego wycinka index Y aktualnie analizowanego wycinka maksymalne przesunięcie nie podlegające korekcie margines dla wycinka zmienna zawierająca zawartość pliku tplimages.txt to samo co w images1, ale bez numeru obrazka refim zmienna zawiera przesunięcia obliczone przez xymatch współrzędna X1 wycinka współrzędna X2 wycinka współrzędna Y1 wycinka współrzędna Y2 wycinka zmienna przechowująca numer aktualnie analizowanego obrazka tplimages.txt shifts.txt stackimages.txt trimfiles.txt lista obrazków, z których powstanie wycinek SUPERTEMPLATE plik z przesunięciami lista obrazków do dodania przez program mstack lista wycinków do przycięcia i połączenia w jeden SUPERTEMPLATE sfind.par plik z parametrami xymatch.par plik z parametrami xygrid.par plik z parametrami resample.par plik z parametrami mstack.par plik z parametrami getpsf.par plik z parametrami
DODATEK B1 opis plików z parametrami dla skryptu Make_template sfind.par MOHW = 3 - szerokość połówkowa modelu PSF użytego do policzenia funkcji korelacyjnej SIG_X = 1.5 - sigma początkowa dla modelu PSF w osi X SIG_Y = 1.5 - sigma początkowa dla modelu PSF w osi Y C_MIN = 0.7 - minimalna wartość korelacji dla kryterium czy obiekt uznać za gwiazdę SMHW = 4 - szerokość połówkowa obszaru gdzie piksel uznany za środek gwiazdy musi mieć maksymalną wartość APRAD = 1.5 - promień apertury do fotometrii ANRAD1 = 3.0 - wewnętrzny promień pierścienia dla określenia tła ANRAD2 = 7.0 - zewnętrzny promień pierścienia dla określenia tła N_SIG = 2 - kryterium sigma dla czyszczenia rozkładu pikseli w pierścieniu ANRAD MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry SAT_LEVEL = 45000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane SIG_THRESH = 1.3 - jeśli ABS_THRESH jest ujemne to jako THRESHOLD (próg powyżej, którego piksel jest uznawany z gwiazdę) bierzemy SIG_THRESH x σ TŁA ABS_THRESH = -1000.0 - jeśli dodatnie to ta wartość jest brana jako THRESHOLD xymatch.par LLIM = 5.0 - minimalna długość najdłuższego boku trójkąta (w pix.) RLIM = 5.0 - maksymalny stosunek długości boków trójkąta LTOL = 0.5 - przy porównywaniu trójkątów maksymalna dopuszczalna różnica pomiędzy najdłuższymi bokami (w pix.) RTOL = 0.02 - przy porównywaniu trójkątów maksymalna dopuszczalna odstępstwo pomiędzy stosunkami boków (w %). CTOL = 0.02 - przy porównywaniu trójkątów maksymalna dopuszczalna różnica pomiędzy cosinusami kątów (w %). FVNO = 0.2 - jaki odsetek trójkątów ma być zidentyfikowany NSUB = 20 - ile najjaśniejszych gwiazd z obu list ma być wziętych do porównania PTOL = 0.5 - ostateczna tolerancja dla różnic położenia X,Y tych samych gwiazd na dwóch obrazkach (po ostatecznej liniowej transformacji) xygrid.par NDEG = 2 - rząd transformacji wielomianowej SIGMA_F = 2.0 - odrzuca gwiazdy odstające od dopasowania o więcej niż SIGMA_F*σ MAX_NITER = 3 - maksymalna liczba iteracji VERBOSE = 0 - wypisywanie (lub nie) informacji na ekran resample.par FIX_COSMICS = 0 - wykrywacz promieni kosmicznych, wykrywa piksele wystajace o N_SIG_COSMICS ponad medianę z sąsiednich pikseli i jeśli gradient jest ponad MAG_GRAD (funkcja działa niepoprawnie) SAT_LEVEL = 50000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry MAX_GRAD = 2.0 - wartość gradientu dla FIX_COSMICS N_SIG_COSMICS = 15.0 - wielokrotność sigma dla FIX_COSMICS GAIN = 7.1 - wartość GAIN dla CCD (ważne aby użyta była poprawna wartość) FIX_RINGS = 0 - likwidator oscylacji funkcji bicubic spline (wprowadza interpolację liniową funkcja działa niepoprawnie) N_SIG_RINGS = 2.0 - wielokrotność sigma dla FIX_RINGS N_SIG_RM = 2.0 - wielokrotność sigma dla procedury usuwania BAD COLUMN ( IS & KŻ)
GROW_RAD = 0 - określa ile nadmiarowo kolumn uznać za złe oprócz BAD COLUMN mstack.par NX0 = 540 - rozmiar obrazka wejściowego w X NY0 = 156 - rozmiar obrazka wejściowego w Y NY = 156 - rozmiar podsekcji w Y (przydatne gdy dodajemy duży obrazek) HIST_NBIN = 2000 - liczba binów dla histogramu rozkładu pikseli (histogram używany jest do określenia tła) HIST_LOW = 0.0 - minimalna wartość w histogramie HIST_HIGH = 2000.0 - maksymalna wartość w histogramie NBIN_SMOOTH = 6 - współczynnik dla wygładzania histogramu BAD_VALUE = 65000.0 - wartość nadawana pikselowi gdy jest uznany za zły MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry SAT_LEVEL = 45000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane BKG_FRAC = 0.3 - określa które miejsce rozkładu wartości pikseli traktujemy jako tło THRESHOLD = 300.0 - próg dla klasyfikacji pikseli jako gwiazdy MIN_SCALE = 0.5 - minimalna wartość współczynnika skalującego wartość pikseli między analizowanym obrazkiem a obrazkiem referencyjnym MAX_SCALE = 2.0 - maksymalna wartość parametru skalowania MIN_NGOOD = 5 - minimalna liczba obrazków na których piksel ma być dobry aby wykonać dodawanie dla tego piksela VERBOSE = 1 - wypisywanie (lub nie) informacji na ekran NSIG = 5.0 - (chyba nie używane) MEDIAN = 0 - gdy 1 to używa mediany zamiast średniej arytmetycznej przy dodawaniu pikseli (UWAGA: mediany można używać tylko w przypadku gdy na każdym obrazku będziemy mieli te same kształty PSF). FIX_COSMICS = 1 - uaktywnia procedurę usuwania promieni kosmicznych ( IS & KŻ) N_SIG_COSMICS = 100.0 - próg sigma dla detekcji promieni kosmicznych MAX_GRAD = 2.0 - maksymalny gradient dla detekcji promieni kosmicznych getpsf.par NBOX_X = 8 - określa na ile części (BOX) w osi X dzielimy obrazek NBOX_Y = 4 - określa na ile części (BOX) w osi Y dzielimy obrazek NDEG_SPAT = 2 - stopień wielomianu dla zależności przestrzennej PSF (x,y) NDEG_LOCAL = 3 - stopień wielomianów (wchodzących w skład PSF) dla zależności lokalnej (u,v) NGAUSS = 2 - liczb funkcji gaussa użytych do modelowania PSF NPSF_MAX = 100 - maksymalna liczba gwiazd wziętych do modelowania PSF NOBJ_INIT = 128 - początkowa długość listy obiektów MIN_NBOX = 2 - minimalna liczba gwiazd w jednym BOXie MIN_FLUX = 3000.0 - minimalny strumień gwiazdy MAX_THRESH = 500.0 - o ile może być jaśniejszy najjaśniejszy piksel w PSF RAT_THRESH = 0.2 - maksymalny stosunek najjaśniejszego piksela do mediany otaczających pikseli (zabezpieczenie przed cosmic ray) NSIG_DETECT = 2.0 - wielokrotność sigma ponad szum fotonowy dla detekcji gwiazd CONTRAST = 2.0 - współczynnik dla wyboru maksimów NSIG_RAT = 3.0 - PSFHW = 7 - rozmiar rastra dla przechowywania PSF MAXHW = 1 - określa w jakim obszarze piksel musi być maksimum (od MAXHW do MAXHW) PEAKHW = 4 - określa obszar w jakim piksel ma być lokalnym maksimum ISOHW = 3 - obszar w pikselach, w którym gwiazda musi być izolowana ISO_OFF = 0.0 - określa od jakiego FLUX liczy offset (dla badania izolacji gwiazd) ISO_SLO = 0.15 - określa nachylenie OFFSETU (gwiazda może mieć sąsiada o jasności nie przekraczającej DIST(piksele)*ISO_SLO + ISO_OFF pro-
cent swojej jasności) FITRAD = 3.0 - promień w jakim wszystkie piksele są brane do dopasowania APRAD = 3.0 - promień apertury ANRAD1 = 10.0 - promień zewnętrzny pierścienia w którym określamy tło ANRAD2 = 15.0 - promień wewnętrzny pierścienia w którym określamy tło BKG_FRAC = 0.3 - określa które miejsce w rozkładzie w ANRAD uznajemy za tło NSIG_CLIP = 2.0 - sigma dla dopasowania PSF NITER_INIT = 2 - liczba iteracji dla dopasowania ze stałym PSF NITER = 2 - liczba iteracji dla dopasowania ze zmiennym PSF VERBOSE = 1 - wypisywanie (lub nie) informacji na ekran RECENTER = 1 - poprawianie pozycji gwiazdy, gdy 1 to gwiazda jest przesuwana o 0.1pix i ponownie sprawdzane dopasowanie PSF_COS = 1.0 - wartość początkowa współczynnika obrotu PSF-u PSF_SIN = 0.0 - ------------------------------ " ------------------------------- PSF_AX = -0.8 - skala szerokości PSF w X PSF_AY = -0.8 - skala szerokości PSF w Y SIGMA_INC = 0.548 - stosunek sigm w kolejnych funkcjach gaussa tworzących PSF SIGMA_MSCALE = 1.582 - współczynnik skalowania sigma (dla szukania momentów rozkładu) GAIN = 7.1 - wartość GAIN dla CCD (ważne aby użyta była poprawna wartość) SAT_LEVEL = 35000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry
DODATEK C skrypt Pipe #!/bin/tcsh f set DATA_DIR = "/home/sagitta/data2/zebrun/dumps/lmc_sc2" set WORK_DIR = "/home/sagitta/data2/zebrun/reds/lmc_sc2" set FIELD = "lmc_sc2" set refim = "mr10075" cd $WORK_DIR echo PRZYGOTOWANIE LIST Z NAZWAMI PLIKÓW oraz WYZEROWANIE PLIKÓW Z DATABAZAMI awk '{printf"%sr.fts\n",$1}' images.txt >! mrjimages.txt awk '{printf"s_%sr.fts\n",$1}' images.txt >! difimages.txt awk '{printf"s_%sr.fts %sr.fts %sr.ker\n",$1,$1,$1}' images.txt >! photimages.txt echo >! {FIELD}.cat echo >! {FIELD}.db set nx = 512 set ny = 128 set nx0 = 2048 set ny0 = 8192 set edge = 5 set marg = 14 set kerhw = 7 @ xload = $nx0 / $nx @ yload = $ny0 / $ny @ nxw = $nx + 2 * $marg @ nyw = $ny + 2 * $marg echo STWORZENIE MASKI PIKSELI OBECNIE NIE WYKORZYSTANE super_cutfits ONE_ushort.fts blank_ushort.fts 1 $nxw 1 $nyw echo PĘTLA GŁÓWNA PO 6x64=256 WYCINKACH set images1 = ` cat images.txt ` set images2 = ` cat images.txt fgrep -v ${refim} ` echo NUMER WYCINKA, OD KTÓREGO ZACZYNAMY set ix = 1 set iy = 1 while( $iy <= $yload ) while( $ix <= $xload ) set prefix = "${ix}_${iy}" @ xl = 1 + $nx * ($ix - 1) - $marg @ xu = $nx * $ix + $marg @ yl = 1 + $ny * ($iy - 1) - $marg @ yu = $ny * $iy + $marg echo SZUKANIE GWIAZD NA KOLEJNYCH OBRAZKACH foreach im ( $images1 ) set arg = ` fgrep ${im} shifts.txt ` @ n11 = $xl - $arg[2] @ n12 = $xu - $arg[2] @ n21 = $yl - $arg[3] @ n22 = $yu - $arg[3] echo ${im}: $n11 $n12 $n21 $n22
end super_cutfits ${DATA_DIR}/${im}.fts ${im}c.fts $n11 $n12 $n21 $n22 sfind sfind.par ${im}c.fts ${im}c.coo echo PLIK refim USHORT > FLOAT ushort2float ${refim}c.fts ${refim}r.fts -min 1.0 echo xymatch PORÓWNANIE POZYCJI GWIAZD foreach im ( $images2 ) echo $im set failed = 0 set nstars = ` wc ${im}c.coo ` if( $nstars[1] < 10 $status!= 0 ) then set pname = "sfind or wc" set corr = `xymatch xymatch.par ${refim}c.coo ${im}c.coo ${im}c.match` set pname = "xymatch" echo shifts: $corr echo POPRAWKA GDY SHIFT WIĘKSZY NIZ WARTOŚĆ edge if( $corr[1]>$edge $corr[2]>$edge \ $corr[1]<-$edge $corr[2]<-$edge ) then set arg = ` fgrep ${im} shifts.txt ` @ n11 = $xl - $arg[2] + $corr[1] @ n12 = $xu - $arg[2] + $corr[1] @ n21 = $yl - $arg[3] + $corr[2] @ n22 = $yu - $arg[3] + $corr[2] echo nn: $n11 $n12 $n21 $n22 super_cutfits ${DATA_DIR}/${im}.fts ${im}c.fts $n11 $n12 $n21 $n22 sfind sfind.par ${im}c.fts ${im}c.coo set nstars = ` wc ${im}c.coo ` if( $nstars[1] < 10 $status!= 0 ) then set pname = "sfind or wc" echo correction: xymatch xymatch.par ${refim}c.coo ${im}c.coo ${im}c.match set pname = "xymatch" echo OBLICZENIE WSPÓŁCZYNNIKÓW TRANSFORMACJI SIATKI PIKSELI xygrid xygrid.par ${im}c.match ${im}c.coeff
set pname = "xygrid" echo PRZESUNIĘCIE SIATKI PIKSELI TAK ABY POKRYWAŁA SIĘ Z refim resample resample.par ${im}c.coeff ${im}c.fts ${im}r.fts set pname = "resample" echo PROCEDURA AWARYJNA FAKE: echo WSPÓŁRZĘDNE POZA OBRAZKIEM @ n11 = -$nxw @ n12 = -1 @ n21 = -$nyw @ n22 = -1 if( $failed!= 0 ) then echo $pname failed, preparing fake image ${im}r.fts super_cutfits ${refim}r.fts ${im}r.fts $n11 $n12 $n21 $n22 end echo KONIEC PĘTLI DLA OBRAZKÓW echo PROCEDURA ODEJMOWANIA OBRAZÓW set failed = 0 aga aga.par blank_ushort.fts ref_${prefix}.fts mrjimages.txt set pname = "aga" goto "CRASH" @ xl -= 1 @ yl -= 1 echo POCZĄTEK WYSZUKIWANIA OBIEKTOW ZMIENNYCH echo offsets $xl $yl getvar getvar.par ref_${prefix}.fts psf_${prefix}.bin photimages.txt \ ${FIELD}.cat $xl $yl set pname = "getvar" goto "CRASH" echo FOTOMETRIA WYKRYTYCH OBIEKTÓW phot phot.par ref_${prefix}.fts psf_${prefix}.bin photimages.txt \ var.coo ${FIELD}.db set pname = "phot" goto "CRASH" echo KOMUNIKAT O NIEPOWODZENIU ODEJMOWANIA CRASH: if( $failed!= 0 ) then echo "CRASH for section [${ix},${iy}]; program: $pname "
if( $status == 0 ) then echo "completed section [${ix},${iy}]" @ ix += 1 end @ ix = 1 @ iy += 1 end echo KONIEC PĘTLI PO WYCINKACH exit 0 Zmienne i pliki wykorzystywane przez skrypt: DATA_DIR WORK_DIR refim xload yload nx0 ny0 nx ny ix iy edge marg images1 images2 corr n11 n12 n21 n22 im var.coo images.txt shifts.txt mrjimages.txt diffimages.txt photimages.txt ścieżka dostępu do katalogu z danymi ścieżka dostępu do katalogu roboczego numer obrazka względem którego liczymy przesunięcia ilość wycinków w X ilość wycinków w Y rozmiar X całego obrazka FITS rozmiar Y całego obrazka FITS rozmiar X wycinka rozmiar Y wycinka index X aktualnie analizowanego wycinka index Y aktualnie analizowanego wycinka maksymalny dopuszczalne przesunięcie nie podlegające korekcji margines dla wycinka zmienna zawierająca zawartość pliku tplimages.txt to samo co w images1, ale bez numeru obrazka refim zmienna zawiera przesunięcia obliczone przez xymatch współrzędna X1 wycinka współrzędna X2 wycinka współrzędna Y1 wycinka współrzędna Y2 wycinka zmienna przechowująca numer aktualnie analizowanego obrazka tymczasowa lista tworzona przez getvar, z pozycjami obiektów do fotometrii lista wszystkich analizowanych obrazków plik z przesunięciami lista z nazwami plików przetransformowanych przez resample (mrnnnnnr.fts) lista z nazwami plików odjętych (o nazwach s_mrnnnnnr.fts) lista o formacie: s_mrnnnnnr.fts mrnnnnnr.fts mrnnnnnr.ker sfind.par plik z parametrami xymatch.par plik z parametrami xygrid.par plik z parametrami resample.par plik z parametrami aga.par plik z parametrami getvar.par plik z parametrami phot.par plik z parametrami
DODATEK C1 opis plików z parametrami dla skryptu Pipe Parametry programów cross, sfind, xymatch, xygrid i resample opisano w dodatkach A1 i B1. Poniżej pliki parametrowe dla pozostałych programów. aga.par NX_0 = 540 - rozmiar w X obrazka wejściowego NY_0 = 156 - rozmiar w Y obrazka wejściowego NX = 526 - rozmiar w X po odjęciu 2 x KER_HW NY = 142 - rozmiar w Y po odjęciu 2 x KER_HW KER_HW = 7 - szerokość połówkowa jądra splotu N_COMP = 3 - liczba składowych jądra splotu (Gaussów modyfikowanych wielomianami) DEG_1 = 4 - stopień pierwszego wielomianu SIG_GAUSS_1 = 0.78 - sigma dla pierwszego gaussa DEG_INC = -1 - stopnie kolejnych wielomianów tworzących jądro splotu będą zmieniały się o DEG_INC SIG_GAUSS_INC = 1.732 - sigmy kolejnych funkcji Gaussa tworzących jądro splotu będą się zmieniały SIG_GAUSS_INC razy BKG_DEG = 1 - stopień wielomianu opisującego zależność tła od X,Y (gdy duże gradienty można ustawić większą wartość) GAIN = 7.1 - wartość GAIN dla CCD (ważne aby podać dobra wartość) MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry SAT_LEVEL = 40000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane BAD_VALUE = 65000.0 - wartość nadawana pikselowi gdy jest uznany za zły BAD_GROWRAD1 = 7 - na obrazku referencyjnym: obszar o rozmiarach BAD_GROWRAD1 wokół złego piksela uznawany jest za zły BAD_GROWRAD2 = 2 - to samo dla obrazka odjętego MIN_AREA = 0.4 - minimalny procent obszaru obrazka nie zawierający BAD_VALUE aby wykonać odjęcie MAX_NITER = 1 - maksymalna liczba iteracji dla czyszczenia rozkładu pikseli w domenie N_SIG = 3.0 - wielokrotność sigma dla czyszczenia rozkładu pikseli w domenie MAX_CHI2 = 8.0 - dopuszczalne χ 2 wokół dopasowania aby odjęcie uznać za poprawne VERBOSE = 2 - wypisywanie informacji na ekran, od 0 do 4 WDEG_SPATIAL = 2 - stopień wielomianu zależności przestrzennej DOM_HW = 11 - szerokość połówkowa wokół gwiazdy dla domeny NDOM_X = 20 - liczba domen w X, na które dzielimy obrazek NDOM_Y = 10 - liczba domen w Y, na które dzielimy obrazek DOM_THRESH = 500.0 - minimalna jasność nad tło dla gwiazdy na którą centrujemy domenę (jej centralny piksel) N_SIG_DOM = 2.0 - wartość sigma dla czyszczenia rozkładu domen DOMAIN_MODE = 1 - tryb podziału na domeny, 1 centrowane na jasne gwiazdy, 0 równo oddalone MOHW = 2 - szerokość połówkowa dla szukania domen wokół jasnych gwiazd N_ITER_DOM = 2 - ile iteracji aby określić rozkład domen MIN_AREA_DOM = 0.75 - procent domeny zawierający dobre piksele aby uznać domenę za dobrą MIN_NKEEP = 50 - ile musi być domen aby uznać, że istnieje rozwiązanie
getvar.par phot.par APRAD = 3.0 - promień apertury FITRAD = 3.0 - promień dla fotometrii profilowej NORMRAD = 6.0 - promień w którym PSF jest normalizowany ANRAD1 = 7.0 - wewnętrzny promień pierścienia, w którym określamy tło ANRAD2 = 12.0 - zewnętrzny promień pierścienia BKG_MODE = 1 - tryb określania tła, gdy 1 to liczy tło na obrazku różnicowym korzystając z ANRAD, gdy 0 zakłada tło jako 0.0 NSIG_BKG = 2.0 - wielokrotność sigma dla czyszczenia rozkładu pikseli, gdy określamy poziom tła SAT_LEVEL = 35000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry BAD_VALUE = -99.0 - wartość podawana gdy nie da się policzyć fotometrii GAIN = 2.77 - wartość GAIN dla CCD (tu wartość zafałszowana, tak aby wartość χ 2 była bliskie 1) EXPTIME = 10.0 - czas ekspozycji ERR_CODE = 65000.0 - wartość nadawana pikselom uznanym za złe VERBOSE = 0 - wypisywanie (lub nie) informacji na ekran SMHW = 1 - obszar w jakim poszukiwane jest lokalne maksimum MOHW = 2 - model PSF wykorzystany do sprawdzenia zmienności C_MIN = 0.7 - wartość korelacji w jakiej grupa pikseli ma przypominać PSF NOBJ_INIT = 64 - początkowa długość tablicy zmiennych ID_RAD = 2.0 - promień dla identyfikacji gwiazd na listach transient i sinusoidal NCONS_VAR1 = 3 - minimalna ilość kolejno odstających punktów na krzywej zmienności aby piksel uznać za zmienny NPTS_VAR2 = 10 - minimalna liczba punktów na krzywej blasku ostających w jedną stronę aby pikselowi nadać typ zmienności transient NSIG_VAR1 = 3.0 - próg sigma dla wykrywania zmiennych NSIG_VAR2 = 4.0 - próg sigma dla wykrywania zmiennych transient LIM_RATIO = 2.0 - próg dla wartości stosunku punktów w kanale transient i sinusoidal, wartość dla kryterium klasyfikacji gwiazdy jako dany typ ISOHW = 4 - obszar w pikselach, w którym gwiazda musi być izolowana ISO_OFF = 0.0 - określa od jakiego FLUX liczy offset (dla badania izolacji gwiazd) ISO_SLO = 0.15 - określa nachylenie OFFSETU, gdy ISO_OFF=0.0 i ISO_SLO=0.0 to gwiazda nie może mieć jakichkolwiek sąsiadów BAD_MARGIN = 14.0 - margines, aby nie powtarzały się gwiazdy na kolejnych wycinkach CENTER_HW = 4 - szerokość połówkowa kawałka obrazka scentrowanego na gwieździe FILTER_HW = 1 - szerokość połówkowa dla filtru FWHM_FRAC = 0.9 - procent obrazków posortowanych względem rosnącego seeingu, wykorzystany do badania zmienności, odrzucane są najgorsze TMP_FILE = var.coo - nazwa pliku, w którym przechowane będą współrzędne zmiennych do fotometrii dla programu phot APRAD = 4.0 - promień apertury FITRAD = 3.0 - promień dla fotometrii profilowej NORMRAD = 6.0 - współczynnik normalizowania PSF ANRAD1 = 6.0 - wewnętrzny promień pierścienia, w którym określamy tło ANRAD2 = 7.0 - zewnętrzny promień pierścienia BKG_MODE = 0 - tryb określania tła, gdy nie 0 to liczy tło korzystając z ANRAD NSIG_BKG = 2.0 - sigma dla czyszczenia rozkładu pikseli SAT_LEVEL = 45000.0 - poziom zliczeń od którego piksele traktujemy jako przesaturowane MIN_LEVEL = 1.0 - minimalna liczba zliczeń potrzebna aby piksel uznać za dobry BAD_VALUE = -99.0 - wartość gdy nie uda się określić fotometrii GAIN = 2.77 - wartość GAIN dla CCD (tu wartość zafałszowana, podobnie jak w getvar)
EXPTIME = 10.0 - czas ekspozycji ERR_CODE = 65000.0 - taką wartość nadajemy złym pikselom VERBOSE = 0 - wypisywanie informacji na ekran