티스토리 뷰

Tools for Aperture Photometry of a transiting Exoplanet (TAPE)  

 

덕흥천문대의 1m 광학망원경을 이용하여 얻어진 이미지를 읽어서, 일괄 전처리하고, 별을 찾아 이미지 정렬과 구경 측광(aperture photometry)을 통해 시간에 따른 대상의 밝기 변화를 도출하는 도구입니다.

 

별의 이미지로부터 별의 밝기를 정량적으로 측정하는 과정은 CCD 카메라의 원리에 대한 이해가 선행되어야 합니다. 따라서 덕흥천문대에서는 CCD 카메라로 얻어진 이미지가 가지고 있는 특성을 이해하고, 이미지 속 별의 밝기를 정량적으로 측정하기 위한 이미지 처리 방법을 교육하고 있습니다. 별의 밝기를 정량적으로 측정하여 다양한 연구를 수행하고자 하는 청소년은 국립청소년우주센터에서 진행하는 청소년 원격관측 모집에 참여하면 해당 교육을 받을 수 있습니다.

 

*** TAPE 다운로드 링크 및 방법 : https://github.com/psychiee/TAPE

0. tape.par 

측광에 관련된 인수들을 설정하는 파일입니다. 내용은 다음과 같습니다. 

WORKDIR   ./180326-HAT-P-12b
BINNING   1            # (APPHOT) BINNING option of CCD images for processing
STARBOX   40           # (APPHOT) box half-size for photometry [pixel]
THRES     5            # (APPHOT) n-sigma threshold for finding stars
FWHMCUT   3,20         # (APPHOT) FWHM lower/upper limit for filtering non-stars [pixel]
SATU      60000        # (APPHOT) saturation level limit for filtering [ADU]
PHOTAPER  10,20,30     # (APPHOT) (CSV) apertures for photometry [pixel] (csv)
SKYANNUL  30,34        # (APPHOT) (CSV) sky-annulus for background [pixel]
SUBPIXEL  1            # (APPHOT) the division number for subpixel method
EGAIN     1.0          # (APPHOT) the gain of CCD for error estimation
PSCALE    0.464        # (APPHOT) pixel scale in stellar profile plot 0.3867,0.464
STARPLOT  0            # (APPHOT) (BOOL) plotting the diagram for each star
LOGFILE   wobs.log     # (APPHOT) log file name for LC processing
APERUSED  2            # (TIMESERIES) index of aperture(in PHOTAPER) for LC
SHIFTPLOT 1            # (TIMESERIES) flag for plotting all shift-images
OBSDATE   180326       # (TIMESERIES) observation date
TARGETNAM HAT-P-12b    # (TIMESERIES) target name
TARGETNUM 13           # (TIMESERIES) target star numbers in finding-chart
COMPNUMS  10,17,22     # (TIMESERIES) (CSV) comparison star numbers
CHKSIG    0.02         # (TIMESERIES) STD checking criteria for LC test
CHKDELM   3            # (TIMESERIES) DEL_MAG checking criteria for LC test
OBSLAT    34.5261362   # The latitude[deg] of the observatory (for HJD)
OBSLON    127.4470482  # The longitude[deg] of the observatory (for HJD)
OBSELEV   81.35789     # The elevation[m] of the observatory (for HJD)

WORKDIR; NYSC 1m 망원경으로 관측된 관측 파일이 저장된 폴더 위치 입니다. (bias, dark, flat, object-*.fits)

BINNING; 촬영시에 사용한 BINNING 설정을 적습니다. 대부분 BINNING을 하지 않기에 1로 설정해두시면 됩니다.

STARBOX; 측광을 위해 별 중심에서 특정 영역의 이미지를 잘라냅니다. 그 잘라내는 이미지 영역의 크기를 결정합니다.

  ** 이 값은 SKYANNUL 값보다 커야 합니다.

THRES; 이미지에서 찾아낼 별의 밝기 기준을 배경 하늘의 표준편차 값에 대한 비율로 넣습니다.

  ** 만약 배경의 표준편차가 30이고, THRES가 5라면 픽셀 값이 150보다 큰 영역을 별로 인식합니다.

  ** 측광을 원하는 대상이 어두운 대상일 경우, 이 숫자를 너무 크게 하면 해당 별이 찾아지지 않아 측광이 안될 수도 있습니다.

FWHMCUT; 별인지 아닌지 구분하기 위한 인수입니다. 크기가 앞의 값보다 작거나, 뒤의 값보다 크면 별이 아니기에 측광에서 제외합니다.

SATU; 해당 수치 이상의 픽셀 값을 가지는 별은 측광에서 제외합니다.

