Theoretica
A C++ numerical and automatic mathematical library
theoretica::signal Namespace Reference

Signal processing module. More...

Functions

template<typename ReturnVector = cvec, typename InputVector = cvec>
ReturnVector fft (const InputVector &x, bool inverse=false)
 Compute the Fast Fourier Transform of a set of data points. More...
 
template<typename ReturnVector = cvec, typename InputVector = cvec>
ReturnVector ifft (const InputVector &k)
 Compute the Inverse Fast Fourier Transform of a set of data points. More...
 

Detailed Description

Signal processing module.

Function Documentation

◆ fft()

template<typename ReturnVector = cvec, typename InputVector = cvec>
ReturnVector theoretica::signal::fft ( const InputVector &  x,
bool  inverse = false 
)
inline

Compute the Fast Fourier Transform of a set of data points.

Bit reversion is used on the indices to simplify the resulting calculations.

Parameters
xThe set of data points in the time domain
inverseWhether to run the inverse transform (defaults to false)
Returns
The data in the frequency domain

◆ ifft()

template<typename ReturnVector = cvec, typename InputVector = cvec>
ReturnVector theoretica::signal::ifft ( const InputVector &  k)
inline

Compute the Inverse Fast Fourier Transform of a set of data points.

Bit reversion is used on the indices to simplify the resulting calculations.

Parameters
kThe set of data points in the frequency domain
Returns
The data in the time domain