Vector.DotProdc Method

Overload List

#SignatureDescription
1TCplx DotProdc(TMtxVec Vec)Scalar product of two complex arrays.
└ indexed: TCplx DotProdc(TMtxVec Vec, Int32 VecIndex, Int32 Index, Int32 Len)
2TCplx DotProdc(TMtxVec Vec, Boolean ConjVec)Returns the scalar product between Vec and calling object complex elements.
└ indexed: TCplx DotProdc(TMtxVec Vec, Boolean ConjVec, Int32 VecIndex, Int32 Index, Int32 Len)

Overload 1: TCplx DotProdc(TMtxVec Vec)

Scalar product of two complex arrays.

#NameTypeDescription
1VecTMtxVecsource TVec or TMtx

Returns: TCplx (complex)

Remarks:

Calculates the dot product (scalar value) of the calling object and Vec object and returns a complex scalar value. An exception is raised if calling or Vec object Dew.Math.Vector.Complex property is false. The dot product is defined by the equation:

VV=k=0Length1V[k]V[k]\text{V}\cdot \text{V} = \sum _{k=0} ^{\text{Length}-1}\text{V}[k]\cdot \text{V}[k]

Note
Both objects must be of equal size. If they are not, the method will return the dot product of the largest sub-array.

Examples
Vector a;
Vector b;
TCplx prod;
a.SetIt(true,new double[] {1,2,3,4});
b.SetIt(true,new double[] {5,6,7,8});
prod = a.DotProdc(b); //= (1+2i)*(5+6i)+(3+4i)*(7+8i)
See Also: Vector.DotProd

Indexed: TCplx DotProdc(TMtxVec Vec, Int32 VecIndex, Int32 Index, Int32 Len)

Returns the scalar product between Vec (complex) elements [VecIndex]..[VecIndex+Len-1] and calling object (complex) elements [Index]..[Index+Len-1].

#NameTypeDescription
1VecTMtxVecsource TVec or TMtx
2VecIndexInt32
3IndexInt32start index
4LenInt32element count

Returns: TCplx (complex)

Remarks:

An exception is raised if Vec and calling object Dew.Math.Vector.Complex property is False. An exception is raised if Dew.Math.Vector.ConditionCheck is True and array borders are overrun or underrun.

Overload 2: TCplx DotProdc(TMtxVec Vec, Boolean ConjVec)

Returns the scalar product between Vec and calling object complex elements.

#NameTypeDescription
1VecTMtxVecsource TVec or TMtx
2ConjVecBoolean

Returns: TCplx (complex)

Remarks:

If ConjVec is True, scalar product between calling object and conjugated Vec object elements is calculated. An exception is raised if Vec and calling object Dew.Math.Vector.Complex property is False.

Indexed: TCplx DotProdc(TMtxVec Vec, Boolean ConjVec, Int32 VecIndex, Int32 Index, Int32 Len)

Returns the scalar product between Vec (complex) elements [VecIndex]..[VecIndex+Len-1] and calling object (complex) elements [Index]..[Index+Len-1].

#NameTypeDescription
1VecTMtxVecsource TVec or TMtx
2ConjVecBoolean
3VecIndexInt32
4IndexInt32start index
5LenInt32element count

Returns: TCplx (complex)

Remarks:

If ConjVec is True, scalar product between calling object and conjugated Vec object elements is calculated. An exception is raised if Vec and calling object Dew.Math.Vector.Complex property is False. An exception is raised if Dew.Math.Vector.ConditionCheck is True and array borders are overrun or underrun.