Overload List
| # | Signature | Description |
|---|---|---|
| 1 | Matrix AddScaledC(TMtx X, TCplx xScale, TMtxVec Y, TCplx yScale, TCplx Z) | Result = X*xScale + Y*yScale + zScalar, where X is a Matrix |
| 2 | Matrix AddScaledC(TMtx X, TMtxVec Y, TCplx yScale, TCplx Z) | Result = X + Y*yScale + zScalar, where X is a Matrix |
| 3 | Matrix AddScaledC(TMtx X, TMtxVec Y, Double yScale, Double Z) | Result = X + Y*yScale + zScalar, where X is a Matrix |
| 4 | Matrix AddScaledC(TMtx X, Double xScale, TMtxVec Y, Double yScale, Double Z) | Result = X*xScale + Y*yScale + zScalar, when X is a Matrix |
| 5 | Vector AddScaledC(TVec X, TCplx xScale, TMtxVec Y, TCplx yScale, TCplx Z) | Result = X*xScale + Y*yScale + zScalar |
| 6 | Vector AddScaledC(TVec X, TMtxVec Y, TCplx yScale, TCplx Z) | Result = X + Y*yScale + zScalar |
| 7 | Vector AddScaledC(TVec X, TMtxVec Y, Double yScale, Double Z) | Result = X + Y*yScale + zScalar |
| 8 | Vector AddScaledC(TVec X, Double xScale, TMtxVec Y, Double yScale, Double Z) | Result = X*xScale + Y*yScale + zScalar |
Overload 1: Matrix AddScaledC(TMtx X, TCplx xScale, TMtxVec Y, TCplx yScale, TCplx Z)
Compute X*xScale + Y*yScale + zScalar, where X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx | source TMtx |
| 2 | xScale | TCplx | scalar |
| 3 | Y | TMtxVec | source TVec or TMtx |
| 4 | yScale | TCplx | scalar |
| 5 | Z | TCplx | scalar |
Returns: Matrix
Overload 2: Matrix AddScaledC(TMtx X, TMtxVec Y, TCplx yScale, TCplx Z)
Compute X + Y*yScale + zScalar, where X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx | source TMtx |
| 2 | Y | TMtxVec | source TVec or TMtx |
| 3 | yScale | TCplx | scalar |
| 4 | Z | TCplx | scalar |
Returns: Matrix
Overload 3: Matrix AddScaledC(TMtx X, TMtxVec Y, Double yScale, Double Z)
Compute X + Y*yScale + zScalar, where X is a Matrix.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx | source TMtx |
| 2 | Y | TMtxVec | source TVec or TMtx |
| 3 | yScale | Double | scalar |
| 4 | Z | Double | scalar |
Returns: Matrix
Overload 4: Matrix AddScaledC(TMtx X, Double xScale, TMtxVec Y, Double yScale, Double Z)
Compute X*xScale + Y*yScale + zScalar, when X is a Matrix
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TMtx | source TMtx |
| 2 | xScale | Double | scalar |
| 3 | Y | TMtxVec | source TVec or TMtx |
| 4 | yScale | Double | scalar |
| 5 | Z | Double | scalar |
Returns: Matrix
Overload 5: Vector AddScaledC(TVec X, TCplx xScale, TMtxVec Y, TCplx yScale, TCplx Z)
Compute X*xScale + Y*yScale + zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec | source TVec |
| 2 | xScale | TCplx | scalar |
| 3 | Y | TMtxVec | source TVec or TMtx |
| 4 | yScale | TCplx | scalar |
| 5 | Z | TCplx | scalar |
Returns: Vector
Overload 6: Vector AddScaledC(TVec X, TMtxVec Y, TCplx yScale, TCplx Z)
Compute X + Y*yScale + zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec | source TVec |
| 2 | Y | TMtxVec | source TVec or TMtx |
| 3 | yScale | TCplx | scalar |
| 4 | Z | TCplx | scalar |
Returns: Vector
Overload 7: Vector AddScaledC(TVec X, TMtxVec Y, Double yScale, Double Z)
Compute X + Y*yScale + zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec | source TVec |
| 2 | Y | TMtxVec | source TVec or TMtx |
| 3 | yScale | Double | scalar |
| 4 | Z | Double | scalar |
Returns: Vector
Remarks:
Computes the sum of X and Y scaled by yScale, with an added scalar zScalar, without creating temporary objects.
Examples
using Dew.Math;
using Dew.Math.Units;
namespace Dew.Examples
{
void Example()
{
double yScale = 1.5, zScalar = 3.0;
Vector X = (Vector) new double[] { 1, 2, 3, 4 };
Vector Y = (Vector) new double[] { 2, 3, 4, 5 };
Vector A1 = X + Y * yScale + zScalar;
Vector A2 = AddScaledC(X, Y, yScale, zScalar);
Vector A3 = new Vector();
A3.AddScaledC(X, Y, yScale, zScalar);
if (!A2.IsEqual(A1)) Math387.ERaise("Problem");
if (!A3.IsEqual(A1)) Math387.ERaise("Problem");
}
}
Overload 8: Vector AddScaledC(TVec X, Double xScale, TMtxVec Y, Double yScale, Double Z)
Compute X*xScale + Y*yScale + zScalar
| # | Name | Type | Description |
|---|---|---|---|
| 1 | X | TVec | source TVec |
| 2 | xScale | Double | scalar |
| 3 | Y | TMtxVec | source TVec or TMtx |
| 4 | yScale | Double | scalar |
| 5 | Z | Double | scalar |
Returns: Vector
Remarks:
Computes X*xScale + Y*yScale plus a scalar zScalar without temporary objects.
Examples
using Dew.Math;
using Dew.Math.Units;
namespace Dew.Examples
{
void Example()
{
double xScale = 1.0, yScale = 2.0, zScalar = 3.0;
Vector X = (Vector) new double[] { 1, 2, 3, 4 };
Vector Y = (Vector) new double[] { 2, 3, 4, 5 };
Vector A1 = X * xScale + Y * yScale + zScalar;
Vector A2 = AddScaledC(X, xScale, Y, yScale, zScalar);
Vector A3 = new Vector();
A3.AddScaledC(X, xScale, Y, yScale, zScalar);
if (!A2.IsEqual(A1)) Math387.ERaise("Problem");
if (!A3.IsEqual(A1)) Math387.ERaise("Problem");
}
}