Matrix.AddScaledSqr Method

Overload List

#SignatureDescription
1TMtxVec AddScaledSqr(TMtxVec X, TCplx xScale, TMtxVec Y, TCplx yScale)self = sqr(X*xScale + Y*yScale)
└ indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TCplx xScale, TMtxVec Y, Int32 YIndex, TCplx yScale, Int32 Index, Int32 Len)
2TMtxVec AddScaledSqr(TMtxVec X, TMtxVec Y, TCplx yScale)self = sqr(X + Y*yScale)
└ indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TMtxVec Y, Int32 YIndex, TCplx yScale, Int32 Index, Int32 Len)
3TMtxVec AddScaledSqr(TMtxVec X, TMtxVec Y, Double yScale)self = sqr(X + Y*yScale)
└ indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TMtxVec Y, Int32 YIndex, Double yScale, Int32 Index, Int32 Len)
4TMtxVec AddScaledSqr(TMtxVec X, Double xScale, TMtxVec Y, Double yScale)self = sqr(X*xScale + Y*yScale)
└ indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, Double xScale, TMtxVec Y, Int32 YIndex, Double yScale, Int32 Index, Int32 Len)

Overload 1: TMtxVec AddScaledSqr(TMtxVec X, TCplx xScale, TMtxVec Y, TCplx yScale)

Compute sqr(X*xScale + Y*yScale)

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2xScaleTCplxscalar
3YTMtxVecsource TVec or TMtx
4yScaleTCplxscalar

Result: stored in self (calling object), returns self for chaining

Indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TCplx xScale, TMtxVec Y, Int32 YIndex, TCplx yScale, Int32 Index, Int32 Len)

Compute sqr(X*xScale + Y*yScale) on sub arrays

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2XIndexInt32X start index
3xScaleTCplxscalar
4YTMtxVecsource TVec or TMtx
5YIndexInt32Y start index
6yScaleTCplxscalar
7IndexInt32start index
8LenInt32element count

Result: stored in self (calling object), returns self for chaining

Overload 2: TMtxVec AddScaledSqr(TMtxVec X, TMtxVec Y, TCplx yScale)

Compute sqr(X + Y*yScale)

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2YTMtxVecsource TVec or TMtx
3yScaleTCplxscalar

Result: stored in self (calling object), returns self for chaining

Indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TMtxVec Y, Int32 YIndex, TCplx yScale, Int32 Index, Int32 Len)

Compute sqr(X + Y*yScale) on sub arrays

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2XIndexInt32X start index
3YTMtxVecsource TVec or TMtx
4YIndexInt32Y start index
5yScaleTCplxscalar
6IndexInt32start index
7LenInt32element count

Result: stored in self (calling object), returns self for chaining

Overload 3: TMtxVec AddScaledSqr(TMtxVec X, TMtxVec Y, Double yScale)

Compute sqr(X + Y*yScale)

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2YTMtxVecsource TVec or TMtx
3yScaleDoublescalar

Result: stored in self (calling object), returns self for chaining

Remarks:

By making use of yScale, it is also possible to compute the following (at the same or higher speed):

(X - Y)^2 = X^2 - 2XY +Y^2

Indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, TMtxVec Y, Int32 YIndex, Double yScale, Int32 Index, Int32 Len)

Compute sqr(X + Y*yScale) on sub arrays

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2XIndexInt32X start index
3YTMtxVecsource TVec or TMtx
4YIndexInt32Y start index
5yScaleDoublescalar
6IndexInt32start index
7LenInt32element count

Result: stored in self (calling object), returns self for chaining

Overload 4: TMtxVec AddScaledSqr(TMtxVec X, Double xScale, TMtxVec Y, Double yScale)

Compute sqr(X*xScale + Y*yScale)

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2xScaleDoublescalar
3YTMtxVecsource TVec or TMtx
4yScaleDoublescalar

Result: stored in self (calling object), returns self for chaining

Indexed: TMtxVec AddScaledSqr(TMtxVec X, Int32 XIndex, Double xScale, TMtxVec Y, Int32 YIndex, Double yScale, Int32 Index, Int32 Len)

Compute sqr(X*xScale + Y*yScale) on sub arrays

#NameTypeDescription
1XTMtxVecsource TVec or TMtx
2XIndexInt32X start index
3xScaleDoublescalar
4YTMtxVecsource TVec or TMtx
5YIndexInt32Y start index
6yScaleDoublescalar
7IndexInt32start index
8LenInt32element count

Result: stored in self (calling object), returns self for chaining