測光原点・カタログの読み方

測光原点やカタログの読み方等についての記事です。併せてPDRリリース論文もご覧ください。

hscpipe7での測光原点

hscpipe6以前では先頭ヘッダにFLUXMAG0がありましたが、hscpipe7では後ろの方のHDUに移動し、かつデータ部に格納されてしまったため、あらわには見えなくなりました。

hscpipeのAPIを使ってFLUXMAG0を確認する方法を紹介します。

※astropyなどでFITSデータ内を探るのは少々たいへんです。

# hscPipe7 をセットアップ
setup-hscpipe

# python を起動
python

# lsst.afw.imageモジュールをインポート
>>> import lsst.afw.image as afwImage

# FLUXMAG0を計算
>>> exp = afwImage.ExposureF(filepath_to_CORR)
>>> pc = exp.getPhotoCalib()
>>> FLUXMAG0 = pc.getInstFluxAtZeroMagnitude()

# FLUXMAG0ERRを計算
>>> ref_flux = 1.0e23*1.0e9*10**(-0.4*48.6)
>>> FLUXMAG0ERR = FLUXMAG0 * pc.getCalibrationErr()/pc.getCalibrationMean()

FWHM PSF

FWHM PSF は src_base_SdssShape_xxsrc_base_SdssShape_yysrc_base_SdssShape_xy から、下記の式で求めることができます。

FWHM=0.168 * 2.354 *sqrt(sqrt(src_base_SdssShape_xx*src_base_SdssShape_yy - src_base_SdssShape_xy2))

SdssShapeについてはこちらを参照してください。

https://classic.sdss.org/dr7/algorithms/adaptive.html

銀河が平面上で楕円の形をしていると考えて、その楕円の形を測るために、ピクセルの明るさを重みにして <xx>, <xy>, <yy> を計算したものが(2次)モーメントです。モーメントは楕円の形と一対一対応します。どの範囲で平均 <…> を 計算するかによってモーメントが変わりますので、理想的には、銀河と同じ形の楕円を銀河の周りに描き、その中を積分範囲としたいです。しかし銀河の形は未知なので、現実には、(n-1) 回目の測定で得られたモーメントに対応する楕円を積分範囲として n 回目のモーメント測定をする、という adaptive な手法が用いられます。また実際には、境界の位置でハードに積分を打ち切るのではなく、楕円ガウシアンで滑らかに打ち切ります。

FLAG

flagの類はflagsというcolumnに格納されています。 例えばpythonでbase_PixelFlags_flag_badを見たい場合は、

from astropy.io import fits
hdul=fits.open("forced_src-filter-tract-patch.fits")
hdul[1].data[“flags”][…,56-1]

# ヘッダに TFLAG56 = ‘base_PixelFlags_flag_bad’と記述されている場合。
# -1するのはTFLAG1から始まっているため。