PHOTAPER; 별의 밝기를 측정하기 위한 동그라미(aperture)의 반경을 결정합니다.

SKYANNUL; 배경하늘을 밝기를 결정하기 위한 영역을 설정합니다.(안쪽 반경, 바깥 반경)

SUBPIXEL; 해당 수 만큼 픽셀을 잘개 쪼개 더 정밀한 구경측광을 수행할 수 있습니다. 보통 사용하지 않기에 1로 놓습니다.

LOGFILE; 측광을 수행하면서, 각 이미지 별 정보를 여기서 정한 로그파일에 저장합니다.

STARPLOT; 측광 시에, 각 별의 맞춤 통계를 출력할 수 있습니다. 2차원 맞춤 결과 등을 확인할 수 있습니다.

 **  1로 셋팅할 경우, 그림을 매우 많이 만들어내기에 처리 속도가 매우 느려집니다.

PSCALE; 각 별의 정보 출력시, 별의 크기를 결정하기 위한 변수입니다. 이미지 픽셀당 각크기를 나타냅니다.

APERUSED; 위에서 정한 여러 개의 구경(PHOTAPER) 값 중에서 어떤 구경을 사용한 결과를 사용할지 결정합니다.

SHIFTPLOT; 1로 셋팅하면 별을 매칭한 결과를 확인할 수 있는 이미지를 출력합니다.

OBSDATE, TARGETNAM; 두 인수는 결과 출력 파일명을 결정하기 위한 인수입니다.(관측일과 대상명)

TARGETNUM; finding-chart 이미지에서 밝기 변화를 검출하고자 하는 대상 별의 번호를 입력합니다.

COMPNUMS; 대상 별의 밝기변화를 검출하기 위한 비교성 번호를 넣어줍니다.

  ** 비교성을 자동으로 골라주는 04-chek_comps 코드를 실행하여, 적절한 비교성을 찾고 그 번호를 여기 넣어주면 됩니다.

CHKSNR; 비교성을 자동으로 골라주는 코드가 각 별에 대한 대상의 밝기 변화 곡선을 그릴 때, 너무 잡음이 심한 것들을 골라내기 위한 인수입니다.

  ** 04-check_comps 코드가 실행되었음에도, 결과물 갯수가 너무 적다면 이 수치를 높이고, 너무 많다면 줄여서 조절 가능합니다.

CHKDELM; 비교성을 자동으로 골라주는 코드가 각 별에 대한 밝기 변화 곡선을 그릴 때, 너무 밝기 차이가 나는 것을 골라내기 위한 인수입니다.

  ** 여기서 정한 등급보다 더 크게 차이가 나는 어두운 별들은 비교성 골라주는 과정에서 제외합니다.

OBSLAT, OBSLON, OBSELEV; 정확한 HJD를 구하기 위한 관측장소의 위도, 경도, 높이 값을 입력합니다.

  ** 정확한 트랜짓 시각을 구한 것이므로, 잘 모르면 대략적인 값을 넣어도 됩니다.

1. 01-run_ccdproc.py 

첫번째로, 폴더 내에 있는 파일을 자동으로 읽어서, 

bias, dark, flat, object 등의 파일 목록을 생성합니다. (NYSC 1m 망원경 FITS header 규칙을 따릅니다.) 

>> wbias.list, wdarkXXXs.list, wflatYYY.list, wobj.list 

 

bias combine, dark combine, flat combine을 수행합니다. 

flat의 경우, 중간값으로 표준화한 이미지를 쌓고, 그 이미지들의 중간값 이미지를 대표 이미지로 저장합니다. 

 

그러면 결과물로 다음 파일들이 생성됩니다. 

>> wbias.fits, wdarkXXXs.fits, wflatYYY.fits, wobject-ZZZZZZ.fits 

 

2. 02-run_photometry.py 

wobj.list 안에 있는 파일들을 대상으로, 구경측광을 수행합니다. 

혹시 구경 측광을 수행하지 않아도 되는 이미지가 있다면, wobj.list 파일을 수정하시면 됩니다. 

 

결과물로 다음과 같은 파일이 생성됩니다. 

>> wobject-ZZZZZZ-phots.png (측광결과 이미지 파일), wobject-ZZZZZZ.apw (측광정보 파일)

>> wobs.log (측광 이미지 정보 로그 파일)

  ** LOGFILE 인수와 동일한 파일을 생성합니다. 이 안에는 파일명, 관측시간, HJD, 노출시간 등의 정보가 저장됩니다.

 

