Python 天文卷积

Python 天文卷积,python,convolution,astropy,Python,Convolution,Astropy,我在理解astropy中两个模型的卷积是如何完成的时遇到了一个问题。我想用均值为0且σ>0的高斯函数卷积我的函数,以某个值x为中心。但是,当我试图绘制卷积的结果时,函数的中心是~x/2。我想我在这里遗漏了一些基本的东西,但除了astropy文档的基本示例之外,我找不到任何东西 这是我的代码片段: 将numpy导入为np 输入数学 将matplotlib.pyplot作为plt导入 从astropy.modeling.models导入自定义_模型 从astropy.modeling导入模型 从as

我在理解astropy中两个模型的卷积是如何完成的时遇到了一个问题。我想用均值为0且σ>0的高斯函数卷积我的函数,以某个值x为中心。但是,当我试图绘制卷积的结果时,函数的中心是~x/2。我想我在这里遗漏了一些基本的东西,但除了astropy文档的基本示例之外,我找不到任何东西

这是我的代码片段:

将numpy导入为np
输入数学
将matplotlib.pyplot作为plt导入
从astropy.modeling.models导入自定义_模型
从astropy.modeling导入模型
从astropy.卷积导入卷积模型
从scipy.constants导入alpha
@自定义模型
def光谱(x):
me=0.511
eMax=104.97
E=np.sqrt(x*x+me*me)
结果=(1./eMax)*(alpha/(2*math.pi))*(np.log(4*E*E/me/me)-2.)*((E*E+eMax*eMax)/eMax/(eMax-E))
结果[结果<0]=0
返回结果
x=np.linspace(01201000)
s=频谱()
g1=模型。高斯1d(1,0,2)
conv=卷积_模型(g1,s)
plt.绘图(x,conv(x),‘k-’)
plt.绘图(x,s(x))
我希望卷积函数以原始函数为中心,我不知道发生了什么


谢谢你的帮助

我也不太清楚到底发生了什么,但我确实注意到,如果我用
x=np.linspace(-1201201000)
扩展范围,使其与y轴对称,我得到的结果可能更接近您的预期:在文档中,它确实说内核被假定为居中,但当取范围
(0120)
您的内核偏离中心,而反射使其居中。