clMatrix.Divide Method

Overload List

#SignatureDescription
1function Divide(const Vec: TOpenCLMtxVec): TOpenCLMtxVec;Divide each of calling vector elements with corresponding elements in the Vec object.
└ indexed: function Divide(const Vec: TOpenCLMtxVec; VecIndex: Integer; Index: Integer; Len: Integer): TOpenCLMtxVec;
2function Divide(Num: TOpenCLMtxVec; Den: TOpenCLMtxVec): TOpenCLMtxVec;Divide each of Num elements with corresponding elements in Den.
3function Divide(Num: TOpenCLMtxVec; Den: TOpenCLMtxVec; NumIndex: Integer; DenIndex: Integer; Index: Integer; Len: Integer): TOpenCLMtxVec;Divide [NumIndex]..[NumIndex+Len-1] Num elements with [DenIndex]..[DenIndex+Len-1] elements in Den.

Overload 1: function Divide(const Vec: TOpenCLMtxVec): TOpenCLMtxVec;

Divide each of calling vector elements with corresponding elements in the Vec object.

#NameTypeDescription
1VecTOpenCLMtxVec

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

Remarks:

Size and clMatrix.Complex property of the calling object are set automatically. The result is stored in the calling object.

The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.

Indexed: function Divide(const Vec: TOpenCLMtxVec; VecIndex: Integer; Index: Integer; Len: Integer): TOpenCLMtxVec;

Divide calling vector elements [Index]...[Index+Len-1] with corresponding elements [VecIndex]...[VecIndex+Len-1] from the Vec object.

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

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

Remarks:

Store the result in the claling vector. The TOpenCLBase.Length of the calling vector is not changed. An exception is raised if array borders are overrun or underrun.

The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.

Overload 2: function Divide(Num: TOpenCLMtxVec; Den: TOpenCLMtxVec): TOpenCLMtxVec;

Divide each of Num elements with corresponding elements in Den.

#NameTypeDescription
1NumTOpenCLMtxVecsource TOpenCLVector or TOpenCLMatrix
2DenTOpenCLMtxVecsource TOpenCLVector or TOpenCLMatrix

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

Remarks:

Size and clMatrix.Complex property of the calling object are set automatically. The result is stored in the calling object.

The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.

Overload 3: function Divide(Num: TOpenCLMtxVec; Den: TOpenCLMtxVec; NumIndex: Integer; DenIndex: Integer; Index: Integer; Len: Integer): TOpenCLMtxVec;

Divide [NumIndex]..[NumIndex+Len-1] Num elements with [DenIndex]..[DenIndex+Len-1] elements in Den.

#NameTypeDescription
1NumTOpenCLMtxVecsource TOpenCLVector or TOpenCLMatrix
2DenTOpenCLMtxVecsource TOpenCLVector or TOpenCLMatrix
3NumIndexInteger
4DenIndexInteger
5IndexIntegerstart index
6LenIntegerelement count

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

Remarks:

and store result in the calling vector at positions [Index]..[Index+Len-1] clMatrix.Size and clMatrix.Complex property of the calling object are not changed. An exception is raised if array borders are overrun or underrun.

The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.