### SignalProcessing.Compute.Modify.Shift

There are three different modes that can be selected via the mode input:

- Mode = 0: zero
- Mode = 1: periodic
- Mode = 2: extend

#### Zero mode

In zero mode, the shifted signal $\mathrm{y}[n]$ is generated from the input signal $\mathrm{x}[n]$ with

$\mathrm{y}[n] = \mathrm{x}[n - M]$.

The length of the signal is unchanged. Undefined values are set to zero.

#### Periodic mode

In periodic mode, the shifted signal $\mathrm{y}[n]$ is generated from the input signal $\mathrm{x}[n]$ with

$\mathrm{y}[n] = \mathrm{x}[n - M \bmod N]$

where $N$ is the length of the signal.

#### Extend mode

In extend mode, the shifted signal $\mathrm{y}[n]$ is generated from the input signal $\mathrm{x}[n]$ with

$\mathrm{y}[n] = \mathrm{x}[n - M]$.

The length of the signal is extended: $\text{length}(\mathrm{y}) = \text{length}(\mathrm{x})+ \text{abs}(M)$.

Undefined values are set to zero.