SignalProcessing - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Science and Engineering : Signal Processing : Convolution and Correlation Computations : SignalProcessing/CrossCorrelation

SignalProcessing

  

CrossCorrelation

  

estimate the cross-correlation of two arrays containing samples

 

Calling Sequence

Parameters

Options

Description

Thread Safety

Examples

Compatibility

Calling Sequence

CrossCorrelation(A, B)

Parameters

A, B

-

Arrays of real or complex numeric values; the signals

lowerlag

-

integer, lower value of the range of lags at which the correlation estimates are computed

Options

• 

container : Array, predefined Array for holding result

Description

• 

The CrossCorrelation(A, B) command estimates the cross-correlation of the Vectors A and B of length M and N respectively. An Array of length M+N1 containing the result is returned.

• 

The cross-correlation is defined by the formula

Ck=i=1MAi&conjugate0;Bk+i+lowlag

  

for 1k and kM&plus;N1. Here, Bi is taken to be 0, for N<i.

• 

Before the code performing the computation runs, Maple converts A and B to a hardware datatype, first attempting float[8] and subsequently complex[8], unless they already have one of these datatypes. For this reason, it is most efficient if they have one of these datatypes beforehand. The output will have the datatype that the computation is performed in.

• 

If the container=C option is provided, then the results are put into C and C is returned. With this option, no additional memory is allocated to store the result. The container must be an Array of size M&plus;N1 having datatype float[8] if A and B are real, and complex[8] otherwise.

Thread Safety

• 

The SignalProcessing[CrossCorrelation] command is thread-safe as of Maple 17.

• 

For more information on thread safety, see index/threadsafe.

Examples

withSignalProcessing&colon;

aGenerateUniform10&comma;1&comma;1

a:=0.7852184921503080.5884139649570000.9931658226996680.9215782885439710.03878017095848920.01360579254105690.2107569728977980.7496002158150090.1389663578011100.212285134010017

(1)

bGenerateUniform7&comma;1&comma;1

b:=0.3383668018504980.9911206602118920.4889128464274120.2184583609923720.9771668855100890.1715928046032790.446023768279702

(2)

CrossCorrelationa&comma;b

1 .. 16 ArrayData Type: float8Storage: rectangularOrder: Fortran_order

(3)

CrossCorrelationa&comma;b&comma;0

1 .. 16 ArrayData Type: float8Storage: rectangularOrder: Fortran_order

(4)

CrossCorrelationa&comma;b&comma;9

1 .. 16 ArrayData Type: float8Storage: rectangularOrder: Fortran_order

(5)

cArray1..numelemsa&plus;numelemsb1&comma;&apos;datatype&apos;&equals;&apos;float&apos;8&colon;

CrossCorrelationa&comma;b&comma;&apos;container&apos;&equals;c

1 .. 16 ArrayData Type: float8Storage: rectangularOrder: Fortran_order

(6)

c

1 .. 16 ArrayData Type: float8Storage: rectangularOrder: Fortran_order

(7)

Compatibility

• 

The SignalProcessing[CrossCorrelation] command was introduced in Maple 17.

• 

For more information on Maple 17 changes, see Updates in Maple 17.

See Also

SignalProcessing[AutoCorrelation]

SignalProcessing[Convolution]

 


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam