Overload List
Overload 1: TMtxVec *Divide(TMtxVec *X, TMtxVec *Y, TMtxVec *Z) const;
Compute X / (Y*Z)
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtxVec * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * |
The following expression would also run at the same or higher speed, when passing Y also for the Z parameter:
X / (Y^2)
Overload 2: TMtxVec *Divide(TMtxVec *X, int XIndex, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;
Compute X/( Y*Z ) on sub array
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtxVec * | |
| 2 | XIndex | int | |
| 3 | Y | TMtxVec * | |
| 4 | YIndex | int | |
| 5 | Z | TMtxVec * | |
| 6 | zIndex | int | |
| 7 | Index | int | |
| 8 | Len | int |
Overload 3: TMtxVec *Divide(const double X, TMtxVec *Y, TMtxVec *Z) const;
Compute xScalar / (Y*Z)
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | const double | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * |
Overload 4: TMtxVec *Divide(const TCplx &X, TMtxVec *Y, TMtxVec *Z) const;
Compute xScalar / (Y*Z)
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | const TCplx & | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * |
Overload 5: TMtxVec *Divide(const double X, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;
Compute xScalar / (Y*Z) on sub array
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | const double | |
| 2 | Y | TMtxVec * | |
| 3 | YIndex | int | |
| 4 | Z | TMtxVec * | |
| 5 | zIndex | int | |
| 6 | Index | int | |
| 7 | Len | int |
Overload 6: TMtxVec *Divide(const TCplx &X, TMtxVec *Y, int YIndex, TMtxVec *Z, int zIndex, int Index, int Len) const;
Compute xScalar / (Y*Z) on sub array
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | const TCplx & | |
| 2 | Y | TMtxVec * | |
| 3 | YIndex | int | |
| 4 | Z | TMtxVec * | |
| 5 | zIndex | int | |
| 6 | Index | int | |
| 7 | Len | int |
Overload 7: TMtxVec *Divide(TMtxVec *Vec, double Threshold) const;
Vector division.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Threshold | double |
Divide each of Vec elements with corresponding elements in the calling object. Size and Vector::Complex property of the calling object are set automatically. The result is stored in the calling object.
The threshold parameter is used to prevent against division by zero and numerical instabilities in the follow on processing. All values of Vec smaller than Threshold will be replaced with Threshold.
Overload 8: TMtxVec *Divide(TMtxVec *Vec, double Threshold, int VecIndex, int Index, int Len) const;
Divide each of Vec elements with corresponding elements in the calling object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | Threshold | double | |
| 3 | VecIndex | int | |
| 4 | Index | int | |
| 5 | Len | int |
Store the result in the calling object. Size and Vector::Complex property of the calling object are set automatically.
Overload 9: TMtxVec *Divide(TMtxVec *Vec1, TMtxVec *Vec2, double Threshold) const;
Divide each of Vec1 elements with corresponding elements in the Vec2 object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec1 | TMtxVec * | |
| 2 | Vec2 | TMtxVec * | |
| 3 | Threshold | double |
Store the result in the calling vector.
Overload 10: TMtxVec *Divide(TMtxVec *Vec1, TMtxVec *Vec2, double Threshold, int Vec1Index, int Vec2Index, int Index, int Len) const;
Divide Vec1 elements [Vec1Index]...[Vec1Index+Len-1] with corresponding elements [Vec2Index]...[Vec2Index+Len-1] from the Vec object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec1 | TMtxVec * | |
| 2 | Vec2 | TMtxVec * | |
| 3 | Threshold | double | |
| 4 | Vec1Index | int | |
| 5 | Vec2Index | int | |
| 6 | Index | int | |
| 7 | Len | int |
Store the result in the calling vector [Index]...[Index+Len-1].
Overload 11: TMtxVec *Divide(TMtxVec *Num, TMtxVec *Den) const;
Divide each of Num elements with corresponding elements in Den.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Num | TMtxVec * | |
| 2 | Den | TMtxVec * |
Size and Vector::Complex property of the calling object are set automatically. The result is stored in the calling object.
Note
The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.
Overload 12: TMtxVec *Divide(TMtxVec *Vec) const;
Divide each of calling vector elements with corresponding elements in the Vec object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * |
Size and Vector::Complex property of the calling object are set automatically. The result is stored in the calling object.
Note
The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.
Overload 13: TMtxVec *Divide(TMtxVec *Vec, int VecIndex, int Index, int Len) const;
Divide calling vector elements [Index]...[Index+Len-1] with corresponding elements [VecIndex]...[VecIndex+Len-1] from the Vec object.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Vec | TMtxVec * | |
| 2 | VecIndex | int | |
| 3 | Index | int | |
| 4 | Len | int |
Store the result in the calling vector. The Vector::Length of the calling vector is not changed. An exception is raised if Vector::ConditionCheck is True and array borders are overrun or underrun.
Note
The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.
Overload 14: TMtxVec *Divide(TMtxVec *Num, TMtxVec *Den, int NumIndex, int DenIndex, int Index, int Len) const;
Divide [NumIndex]..[NumIndex+Len-1] Num elements with [DenIndex]..[DenIndex+Len-1] elements in Den.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Num | TMtxVec * | |
| 2 | Den | TMtxVec * | |
| 3 | NumIndex | int | |
| 4 | DenIndex | int | |
| 5 | Index | int | |
| 6 | Len | int |
Store result in the calling vector at positions [Index]..[Index+Len-1] Vector::Size and Vector::Complex property of the calling object are not changed. An exception is raised if Vector::ConditionCheck is True and array borders are overrun or underrun.
Note
The result of division by zero will be the INF constant. Division of zero by zero will result in NAN.