Matrix.ConjMul Method

Overload List

#SignatureDescription
1function ConjMul(const Vec: TMtxVec): TMtxVec;Conjugate and multiply.
└ indexed: function ConjMul(const Vec: TMtxVec; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;
2function ConjMul(const Vec1: TMtxVec; const Vec2: TMtxVec): TMtxVec;Conjugate each of Vec2 elements and multiply them with corresponding elements in Vec1.
└ indexed: function ConjMul(const Vec1: TMtxVec; const Vec2: TMtxVec; Vec1Index: Integer; Vec2Index: Integer; Index: Integer; Len: Integer): TMtxVec;

Overload 1: function ConjMul(const Vec: TMtxVec): TMtxVec;

Conjugate and multiply.

#NameTypeDescription
1VecTMtxVec

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

Remarks:

Conjugate each of Matrix elements and multiply them with corresponding elements in the calling object. The results are stored in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match Vec.

Examples
var a,b,c: Matrix;
begin
    a.SetIt(1,2,True,[1,2,3,4]);
    b.SetIt(1,2,True,[4,3,2,1]);
    c.ConjMul(a,b);
end;
See Also: Matrix.Conj, Matrix.Mul

Indexed: function ConjMul(const Vec: TMtxVec; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;

Conjugate Vec elements Vec[VecIndex]..Vec[VecIndex+Len-1] and multiply them with corresponding calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1VecTMtxVec
2VecIndexInteger
3IndexIntegerstart index
4LenIntegerelement count

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

Remarks:

The results are stored in the calling object elements [Index]..[Index+Len-1]. Size and Matrix.Complex properties are not set. An exception is raised if Matrix.ConditionCheck is true and array borders are overrun or underrun.

Overload 2: function ConjMul(const Vec1: TMtxVec; const Vec2: TMtxVec): TMtxVec;

Conjugate each of Vec2 elements and multiply them with corresponding elements in Vec1.

#NameTypeDescription
1Vec1TMtxVec
2Vec2TMtxVec

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

Remarks:

The results are stored in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match Vec1 and Vec2 objects.

Indexed: function ConjMul(const Vec1: TMtxVec; const Vec2: TMtxVec; Vec1Index: Integer; Vec2Index: Integer; Index: Integer; Len: Integer): TMtxVec;

Conjugate Vec2 elements [Vec2Index]..[Vec2Index+Len-1] and multiply them with corresponding Vec1 elements [Vec1Index]..[Vec1Index+Len-1].

#NameTypeDescription
1Vec1TMtxVec
2Vec2TMtxVec
3Vec1IndexInteger
4Vec2IndexInteger
5IndexIntegerstart index
6LenIntegerelement count

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

Remarks:

The results are stored in the calling object elements [Index]..[Index+Len-1]. Size and Matrix.Complex properties of the calling Matrix must be set explicitly. An exception is raised if Matrix.ConditionCheck is true and array borders are overrun.