Overload List
Overload 1: Vector SubAndMul(TVec *X, const double xScale, TMtxVec *Y, const double yScale, TMtxVec *Z, const double zScale);
Compute (X*xScale - Y*yScale)*Z*zScale
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const double | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const double | |
| 5 | Z | TMtxVec * | |
| 6 | zScale | const double |
Computes the product of (X scaled by xScale minus Y scaled by yScale) multiplied by Z scaled by zScale, without creating temporary objects.
Overload 2: Vector SubAndMul(TVec *X, const TCplx &xScale, TMtxVec *Y, const TCplx &yScale, TMtxVec *Z, const TCplx &zScale);
Compute (X*xScale - Y*yScale)*Z*zScale.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const TCplx & | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const TCplx & | |
| 5 | Z | TMtxVec * | |
| 6 | zScale | const TCplx & |
The operation does only per-element math.
Overload 3: Matrix SubAndMul(TMtx *X, const double xScale, TMtxVec *Y, const double yScale, TMtxVec *Z, const double zScale);
Compute (X*xScale - Y*yScale)*Z*zScale, when X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const double | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const double | |
| 5 | Z | TMtxVec * | |
| 6 | zScale | const double |
The operation does only per-element math.
Overload 4: Matrix SubAndMul(TMtx *X, const TCplx &xScale, TMtxVec *Y, const TCplx &yScale, TMtxVec *Z, const TCplx &zScale);
Compute (X*xScale - Y*yScale)*Z*zScale, when X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const TCplx & | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const TCplx & | |
| 5 | Z | TMtxVec * | |
| 6 | zScale | const TCplx & |
The operation does only per-element math.
Overload 5: Vector SubAndMul(TVec *X, const TCplx &xScale, TMtxVec *Y, const TCplx &yScale, const TCplx &Z);
Compute (X*xScale - Y*yScale)*zScale
Overload 6: Matrix SubAndMul(TMtx *X, const TCplx &xScale, TMtxVec *Y, const TCplx &yScale, const TCplx &Z);
Compute (X*xScale - Y*yScale)*zScale
Overload 7: Vector SubAndMul(TVec *X, const double xScale, TMtxVec *Y, const double yScale, double Z);
Compute (X*xScale - Y*yScale)*zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const double | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const double | |
| 5 | Z | double |
Computes the product of (X scaled by xScale minus Y scaled by yScale) multiplied by a scalar zScalar, without creating temporary objects.
Overload 8: Matrix SubAndMul(TMtx *X, const double xScale, TMtxVec *Y, const double yScale, const double Z);
Compute (X*xScale - Y*yScale)*zScalar, when X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const double | |
| 3 | Y | TMtxVec * | |
| 4 | yScale | const double | |
| 5 | Z | const double |
The operation does only per-element math.
Overload 9: Vector SubAndMul(TVec *X, const double xScale, double Y, TMtxVec *Z, const double zScale);
Compute (X*xScale - yScalar)*Z*zScale
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const double | |
| 3 | Y | double | |
| 4 | Z | TMtxVec * | |
| 5 | zScale | const double |
Computes the expression (X*xScale - yScalar) multiplied by Z*zScale without temporary objects.
Overload 10: Matrix SubAndMul(TMtx *X, const double xScale, double Y, TMtxVec *Z, const double zScale);
Compute (X*xScale - yScalar)*Z*zScale, where X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const double | |
| 3 | Y | double | |
| 4 | Z | TMtxVec * | |
| 5 | zScale | const double |
The operation does only per-element math.
Overload 11: Vector SubAndMul(TVec *X, const TCplx &xScale, const TCplx &Y, TMtxVec *Z, const TCplx &zScale);
Compute (X*xScale - yScalar)*Z*zScale, where X is a Matrix.
The operation does only per-element math.
Overload 12: Matrix SubAndMul(TMtx *X, const TCplx &xScale, const TCplx &Y, TMtxVec *Z, const TCplx &zScale);
Compute (X*xScale - yScalar)*Z*zScale, where X is a Matrix.
The operation does only per-element math.
Overload 13: Vector SubAndMul(TVec *X, const double xScale, double Y, double Z);
Compute (X*xScale - yScalar)*zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const double | |
| 3 | Y | double | |
| 4 | Z | double |
Computes the expression (X*xScale - yScalar) multiplied by a scalar zScalar without temporary objects.
Overload 14: Matrix SubAndMul(TMtx *X, const double xScale, double Y, double Z);
Compute (X*xScale - yScalar)*zScalar, where X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const double | |
| 3 | Y | double | |
| 4 | Z | double |
Overload 15: Vector SubAndMul(TVec *X, TMtxVec *Y, TMtxVec *Z);
Compute (X - Y)*Z
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * |
Computes the product of the difference between X and Y multiplied by Z without creating temporary objects.
Overload 16: Matrix SubAndMul(TMtx *X, TMtxVec *Y, TMtxVec *Z);
Compute (X - Y)*Z, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * |
The operation does only per-element math.
Overload 17: Vector SubAndMul(TVec *X, TMtxVec *Y, TMtxVec *Z, const double zScale);
Compute (X - Y)*Z*zScale
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * | |
| 4 | zScale | const double |
Computes the product of (X - Y) multiplied by Z and then scaled by zScale, without creating temporary objects.
Overload 18: Matrix SubAndMul(TMtx *X, TMtxVec *Y, TMtxVec *Z, const double zScale);
Compute (X - Y)*Z*zScale, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | TMtxVec * | |
| 4 | zScale | const double |
The operation does only per-element math.
Overload 19: Vector SubAndMul(TVec *X, TMtxVec *Y, const double yScale, TMtxVec *Z, const double zScale);
Compute (X - Y*yScale)*Z*zScale
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | TMtxVec * | |
| 3 | yScale | const double | |
| 4 | Z | TMtxVec * | |
| 5 | zScale | const double |
Computes the product of (X minus Y scaled by yScale) multiplied by Z and then by zScale, without creating temporary objects.
Overload 20: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const double yScale, TMtxVec *Z, const double zScale);
Compute (X - Y*yScale)*Z*zScale, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | TMtxVec * | |
| 3 | yScale | const double | |
| 4 | Z | TMtxVec * | |
| 5 | zScale | const double |
The operation does only per-element math.
Overload 21: Vector SubAndMul(TVec *X, TMtxVec *Y, const double Z);
Compute (X - Y)*zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | const double |
Computes the product of (X - Y) multiplied by a scalar zScalar without temporary objects.
Overload 22: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const double Z);
Compute (X - Y)*zScalar, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | TMtxVec * | |
| 3 | Z | const double |
Overload 23: Vector SubAndMul(TVec *X, TMtxVec *Y, const double yScale, const double Z);
Compute (X - Y*yScale)*zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | TMtxVec * | |
| 3 | yScale | const double | |
| 4 | Z | const double |
Computes the expression where Y is first scaled by yScale, then subtracted from X, and the resulting vector is multiplied by a scalar zScalar. This is performed without creating temporary objects.
Overload 24: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const double yScale, const double Z);
Compute (X - Y*yScale)*zScalar, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | TMtxVec * | |
| 3 | yScale | const double | |
| 4 | Z | const double |
Overload 25: Vector SubAndMul(TVec *X, double Y, TMtxVec *Z, const double zScale);
Compute (X - yScalar)*Z*zScale
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | double | |
| 3 | Z | TMtxVec * | |
| 4 | zScale | const double |
Subtracts a scalar yScalar from X, then multiplies the result element-wise by Z, and finally scales the product by zScale. This operation is performed without temporary objects.
Overload 26: Matrix SubAndMul(TMtx *X, double Y, TMtxVec *Z, const double zScale);
Compute (X - yScalar)*Z*zScale, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | double | |
| 3 | Z | TMtxVec * | |
| 4 | zScale | const double |
The operation does only per-element math.
Overload 27: Vector SubAndMul(TVec *X, const double xScale, const double Y, TMtxVec *Z);
Compute (X*xScale - yScalar)*Z
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | xScale | const double | |
| 3 | Y | const double | |
| 4 | Z | TMtxVec * |
Multiplies X by xScale, subtracts the scalar yScalar, and then multiplies the result element-wise by Z, without creating temporary objects.
Overload 28: Matrix SubAndMul(TMtx *X, const double xScale, const double Y, TMtxVec *Z);
Compute (X*xScale - yScalar)*Z, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | xScale | const double | |
| 3 | Y | const double | |
| 4 | Z | TMtxVec * |
The operation does only per-element math.
Overload 29: Vector SubAndMul(TVec *X, double Y, TMtxVec *Z);
Compute (X - yScalar)*Z
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | double | |
| 3 | Z | TMtxVec * |
Subtracts the scalar yScalar from X and multiplies the result element-wise by Z, without creating temporary objects.
Overload 30: Matrix SubAndMul(TMtx *X, double Y, TMtxVec *Z);
Compute (X - yScalar)*Z, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | double | |
| 3 | Z | TMtxVec * |
The operation does only per-element math.
Overload 31: Vector SubAndMul(TVec *X, double Y, double Z);
Compute (X - yScalar)*zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec * | |
| 2 | Y | double | |
| 3 | Z | double |
Computes the result of subtracting a scalar yScalar from X and then multiplying by a scalar zScalar, without creating temporary objects.
Overload 32: Matrix SubAndMul(TMtx *X, double Y, double Z);
Compute (X - yScalar)*zScalar, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx * | |
| 2 | Y | double | |
| 3 | Z | double |
The operation does only per-element math.
Overload 33: Vector SubAndMul(TVec *X, TMtxVec *Y, const TCplx &yScale, TMtxVec *Z, const TCplx &zScale);
Compute (X - Y*yScale)*Z*zScale
Overload 34: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const TCplx &yScale, TMtxVec *Z, const TCplx &zScale);
Compute (X - Y*yScale)*Z*zScale, where X is a Matrix
Overload 35: Vector SubAndMul(TVec *X, TMtxVec *Y, TMtxVec *Z, const TCplx &zScale);
Compute (X - Y)*Z*zScale
Overload 36: Matrix SubAndMul(TMtx *X, TMtxVec *Y, TMtxVec *Z, const TCplx &zScale);
Compute (X - Y)*Z*zScale, where X is a Matrix
Overload 37: Vector SubAndMul(TVec *X, TMtxVec *Y, const TCplx &Z);
Compute (X - Y)*zScalar
Overload 38: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const TCplx &Z);
Compute (X - Y)*zScalar, where X is a Matrix
Overload 39: Vector SubAndMul(TVec *X, TMtxVec *Y, const TCplx &yScale, const TCplx &Z);
Compute (X - Y*yScale)*zScalar
Overload 40: Matrix SubAndMul(TMtx *X, TMtxVec *Y, const TCplx &yScale, const TCplx &Z);
Compute (X - Y*yScale)*zScalar, where X is a Matrix
Overload 41: Vector SubAndMul(TVec *X, TCplx Y, TMtxVec *Z, const TCplx &zScale);
Compute (X - yScalar)*Z*zScale
Overload 42: Matrix SubAndMul(TMtx *X, TCplx Y, TMtxVec *Z, const TCplx &zScale);
Compute (X - yScalar)*Z*zScale, where X is a Matrix
Overload 43: Vector SubAndMul(TVec *X, const TCplx &xScale, const TCplx &Y, TMtxVec *Z);
Compute (X*xScale - yScalar)*Z
Overload 44: Matrix SubAndMul(TMtx *X, const TCplx &xScale, const TCplx &Y, TMtxVec *Z);
Compute (X*xScale - yScalar)*Z, where X is a Matrix
Overload 45: Vector SubAndMul(TVec *X, const TCplx &Y, TMtxVec *Z);
Compute (X - yScalar)*Z
Overload 46: Matrix SubAndMul(TMtx *X, const TCplx &Y, TMtxVec *Z);
Compute (X - yScalar)*Z, where X is a Matrix
Overload 47: Vector SubAndMul(TVec *X, const TCplx &Y, const TCplx &Z);
Compute (X - yScalar)*zScalar