Overload List
| # | Signature | Description |
|---|---|---|
| 1 | function Log2: TMtxVec; | Log base 2. |
| └ indexed: function Log2(Index: Integer; Len: Integer): TMtxVec; | ||
| 2 | function Log2(const X: TMtxVec): TMtxVec; | Calculate the log base 2 for all X elements and store the results in the calling object. |
| └ indexed: function Log2(const X: TMtxVec; XIndex: Integer; Index: Integer; Len: Integer): TMtxVec; |
Overload 1: function Log2: TMtxVec;
Log base 2.
Result: stored in self (calling object), returns self for chaining
Calculate the log base 2 for all calling object elements in-place.
var a,b: Matrix;
begin
a.SetIt(2,2,False,[1,2,4,8]);
a.Log2; //same as:
a := Log2(a);
b := Log2(a); //same as:
b.Log2(a);
end;
var
a, expected: Matrix;
begin
a := [[1.0, 2.0], [4.0, 10.0]];
a.Log2;
expected := [[0.0, 1.0], [2.0, 3.32192809488736]];
if not a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute) then
raise Exception.Create('Matrix.Log2: mismatch');
end;
Indexed: function Log2(Index: Integer; Len: Integer): TMtxVec;
Calculate the log base 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 Log2(const X: TMtxVec): TMtxVec;
Calculate the log base 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 := [[1.0, 2.0], [4.0, 10.0]];
a.Log2(x);
expected := [[0.0, 1.0], [2.0, 3.32192809488736]];
if not a.IsEqual(expected, 1e-10, TCompare.cmpAbsolute) then
raise Exception.Create('Matrix.Log2: mismatch');
end;
Indexed: function Log2(const X: TMtxVec; XIndex: Integer; Index: Integer; Len: Integer): TMtxVec;
Calculate the log base 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.