smart_signal_processing 2.1.1
smart_signal_processing: ^2.1.1 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.htmlin 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)
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_sample_data: Computes 1D and 2D arrays containing sample data.
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.