Categorygithub.com/davidkleiven/gosfft
repository
1.0.7
Repository: https://github.com/davidkleiven/gosfft.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author

# README

gosfft

Build status Coverage Status Go Report Card

Simple FFT (SFFT) is a simple FFT library that is based on Gonum's FFT routine. It implements a simple interface for 1D, 2D and 3D transforms.

Examples

Below is a selection of examples whoen

1D fourier transform

Fourier transform of a square pulse

Signal 1D Fourier Transform

2D fourier transform

Fourier transform of a square

Signal 2D Fourier Transform

3D fourier transform

Fourier transform of a 3D cube

Parallelization

GOSFFT implements parallel versions of the multidimensional FFTs. In the following testcase a 2D 128 x 128 matrix is Fourier Transformed. The following results where obtained (Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz)

Number of workersExecution time per FFT
11.34 ms
20.85 ms
40.67 ms
80.45 ms

The testcase runs a similar test in 3D for 128 x 128 x 128 dataset. The timing results are shown below

Number of workersExecution time per FFT
1280 ms
2146 ms
487 ms
868 ms