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. |
| └ 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: Vector;
begin
a.SetIt(False,[1,2,4,8]);
a.Log2; //same as:
a := Log2(a);
b := Log2(a); //same as:
b.Log2(a);
end;
var
a, expected: Vector;
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('Vector.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 Vector.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.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtxVec |
Result: stored in self (calling object), returns self for chaining
Store the results in the calling object. Size and Vector.Complex properties of the calling vector are set implicitly to match the X object.
var
a, x, expected: Vector;
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('Vector.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].
| # | 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
Store the results in the calling object elements [Index]..[Index+Len-1]. Size and Vector.Complex properties of the calling object must be set explicitly. An exception is raised if Vector.ConditionCheck is True and array borders are overrun.