TVecSmallInt.Difference Method

Overload List

#SignatureDescription
1TVecInt Difference(TMtxVecInt Vec, Int32 Lag)Calculate the difference for all Vec elements.
└ indexed: TMtxVecInt Difference(TMtxVecInt Vec, Int32 VecIndex, Int32 Index, Int32 Len, Int32 Lag)
2TVecInt Difference(Int32 Lag)The difference between two succesive vector elements.

Overload 1: TVecInt Difference(TMtxVecInt Vec, Int32 Lag)

Calculate the difference for all Vec elements.

#NameTypeDescription
1VecTMtxVecIntsource TVecInt or TMtxInt
2LagInt32

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

Remarks:

Store the results in the calling vector. The Dew.Math.TMtxVecBase.Length of the calling vector is set to one less the length of Vec.

Indexed: TMtxVecInt Difference(TMtxVecInt Vec, Int32 VecIndex, Int32 Index, Int32 Len, Int32 Lag)

Difference.

#NameTypeDescription
1VecTMtxVecIntsource TVecInt or TMtxInt
2VecIndexInt32
3IndexInt32start index
4LenInt32element count
5LagInt32

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

Remarks:

Calculate the difference for Vec elements [VecIndex]..[VecIndex+Len-1] and store the results in the calling object elements [Index]..[Index+Len-1]. Size and of the calling vector must be set explicitly. The following formula is used to calculate the difference:

Δ[k]=Vec[k+1]Vec[k],0k<Vec.Length1\Delta [k] = \text{Vec}[k+1] - \text{Vec}[k], \quad 0\leq k < \text{Vec.Length}-1

An exception is raised if Dew.Math.TMtxVecBase.ConditionCheck is True and array borders are overrun or underrun.

Overload 2: TVecInt Difference(Int32 Lag)

The difference between two succesive vector elements.

#NameTypeDescription
1LagInt32

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

Remarks:

Calculate the difference for all calling vector elements. The following formula is used to calculate the difference:

The Length of calling vector is automatically decremented by one.