discretize_model#
- astropy.convolution.discretize_model(model, x_range, y_range=None, mode='center', factor=10)[源代码]#
评估像素网格上的分析模型函数。
- 参数:
- model :
Model
或者是可召唤的。模型或可调用。 需要离散化的分析模型函数。可调用对象不是
Model
使用将实例转换为模型custom_model
。- x_range二元语义
评估模型的x个像素值的上下限。上限是非包含的。一个
x_range
的(0, 3)
意味着模型将在x像素0、1和2处求值。上下限之间的差值必须是整数,这样才能很好地定义输出数组大小。- y_range :2元组或
None
,可选2元组或 评估模型的y像素值的上下限。上限是非包含的。一个
y_range
的(0, 3)
意味着模型将以0、1和2的y像素进行求值。上下限之间的差值必须是整数,这样才能很好地定义输出数组大小。y_range
仅对二维模型是必需的。- mode{‘CENTER’,‘LINEAR_INTERP’,‘OVERSAME’,‘INTEGRATE’},可选
- 以下模式之一:
'center'
(默认)通过取像素箱中心的值来离散化模型。
'linear_interp'
通过在像素箱的边(1D)或角(2D)处的值之间进行线性内插来离散模型。对于2D模型,内插是双线性的。
'oversample'
通过取过采样栅格上的像素箱中的模型值的平均值来离散模型。使用
factor
关键字来设置整数过采样系数。
'integrate'
通过使用在像素柱上集成模型来离散模型
scipy.integrate.quad
。此模式在亚像素尺度上保留模型积分,但速度非常慢。
- factor :
int
,可选PYTHON:int,可选 在以下情况下使用的整数过采样系数
mode='oversample'
。否则就被忽略了。
- model :
- 返回:
- 数组 :
numpy.ndarray
numpy.ndarray
离散化的模型数组。
- 数组 :
实例
在本例中,我们定义了一个
Gaussian1D
已标准化的模型,因此其总和为1.0。然后,我们使用'center'
,'linear_interp'
,以及'oversample'
(带factor=10
)模式。(
Source code
,png
,svg
,pdf
)