여기서 얻어진 측광 결과(*.apw) 파일을 이용해서 밝기 변화 측정 외의 다양한 작업을 수행하실 수 있습니다. 

[X좌표, Y좌표, flux1, flux2, flux3, flux_err1, flux_err2, flux_err3, mag1, mag2, mag3, mag_err1, mag_err2, mag_err3, sky_bgd, fwhm1, fwhm2, PA]

 1333.275    68.185    18430.109    21985.015    22296.070       11.598       21.715       40.541    9.336    9.145    9.129    0.001    0.001    0.002     3069.573       57.768
 1227.885   108.130      290.996      357.252      379.507        6.579       19.066       39.235   13.840   13.618   13.552    0.025    0.058    0.112     3050.086       57.676
  987.832   285.793      310.045      399.086      430.146        7.032       20.337       41.860   13.771   13.497   13.416    0.025    0.055    0.106     3047.862       61.468
 1157.639   323.942      265.085      323.035      328.316        6.875       19.883       40.981   13.942   13.727   13.709    0.028    0.067    0.136     3053.415       60.576
 1037.649   384.012     5323.814     6237.579     6289.239        8.098       19.126       38.192   10.684   10.512   10.504    0.002    0.003    0.007     3061.289       55.722
 1358.132   402.659      564.652      660.209      683.734        6.657       18.966       38.945   13.121   12.951   12.913    0.013    0.031    0.062     3054.926       57.402
 ...

측광 완료된 별들을 표시한 이미지는 다음과 같습니다.

빨간 점은 THRES 인수에 맞게 찾아낸 별들의 위치이며, 파란 동그라미는 최종적으로 구경 측광이 이루어진 영역을 표시한 것입니다.

측광 결과를 보여주는 이미지.

이후에 이어질 시계열 이미지 측광 처리를 위한, LOGFILE 내용 입니다.

[ 프레임번호, 파일명, 시간(HJD), 노출시간, 투과대기량(AIRMASS) ]

0000 wobject-000115 2458204.09107217   200 1.2289833 R
0001 wobject-000116 2458204.09351428   200 1.2192174 R
0002 wobject-000117 2458204.09591009   200 1.2099276 R
0003 wobject-000118 2458204.09829434   200 1.2009528 R
0004 wobject-000121 2458204.10547021   200 1.1755779 R
...

 

3. 03-make_timeseries.py 

폴더 내에 생성된 측광 결과 파일(.apw)을 이용하여 첫번째 이미지에서 측광된 별들에게 고유번호를 부여하고, 기준이 되는 첫번째 이미지에서 찾아낸 별들을 다른 모든 이미지에서 찾아내 측광 정보를 규격을 맞춘 새로운 파일(.apx)에 저장합니다. 여기서 만들어지는 apx 파일은 모두 동일한 별에 대한 정보를 담고 있기에, 파일의 행이 모두 동일하고 같은 행에는 같은 별의 측광 정보가 저장됩니다.

** 만약 실행 전에 LOGFILE에 있는 특정 이미지 행을 삭제하면, 해당 이미지의 위치 맞춤을 위한 과정을 생략할 수 있습니다.

 

tape.par에 관측정보(OBSDATE, TARGETNAME)를 넣습니다. 여기서는 OBSDATE에 "180326"을 넣고, TARGETNAME에 "HAT-P-12b"를 넣은 후, 이를 실행하면 최종적으로 다음과 같은 결과물을 얻습니다. (시간이 좀 걸립니다.)

>> w180326-HAT-P-12b-shift.png(별의 이동량 그래프), w180326-HAT-P-12b-shift.txt(별의 이동량 저장 파일)

>> wobject-ZZZZZZ-matching.png(별의 이동을 보정한 결과 이미지)

>> wobject-ZZZZZZ.apx(동일한 순서로 모든 별의 측광 결과를 정렬한 이미지, 모든 파일의 행 수가 동일합니다.)

>> w180326-HAT-P-12b-chart.png(별들의 고유 번호가 적힌 finding chart 이미지 파일)

  ** 여기서 대상별의 번호와 비교성의 번호를 찾아 이용할 수 있습니다.

 

프레임 이동을 기록한 image-shift 그래프 입니다.

관측 동안 망원경이 해당 영역을 이동한 경로 입니다. 대략 30픽셀 정도 이동한 것을 확인할 수 있습니다.

시계열 정보 처리를 위한, 별 번호 finding-chart (-chart.png) 

여기서 대상별과 비교성들의 번호를 선택하거나 확인할 수 있습니다.

대상의 번호를 확인할 수 있는  chart 이미지. 여기서는 13번 별이 HAT-P-12 입니다.

 

