Photutils/ Апертурная фотометрия Как найти ошибку фотометрии?

Я выполняю апертурную фотометрию с помощью фотоэлементов. Я следил за учебными пособиями на странице фотографий, рассчитал фон из кругового кольца вокруг источника и вычел его. Теперь мне нужно вычислить ошибку фотометрии, но задача aperture_photometry не дает ни ошибок апертур, ни фоновой ошибки, если я не дам ей ошибку ввода. Какую ошибку ввода я должен выдать задаче? Для получения апертурной фотометрии я использовал следующий код:

    import numpy as np
    import matplotlib.pyplot as plt
    from astropy.io import fits
    from matplotlib.colors import LogNorm
    from astropy.stats import sigma_clipped_stats
    from photutils import aperture_photometry
    from photutils import CircularAnnulus
    from photutils import CircularAperture

    image = fits.open('cut_F555_03.fits')
    hdu_list = image
    image_data = hdu_list[0].data

    import pandas as pd
    sources = pd.read_csv('daofind.tab', delimiter = '\s+', header = 0)


    loc = np.array([sources['xcentroid'], sources['ycentroid']])

    positions = np.transpose(loc)

    apertures = CircularAperture(positions, r = 8.12)
    rawflux = aperture_photometry(image_data, apertures)

    annulus_apertures = CircularAnnulus(positions, r_in = 8.12, r_out = 18.12)

    annulus_masks = annulus_apertures.to_mask(method = 'center')

    bkg_median = []
    for mask in annulus_masks:
        annulus_data = mask.multiply(image_data)
        annulus_data_1d = annulus_data[mask.data > 0]
        _, median_sigclip, _ = sigma_clipped_stats(annulus_data_1d)
        bkg_median.append(median_sigclip)
   bkg_median = np.array(bkg_median)

   rawflux['annulus_median'] = bkg_median / annulus_apertures.area

   rawflux['aper_bkg'] = bkg_median * apertures.area

   rawflux['final_phot'] = rawflux['aperture_sum'] - rawflux['aper_bkg']

Любая идея о том, как получить ошибки, будет действительно оценена. С наилучшими пожеланиями. Сара

1 ответ

Добро пожаловать в SO Sara!

Это хороший вопрос, и я поймал себя на том, что задавал его несколько лет назад, когда работал с photutils. В документации есть раздел об оценке ошибок, в котором говорится, что:

Если и только если errorключевое слово вводится в aperture_photometry(), возвращаемая таблица будет включать'aperture_sum_err' столбец в дополнение к 'aperture_sum'. 'aperture_sum_err'обеспечивает распространяемую неопределенность, связанную с 'aperture_sum'.

Это предполагает, что вы ранее получили полную ошибку и сохранили ее в массиве (который вы передаете черезerrorпараметр). Прочтите документы, это поможет вам понять несколько вещей.

Я открыл вопрос наphotutils чуть более двух лет назад по этой теме. Пользователь предложил сценарий для получения ошибок апертурной фотометрии так же, как это делает IRAF. К сожалению, я, по-видимому, не довел до конца тестирование предоставленного сценария, так что теперь дело за вами.

К сожалению, №2. IRAF находится на смертном одре, и большинство ресурсов, которые можно было бы использовать, чтобы узнать о том, как он выполнял некоторые задачи (например, апертурная фотометрия), теперь ушли. Существует группа в Facebook для (профессиональных) астрономов, которая может помочь вам ответить на подобные вопросы.

Другие вопросы по тегам