Skip to content

takatoh/fft

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 

fft

Fast Fourier Transform in Golang.

高速フーリエ変換/逆変換のライブラリです。

Install

go.mod ファイルに次の行を追記してください。

require github.com/takatoh/fft v1.1.0

Usage

フーリエ変換には fft.FFT 関数を使います。

y := fft.FFT(x, n)

x がデータ(複素数)、n がデータ数。n は 2 のべき乗である必要があります。

逆変換には fft.IFFT 関数を使います。

z := fft.IFFT(y, n)

フーリエ変換による各成分に対応する周波数を得るには fft.FFTRreq 関数または fft.RFFTFreq 関数を使います。n はデータ数(2のべき乗)、dt は時間間隔です。

f := fft.FFTRreq(n, dt)
rf := fft.RFFTFreq(n, dt)

fft.FFTFreqn 個、fft.RFFTFreqn/2+1 個の周波数を返します。

fft.FFTFreq では、ナイキスト周波数 f[n/2] が負値です。この振る舞いは Python の numpy ライブラリにある fft.fftfreq() に倣いました。何故このようになっているのかはわかりません。

fft.RFFTFreq では、ナイキスト周波数 rf[n/2] が正値です。

License

MIT License

About

Fast Fourier Transform in Golang.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages