Source code for lenstronomy.Util.primary_beam_util

__author__ = "nan zhang"

import numpy as np
from scipy.ndimage import map_coordinates

from lenstronomy.Util.package_util import exporter

export, __all__ = exporter()


[docs] @export def primary_beam_value_at_coords(x_pos, y_pos, primary_beam, order=3): """Interpolate the primary beam values at specified pixel coordinates. The coordinates falling outside the image are assigned to constant zero. :param x_pos: array or scalar of x-pixel-coordinates. :param y_pos: array or scalar of y-pixel-coordinates. :param primary_beam: the primary_beam map :param order: the order of the spline interpolation :return: a numpy array of the interpolated primary beam values """ primary_beam_interpolated_values = map_coordinates( input=primary_beam, coordinates=np.vstack([y_pos, x_pos]), order=order, mode="constant", cval=0, ) return primary_beam_interpolated_values