小编use*_*354的帖子

scipy.signal.fftconvolve没有提供所需的结果

我有一个关于python的问题fftconvolve.在我目前的研究中,我被要求计算两个函数之间的一些卷积.为此,我使用傅立叶变换(我使用numpy.fft并对其进行标准化)来计算它.问题是,如果我想使用fftconvolve包进行比较,它无法给出正确的结果.这是我的代码:

#!/usr/bin/python
import numpy as np
from scipy.signal import fftconvolve , convolve 

def FFT(array , sign):
  if sign==1:
    return np.fft.fftshift(np.fft.fft(np.fft.fftshift(array))) * dw / (2.0 * np.pi)
  elif sign==-1:
    return np.fft.fftshift(np.fft.ifft(np.fft.fftshift(array))) * dt * len(array)


def convolve_arrays(array1,array2,sign):
  sign = int(sign)
  temp1 = FFT(array1 , sign,)
  temp2 = FFT(array2 , sign,)
  temp3 = np.multiply(temp1 , temp2)
  return  FFT(temp3 , -1 * sign) / (2. * np.pi) 

""" EXAMPLE """ 

dt    = .1
N     = 2**17
t_max …
Run Code Online (Sandbox Code Playgroud)

python signal-processing numpy scipy

2
推荐指数
1
解决办法
2176
查看次数

标签 统计

numpy ×1

python ×1

scipy ×1

signal-processing ×1