Overload List
| # | Signature | Description |
|---|---|---|
| 1 | TMtxVec *Mul(const double Value); | Multiply object elements with Value. |
| 2 | TMtxVec *Mul(const TCplx &Value); | Multiply all calling object elements with complex Value in-place. |
| 3 | TMtxVec *Mul(const double Value, int Index, int Len); | Multipy calling object elements [Index]..[Index+Len-1] with Value in-place. |
| 4 | TMtxVec *Mul(const TCplx &Value, int Index, int Len); | Multipy calling object elements [Index]..[Index+Len-1] with complex Value in-place. |
| 5 | TMtxVec *Mul(TMtxVec *Vec, const double Value); | Multiply each element of Vec with Value. |
| 6 | TMtxVec *Mul(TMtxVec *Vec, const TCplx &Value); | Multiply each element of Vec with complex Value. |
| 7 | TMtxVec *Mul(TMtxVec *Vec, const double Value, int VecIndex, int Index, int Len); | Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with Value. |
| 8 | TMtxVec *Mul(TMtxVec *Vec, const TCplx &Value, int VecIndex, int Index, int Len); | Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with complex Value. |
| 9 | void Mul(TSparseMtx *C, TSparseMtx *B, int MaxNonZeroCount = 10000000); | Multiply two sparse matrices (matrix multiplication). |
Overload 1: TMtxVec *Mul(const double Value);
Multiply object elements with Value.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Value | const double |
Multiplies all calling object elements with Value in-place.
Overload 2: TMtxVec *Mul(const TCplx &Value);
Multiply all calling object elements with complex Value in-place.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Value | const TCplx & |
Overload 3: TMtxVec *Mul(const double Value, int Index, int Len);
Multipy calling object elements [Index]..[Index+Len-1] with Value in-place.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Value | const double | |
| 2 | Index | int | |
| 3 | Len | int |
An exception is raised if array borders are overrun or underrun.
Overload 4: TMtxVec *Mul(const TCplx &Value, int Index, int Len);
Multipy calling object elements [Index]..[Index+Len-1] with complex Value in-place.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Value | const TCplx & | |
| 2 | Index | int | |
| 3 | Len | int |
An exception is raised if array borders are overrun or underrun.
Overload 5: TMtxVec *Mul(TMtxVec *Vec, const double Value);
Multiply each element of Vec with Value.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Value | const double |
Store the result in the calling object. Size and TSparseMtx::Complex properties of the calling object are adjusted automatically.
Overload 6: TMtxVec *Mul(TMtxVec *Vec, const TCplx &Value);
Multiply each element of Vec with complex Value.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Value | const TCplx & |
Store the result in the calling object. Size of the calling object is set automatically. TSparseMtx::Complex property of the calling object is set to True.
Overload 7: TMtxVec *Mul(TMtxVec *Vec, const double Value, int VecIndex, int Index, int Len);
Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with Value.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Value | const double | |
| 3 | VecIndex | int | |
| 4 | Index | int | |
| 5 | Len | int |
Store the result in calling object elements [Index]..[Index+Len-1]. Size of the calling object is not changed. An exception is raised if array borders are overrun or underrun. TSparseMtx::Complex propertiy of the calling object is set implicitly.
Overload 8: TMtxVec *Mul(TMtxVec *Vec, const TCplx &Value, int VecIndex, int Index, int Len);
Multiply Vec elements [VecIndex]..[VecIndex+Len-1] with complex Value.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Value | const TCplx & | |
| 3 | VecIndex | int | |
| 4 | Index | int | |
| 5 | Len | int |
Store the result in calling object elements [Index]..[Index+Len-1]. Size of the calling object is not changed. An exception is raised if array borders are overrun or underrun. TSparseMtx::Complex propertiy of the calling object is set to True.
Overload 9: void Mul(TSparseMtx *C, TSparseMtx *B, int MaxNonZeroCount = 10000000);
Multiply two sparse matrices (matrix multiplication).
| # | Name | Type | Description |
|---|---|---|---|
| 1 | C | TSparseMtx * | |
| 2 | B | TSparseMtx * | |
| 3 | MaxNonZeroCount = 10000000 | int |
Multiply sparse matrices A and B and place the result in the calling matrix. Because the resulting matrix can be much less sparse, the memory requirements can increase beyond the available system memory. This method will raise an exception, if the requested memory size will exceed the value of MaxNonZeroCount.