Galsim Галактика моделирования с (локальные WCS) PSF

Я хотел бы использовать Galsim моделировать множество галактик, свернутых PSF.

Галактики - это простые двойные профили, которые я создаю, используя Sersic класс от Galsim (а затем Shear, чтобы ввести некоторую эллиптичность).

PSF, которые я хотел бы использовать, представляют собой пикселизированные изображения, рассчитанные с помощью симуляции трассировки лучей Zemax или CodeV. Они были рассчитаны на сетке, соответствующей поверхности детектора. Эта поверхность наклонена относительно главного луча, так что эти PSF уже включают искажения WCS наклона детектора.

Я хотел бы рассчитать галактики, свернутые в PSF, на поверхности детектора. Возможный способ будет:

  • загрузить PSF

psf = galsim.InterpolatedImage(galsim.Image(psf))

  • затем сверните галактикой:

gal = galsim.Convolve(psf, gal)

  • затем нарисуйте на поверхности детектора (с наклоном в local_wcs):

gal_image = gal.drawImage(wcs=local_wcs)

Я думаю, что я делаю ошибку с PSF, на который дважды влияют искажения (исходный наклон в Zemax PSF + local_wcs метода drwImage). Мои беспокойства верны?

Должен ли я применить искажение local_wcs к исходной неконволюционированной галактике (применяя сдвиг, соответствующий local_wcs), а затем свернуть с помощью psf и нарисовать его на неискаженных wcs? Будет ли это правильно учитывать тот факт, что мой PSF уже искажен наклоном детектора?

1 ответ

Я наткнулся на возможное решение, и это будет указать local_wcs при загрузке PSF:

psf = galsim.InterpolatedImage(galsim.Image(psf), wcs=local_wcs)

Правильно ли это исправить? Заметит ли Галсим, что ему нужно только исказить галактику и свернуть с помощью PSF (а не растереть PSF, свернуть галактику с помощью PSF и исказить свернутую галактику)?

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