dsp-dft

0.0.1 • Public • Published

dft

Discrete Fourier Transformation

npm install dsp-dft

This module have functions to compute DFT using the correlation algorithm (the simplest and easy to understand, also the slowest)

Various methods are used to obtain DFT for time domain samples including use of Simultaneous Equations using Gaussian elimination, correlation, and using the Fast Fourier Transform algorithm. The first option requires massive work even for a comparitively small number of samples. In actual practice, correlation is the preferred method if the DFT has less than about 32 points.

The functions of this module are not intended to be used in production. It has two objectives:

  • Educational: learn how to implement the DFT correlation algorithm
  • Test: test more complex algorithms against this to check results

This is part of dsp-kit

Example

var dft = require('dsp-dft')
dft.forward(signal)

dft~dft(src, dest, inverse) ⇒ Object

Perform a DFT using a brute force correlation algorithm

It accepts real and complex signals of any size.

It implements the mathematical function as it, without any kind of optimization, so it's the slowest algorithm possible.

This algorithm is not intended to be used in production. It's main use (apart from the educational purposes) is to check the output of more complex algorithms

Kind: inner method of dft
Returns: Object - the resulted dft as an object { real, imag }

Param Type Description
src Object The source source buffers. The imaginary part can be null.
dest Object The destation bufers. The imaginary part can be null.
inverse Boolean Perform inverse DFT

dft~forward(signal) ⇒ Object

A interface to perform forward DFT on a real signal

Kind: inner method of dft
Returns: Object - the complex signal (an objects with the form: { real: Array<Number>, im: Array<Number> })

Param Type Description
signal Array The (real) signal array

dft~inverse(signal) ⇒ Array

An interface to perform an inverse DFT on a complex signal with a real signal as result

Kind: inner method of dft
Returns: Array - the resulting real signal

Param Type Description
signal Object The complex signal as an object with two arrays

Package Sidebar

Install

npm i dsp-dft

Weekly Downloads

2

Version

0.0.1

License

MIT

Last publish

Collaborators

  • danigb