2017-06-15 11 views
0

私は、台形カーネルをPythonで実装したかったのですが(おそらく、numpyやscipyを使って)、畳み込みのためには、台形モジュールにTrapezoidal1Dkernelとして入っているものと同じように実装したいと思っていました。私は台形波で畳み込みを試みましたが、結果は満足できませんでした。私は、z印刷する場合台形カーネルのPython

def trapzoid_signal(t, width=2., slope=1., amp=1., offs=0): 
    global trasig 
    trasig=[] 
    trasig = slope*width*signal.sawtooth(2*np.pi*t/width, width=0.5)/4. 
    trasig+= slope*width/4. 
    trasig[trasig>amp] = amp 
    return trasig + offs 
t = np.linspace(0, 32, 34) 
trapzoid_signal(t, width=32, slope=1, amp=0.0322) 
print(trasig) 
z = scipy.signal.convolve(trasig,new) 

それは与える:

[ nan nan nan ..., nan nan nan] 

私はそれが何も与えないzのプロットを試みました。どんな助け?

+1

[mcve]を使用してみてください。どのコードを試しましたか?あなたはテスト入出力を持っていますか? –

+0

が完了しました。チェックしてください –

答えて

1

ユーレカ!やったよ。私がStackOverflow自体で見つけた次のコードを使用して、値をプロットしたりプリントしていなかった理由は、[ nan nan nan ..., nan nan nan]として削除されました。

ind = np.where(~np.isnan(new))[0] 
first, last = ind[0], ind[-1] 
new[:first] = new[first] 
new[last + 1:] = new[last] 

次に、私の問題を解決しました。私はzの値を得ただけでなく、私のプロットも得ました。 stackoverflow.comに感謝します。

関連する問題