Operations on Signals#

This section describes the operations that can be performed on signals.

See also

Processing Signals for more information on signal processing features, or Analysis features on Signals for information on analysis features on signals.

../../_images/s_operation.png

Screenshot of the ā€œOperationsā€ menu.#

When the ā€œSignal Panelā€ is selected, the menus and toolbars are updated to provide signal-related actions.

The ā€œOperationsā€ menu allows you to perform various operations on the selected signals, such as arithmetic operations, peak detection, or convolution.

Operations with a constant#

Create a new signal which is the result of a constant operation on each selected signal:

Operation

Description

constant_add Addition

\(y_{k} = y_{k-1} + c\)

constant_subtract Subtraction

\(y_{k} = y_{k-1} - c\)

constant_multiply Multiplication

\(y_{k} = y_{k-1} \times c\)

constant_divide Division

\(y_{k} = \dfrac{y_{k-1}}{c}\)

Basic arithmetic operations#

Operation

Description

sum Sum

\(y_{M} = \sum_{k=0}^{M-1}{y_{k}}\)

difference Difference

\(y_{2} = y_{1} - y_{0}\)

product Product

\(y_{M} = \prod_{k=0}^{M-1}{y_{k}}\)

division Division

\(y_{2} = \dfrac{y_{1}}{y_{0}}\)

inverse Inverse

\(y_{2} = \dfrac{1}{y_{1}}\)

exponential Exponential

\(y_{2} = \exp(y_{1})\)

logarithm Logarithm (base 10)

\(y_{2} = \log_{10}(y_{1})\)

Convolution and Deconvolution#

Operation

Implementation

convolution Convolution

Based on scipy.signal.convolve

deconvolution Deconvolution

Frequency domain deconvolution

Absolute value and complex signal operations#

Operation

Description

abs Absolute value

\(y_{k} = |y_{k-1}|\)

phase Phase (argument)

sigima.proc.signal.phase()

complex_from_magnitude_phase Combine with phase

Consider current signal as the module and allow to select a signal representing the phase to merge them in a complex signal sigima.proc.signal.complex_from_magnitude_phase()

re Real part

\(y_{k} = \Re(y_{k-1})\)

im Imaginary part

\(y_{k} = \Im(y_{k-1})\)

complex_from_real_imag Combine with imaginary part

Consider current signal as the real part and allow to select a signal representing the imaginary part to merge them in a complex signal sigima.proc.signal.complex_from_real_imag()

Data type conversion#

The ā€œConvert data typeā€ convert_dtype action allows you to convert the data type of the selected signals.

Note

Data type conversion relies on numpy.ndarray.astype() function with the default parameters (casting=’unsafe’).

Statistics between signals#

Create a new signal which is the result of a statistical operation on each point of the selected signals:

Operation

Description

average Average

\(y_{M} = \dfrac{1}{M}\sum_{k=0}^{M-1}{y_{k}}\)

standard_deviation Standard Deviation

\(y_{M} = \sqrt{\dfrac{1}{M}\sum_{k=0}^{M-1}{(y_{k} - \bar{y})^{2}}}\)

Other mathematical functions#

Function

Description

power Power

\(y_{k} = y_{k}^{n}\)

sqrt Square root

\(y_{k} = \sqrt{y_{k}}\)

derivative Derivative

Based on numpy.gradient

integral Integral

Based on scipy.integrate.cumulative_trapezoid

signal_to_image Assemble signals into image

Create a 2D image by assembling selected 1D signals as rows or columns, with optional normalization.