smart_signal_processing 2.0.7 smart_signal_processing: ^2.0.7 copied to clipboard
Provides useful functions for signal processing such as Fast Fourier Transform, windowing (apodization), variance/standard deviation and others.
Smart Signal Processing #
What the package can do for you #
This package provides frequently used functions for signal processing:
- Computes mean values, variance, standard deviation.
- Applies windowing (apodization functions) with exponential or Gaussian shapes to an array
- Applies the Fast Fourier Transform to an array.
- Calculates the power or magnitude of a complex-valued array.
- Phase-shifts (rotates in the complex plane) a complex-valued array.
Example #
-
The provided example can be directly executed via https://smart.specpad.bplaced.net/smart_signal_processing/example.html.
-
Or, download the package and execute the file
example/example.html
in your browser.
The major API functionalities #
- classes
Sigma
,BaseLine
,WinFunc
,FFT
,Phase
.
Examples:
-
Multiplication with an exponential:
WinFunc.expMult(array, decayFactor, false, "0");
-
Compute Fourier Transform:
FFT.transform(reals, imags);
-
Compute magnitude:
Phase.magnitude(reals, imags, true)
-
Compute variance in a region:
Sigma.variance(array, ixstart, ixend)
Detailed API
Please view the detailed API documentation in the API
reference of this package (sidebar at the right of this page).
Related packages #
smart_arrays_base
: Basic functions for 1D and 2D arrays
smart_arrays_numerics
: Numerics with 1D and 2D arrays
smart_arrays_compress
: Compress 1D and 2D arrays to a smaller size.
smart_arrays_dbstore
: Store 1D and 2D arrays along with metadata on the local device.
smart_arrays_plot_polyline
: Plot 1D arrays as polyline along with axes and more.
smart_arrays_peaks
: Detect peaks in 1D and 2D arrays.
smart_lorentz-gauss
: Compute Lorentz-Gauss (pseudo-Voigt) line shapes.