Overload List
| # | Signature | Description |
|---|---|---|
| 1 | function Exp2: TMtxVec; | Exponent base 2 (2^). |
| └ indexed: function Exp2(Index: Integer; Len: Integer): TMtxVec; | ||
| 2 | function Exp2(const X: TMtxVec): TMtxVec; | Calculate the exponent base 2 (2^) for all X elements and store the results in the calling object. |
| └ indexed: function Exp2(const X: TMtxVec; XIndex: Integer; Index: Integer; Len: Integer): TMtxVec; |
Overload 1: function Exp2: TMtxVec;
Exponent base 2 (2^).
Result: stored in self (calling object), returns self for chaining
Calculate the exponent base 2 (2^) for all calling object elements in-place.
var a,b: Matrix;
begin
a.SetIt(2,2,False,[1,2,3,4]); // a = [1,2,3,4]
a.Exp2; // a = [2,4,8,16]
a := Exp2(a);
b.Exp2(a); //same as
b := Exp2(a);
end;
var
a, expected: Matrix;
begin
a := [[0.0, 1.0], [2.0, 3.0]];
a.Exp2;
expected := [[1.0, 2.0], [4.0, 8.0]];
if not a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute) then
raise Exception.Create('Matrix.Exp2: mismatch');
end;
Indexed: function Exp2(Index: Integer; Len: Integer): TMtxVec;
Calculate the exponent base 2 (2^) for calling object elements [Index]..[Index+Len-1] in-place.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Index | Integer | start index |
| 2 | Len | Integer | element count |
Result: stored in self (calling object), returns self for chaining
An exception is raised if Matrix.ConditionCheck is True and array borders are overrun.
Overload 2: function Exp2(const X: TMtxVec): TMtxVec;
Calculate the exponent base 2 (2^) for all X elements and store the results in the calling object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtxVec |
Result: stored in self (calling object), returns self for chaining
Size and Matrix.Complex properties of the calling Matrix are set implicitly to match the X object.
var
a, x, expected: Matrix;
begin
x := [[0.0, 1.0], [2.0, 3.0]];
a.Exp2(x);
expected := [[1.0, 2.0], [4.0, 8.0]];
if not a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute) then
raise Exception.Create('Matrix.Exp2: mismatch');
end;
Indexed: function Exp2(const X: TMtxVec; XIndex: Integer; Index: Integer; Len: Integer): TMtxVec;
Calculate the exponent base 2 (2^) for X elements [XIndex]..[XIndex+Len-1] and store the results in the calling object elements [Index]..[Index+Len-1].
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtxVec | |
| 2 | XIndex | Integer | X start index |
| 3 | Index | Integer | start index |
| 4 | Len | Integer | element count |
Result: stored in self (calling object), returns self for chaining
Size and Matrix.Complex properties of the calling object must be set explicitly. An exception is raised if Matrix.ConditionCheck is True and array borders are overrun.