Double DotProd(TMtxVec Vec)
Scalar product of two real arrays.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec | source TVec or TMtx |
Returns: Double
Remarks:
Calculates the dot product (scalar value) of the calling object and Vec object and returns a real scalar value. The dot product is defined by the equation:
Both objects must be of equal size. If they are not, the method will return the dot product of the largest sub-array.
Indexed: Double DotProd(TMtxVec Vec, Int32 VecIndex, Int32 Index, Int32 Len)
Returns the scalar product between Vec elements [VecIndex]..[VecIndex+Len-1] and calling object elements [Index]..[Index+Len-1].
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec | source TVec or TMtx |
| 2 | VecIndex | Int32 | |
| 3 | Index | Int32 | start index |
| 4 | Len | Int32 | element count |
Returns: Double
Remarks:
An exception is raised if Vec and calling object Dew.Math.TMtxVec.Complex property is True. An exception is raised if Dew.Math.TMtxVecBase.ConditionCheck is True and array borders are overrun or underrun.
Examples
Matrix a;
Matrix b;
double prod;
a.SetIt(1,4,false,new double[] {1,2,3,4});
b.SetIt(1,4,false,new double[] {5,6,7,8});
prod = a.DotProd(b,0,0,4); // = 1*5 + 2*6 + * 3*7 + 4*8