Analytic signals of discrete-time inputs

The `dsp.AnalyticSignal`

System
object™ computes analytic signals of discrete-time inputs. The real part of the analytic
signal in each channel is a replica of the real input in that channel, and the imaginary part
is the Hilbert transform of the input. In the frequency domain, the analytic signal doubles
the positive frequency content of the original signal while zeroing-out negative frequencies
and retaining the DC component. The object computes the Hilbert transform using an equiripple
FIR filter.

To compute the analytic signal of a discrete-time input:

Create the

`dsp.AnalyticSignal`

object and set its properties.Call the object with arguments, as if it were a function.

To learn more about how System objects work, see What Are System Objects? (MATLAB).

returns an
analytic signal object, `anaSig`

= dsp.AnalyticSignal`anaSig`

, that computes the complex analytic
signal corresponding to each channel of a real
*M*-by-*N* input matrix.

returns an analytic signal object, `anaSig`

= dsp.AnalyticSignal(`order`

)`anaSig`

, with the FilterOrder property set to
`order`

.

returns an analytic signal object, `anaSig`

= dsp.AnalyticSignal(`Name,Value`

)`anaSig`

, with each specified
property set to the specified value.

computes
the analytic signal, `y`

= anaSig(`x`

)`y`

, of the
*M*-by-*N* input matrix `x`

,
according to the equation

$$Y=X+jH\left\{X\right\}$$

where *j* is the imaginary unit and $$H\left\{X\right\}$$ denotes the Hilbert transform.

Each of the *N* columns in `x`

contains
*M* sequential time samples from an independent channel. The method
computes the analytic signal for each channel.

To use an object function, specify the
System
object as the first input argument. For
example, to release system resources of a System
object named `obj`

, use
this syntax:

release(obj)

This object implements the algorithm, inputs, and outputs described on the Analytic Signal block reference page. The object properties correspond to the block parameters.