Align two signals by delaying earliest signal

`[`

estimates
the delay, `Xa`

,`Ya`

]
= alignsignals(`X`

,`Y`

)*D*, between the two input signals, `X`

and `Y`

,
and returns the aligned signals, `Xa`

and `Ya`

.

If

`Y`

is delayed with respect to`X`

, then*D*is positive and`X`

is delayed by*D*samples.If

`Y`

is advanced with respect to`X`

, then*D*is negative and`Y`

is delayed by –*D*samples.

Delays in `X`

or `Y`

can
be introduced by prepending zeros.

`[`

keeps
the lengths of the aligned signals, `Xa`

,`Ya`

]
= alignsignals(`X`

,`Y`

,`maxlag`

,'truncate')`Xa`

and `Ya`

,
the same as those of the input signals, `X`

and `Y`

,
respectively.

If the estimated delay,

*D*, is positive, then*D*zeros are prepended to`X`

and the last*D*samples of`X`

are truncated.If the estimated delay,

*D*, is negative, then –*D*zeros are prepended to`Y`

and the last –*D*samples of`Y`

are truncated.

If

*D*≥*L*, then_{X}`Xa`

consists of*L*zeros. All samples of_{X}`X`

are lost.If –

*D*≥*L*, then_{Y}`Ya`

consists of*L*zeros. All samples of_{Y}`Y`

are lost.

L,
respectively._{Y} |

To avoid assigning a specific value to `maxlag`

when
using the `'truncate'`

option, set `maxlag`

to `[]`

.

[1] Orfanidis, Sophocles J. *Optimum
Signal Processing. An Introduction*. 2nd Ed. Englewood
Cliffs, NJ: Prentice-Hall, 1996.

Was this topic helpful?