Vector.CrossCorr Method

TVec CrossCorr(TVec Vec1, TVec Vec2, Int32 HiLag, Int32 LoLag)

The cross-correlation of two vectors.

#NameTypeDescription
1Vec1TVecsource TVec
2Vec2TVecsource TVec
3HiLagInt32
4LoLagInt32

Result: stored in self (calling object), returns self for chaining

Remarks:

Calculate the cross-correlation of two vectors Vec1 and Vec2. The parameter HiLag indicates the top of the range of lags at which the correlation estimates should be computed. The parameter LoLag indicates the bottom of the range of lags at which the correlation estimates should be computed. The results are stored in calling vector. The resulting elements are defined by the equation:

V[n]=k=0Vec1.Length1Vec1[k]Vec2[n+k+LoLag],0nHiLagLoLagVec2[k]={Vec2[k]0k<Vec2.Length0otherwise\begin{aligned} \text{V}[n] &= \sum _{k=0} ^{\text{Vec1.Length}-1} \text{Vec1}[k] \text{Vec2}[n+k+\text{LoLag}], \quad 0\leq n \leq \text{HiLag}-\text{LoLag} \\ \text{Vec2}[k] &= \begin{cases} \text{Vec2}[k] & 0\leq k < \text{Vec2.Length}\\ 0 & \text{otherwise}\end{cases} \end{aligned}
Examples
Vector a;
Vector b;
Vector c;
a.SetIt(false,new double[] {1,-2,3,4});
b.SetIt(false,new double[] {2,-2,3,4});
c.CrossCorr(a,b,2,2);
See Also: Vector.AutoCorrBiased, Vector.AutoCorrNormal, Vector.AutoCorrUnBiased