4. 04-chek_comps.py 

관측한 영역에서 적절한 비교성을 찾는 과정은 조금 까다롭습니다. 그래서 비교성을 쉽게 찾을 수 있게 도와주는 코드입니다. 인수 파일(tape.par)에 대상번호(TARGETNUM)을 finding chart에서 찾아서 입력합니다. 그리고 CHKSIG, CHKDELM 인수를 적절하게 조정하면, 대상 별과의 밝기 차이가 크게 발생하지 않는 별들을 골라서 출력해줍니다.

 

앞서 본 이미지에서 확인한 결과 13번 별이 대상이므로 TARGETNUM에 13을 입력하여 tape.par에 저장하고 실행합니다. 결과 그래프가 너무 많이 나오거나 너무 적게 나오면 CHKSIG, CHKDELM 값을 조정합니다.

대상(13번)에서 비교성(10번)의 밝기를 뺀 밝기 변화 그래프
대상(13번)에서 비교성(17번)의 밝기를 뺀 밝기 변화 그래프
대상(13번)에서 비교성(22번)의 밝기를 뺀 밝기 변화 그래프

출력된 파일을 보면서 이 중에서 믿을 만하다고 생각되는 비교성의 번호를 기록하여, 

tape.par  파일의 COMPNUMS 변수에 저장합니다. (여러 별인 경우 콤마로 구분합니다. )

여기서는 10번, 17번, 22번이 적당하고 생각되어 COMPNUMS에 10,17,22 라고 입력합니다.

5. 05-plot_lightcurve.py 

이미 tape.par에 OBSDATE, TARGETNAM, TARGETNUM, COMPNUMS가 모두 제대로 입력하였다면, 그냥 바로 이 코드를 실행해주면 됩니다. 그럼 다음과 같은 결과 그래프와 자료 파일이 생성됩니다. 

대상과 비교성 위치를 표시한 mark 이미지

 

비교성의 밝기를 합친 것에 대한 대상 별의 밝기변화 그래프

 

비교성 간의 밝기 차이를 검증한 그래프

최종 결과로 도출되는 대상 별의 밝기 변화 자료

[ 시간(HJD)  밝기비(대상/비교성) 밝기비 오차 ]

 2458204.091072   0.54107697   0.00067857 
 2458204.093514   0.54099215   0.00065158 
 2458204.095910   0.54088052   0.00067173 
 2458204.098294   0.54032589   0.00064220 
 2458204.105470   0.53996205   0.00062184 
 2458204.112646   0.54034158   0.00063126 
 2458204.119822   0.54092234   0.00060275 
 2458204.126986   0.54090257   0.00059296 
 2458204.129382   0.53964747   0.00058181 
 2458204.131766   0.53920267   0.00056885 
 2458204.134162   0.53628978   0.00056212 
 2458204.136547   0.53531476   0.00057773 
 2458204.138931   0.53344210   0.00056726 
 2458204.141327   0.53133060   0.00055582 
 2458204.143711   0.53202767   0.00055668 
 2458204.146107   0.53033241   0.00055330 
 2458204.148502   0.52936920   0.00055190 
 2458204.153283   0.52901528   0.00053768 
 2458204.158063   0.52818968   0.00055157 
 2458204.162843   0.52741781   0.00054388 
 2458204.167623   0.52854301   0.00053698 
 2458204.172403   0.52709557   0.00054078 
 2458204.177183   0.52713544   0.00053740 
 2458204.181963   0.52737870   0.00053721 
 2458204.186731   0.52771768   0.00053993 
 2458204.191511   0.52806151   0.00052976 
 2458204.196292   0.52866826   0.00053623 
 2458204.201072   0.52848307   0.00053206 
 2458204.203467   0.52941355   0.00052666 
 2458204.205852   0.52972165   0.00052822 
 2458204.208248   0.53049645   0.00053964 
 2458204.210632   0.53030015   0.00054314 
 2458204.213016   0.53151754   0.00053833 
 2458204.215412   0.53333210   0.00052568 
 2458204.217808   0.53580479   0.00053560 
 2458204.220192   0.53713440   0.00052348 
 2458204.224972   0.54113391   0.00052852 
 2458204.232148   0.54064094   0.00051680 
 2458204.239312   0.53934006   0.00049261 
 2458204.246476   0.53933744   0.00048346 
 2458204.253641   0.54015599   0.00046403 
 2458204.260817   0.53932445   0.00044482 
 2458204.267992   0.53941069   0.00042193 
 2458204.275157   0.53898526   0.00041582 

(문의) collie80@snu.ac.kr