Matrix.AddScaled Method

Overload List

#SignatureDescription
1function AddScaled(const Vec: TMtxVec; aScale: TCplx): TMtxVec;Add each of Vec elements to corresponding elements in the calling object.
└ indexed: function AddScaled(const Vec: TMtxVec; aScale: TCplx; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;
2function AddScaled(const X: TMtxVec; const xScale: TCplx; const Y: TMtxVec; const yScale: TCplx): TMtxVec;self = X*xScale + Y*yScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: TCplx; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; Index: Integer; Len: Integer): TMtxVec;
3function AddScaled(const X: TMtxVec; const xScale: TCplx; const Y: TMtxVec; const yScale: TCplx; const Z: TMtxVec; const zScale: TCplx): TMtxVec;self = X*xScale + Y*yScale + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: TCplx; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;
4function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: TCplx): TMtxVec;self = X + Y*yScale with complex arguments
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; Index: Integer; Len: Integer): TMtxVec;
5function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: TCplx; const Z: TMtxVec; const zScale: TCplx): TMtxVec;self = X + Y*yScale + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;
6function AddScaled(const X: TMtxVec; const Y: TMtxVec; const Z: TMtxVec; const zScale: TCplx): TMtxVec;self = X + Y + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;
7function AddScaled(const X: TMtxVec; const Y: TMtxVec; const Z: TMtxVec; const zScale: Double): TMtxVec;self = X + Y + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;
8function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: Double): TMtxVec;self = X + Y*yScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: Double; Index: Integer; Len: Integer): TMtxVec;
9function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: Double; const Z: TMtxVec; const zScale: Double): TMtxVec;self = X + Y*yScale + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: Double; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;
10function AddScaled(const Vec: TMtxVec; aScale: Double): TMtxVec;Add each of Vec elements to corresponding elements in the calling object.
└ indexed: function AddScaled(const Vec: TMtxVec; aScale: Double; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;
11function AddScaled(const X: TMtxVec; const xScale: Double; const Y: TMtxVec; const yScale: Double): TMtxVec;self = X*xScale + Y*yScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: Double; const Y: TMtxVec; YIndex: Integer; const yScale: Double; Index: Integer; Len: Integer): TMtxVec;
12function AddScaled(const X: TMtxVec; const xScale: Double; const Y: TMtxVec; const yScale: Double; const Z: TMtxVec; const zScale: Double): TMtxVec;self = X*xScale + Y*yScale + Z*zScale
└ indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: Double; const Y: TMtxVec; YIndex: Integer; const yScale: Double; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;
13function AddScaled(const Vec: TMtxVec; RScale: Double; IScale: Double): TMtxVec;Add each of Vec elements to corresponding elements in the calling object.

Overload 1: function AddScaled(const Vec: TMtxVec; aScale: TCplx): TMtxVec;

Add each of Vec elements to corresponding elements in the calling object.

#NameTypeDescription
1VecTMtxVec
2aScaleTCplxscalar

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

Remarks:

In addition, the following formula is begin used:

result = result+ aScale*Vec . 

The results are stored in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match the Vec object.

Indexed: function AddScaled(const Vec: TMtxVec; aScale: TCplx; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;

Adds Vec elements [VecIndex]..[VecIndex+Len-1] to calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1VecTMtxVec
2aScaleTCplxscalar
3VecIndexInteger
4IndexIntegerstart index
5LenIntegerelement count

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

Remarks:

In addition, the following formula is begin used:

result = result+ aScale*Vec . 

An exception is raised if Matrix.ConditionCheck is true and array borders are overrun.

Overload 2: function AddScaled(const X: TMtxVec; const xScale: TCplx; const Y: TMtxVec; const yScale: TCplx): TMtxVec;

Compute X*xScale + Y*yScale

#NameTypeDescription
1XTMtxVec
2xScaleTCplx
3YTMtxVec
4yScaleTCplx

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: TCplx; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; Index: Integer; Len: Integer): TMtxVec;

Compute X*xScale + Y*yScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3xScaleTCplx
4YTMtxVec
5YIndexIntegerY start index
6yScaleTCplx
7IndexIntegerstart index
8LenIntegerelement count

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

Overload 3: function AddScaled(const X: TMtxVec; const xScale: TCplx; const Y: TMtxVec; const yScale: TCplx; const Z: TMtxVec; const zScale: TCplx): TMtxVec;

Compute X*xScale + Y*yScale + Z*zScale

#NameTypeDescription
1XTMtxVec
2xScaleTCplx
3YTMtxVec
4yScaleTCplx
5ZTMtxVec
6zScaleTCplx

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: TCplx; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;

Compute X*xScale + Y*yScale + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3xScaleTCplx
4YTMtxVec
5YIndexIntegerY start index
6yScaleTCplx
7ZTMtxVec
8zIndexInteger
9zScaleTCplx
10IndexIntegerstart index
11LenIntegerelement count

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

Overload 4: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: TCplx): TMtxVec;

Compute X + Y*yScale with complex arguments.

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3yScaleTCplx

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y*yScale on sub arrays with complex arguments.

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5yScaleTCplx
6IndexIntegerstart index
7LenIntegerelement count

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

Overload 5: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: TCplx; const Z: TMtxVec; const zScale: TCplx): TMtxVec;

Compute X + Y*yScale + Z*zScale

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3yScaleTCplx
4ZTMtxVec
5zScaleTCplx

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: TCplx; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y*yScale + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5yScaleTCplx
6ZTMtxVec
7zIndexInteger
8zScaleTCplx
9IndexIntegerstart index
10LenIntegerelement count

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

Overload 6: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const Z: TMtxVec; const zScale: TCplx): TMtxVec;

Compute X + Y + Z*zScale

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3ZTMtxVec
4zScaleTCplx

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const Z: TMtxVec; zIndex: Integer; const zScale: TCplx; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5ZTMtxVec
6zIndexInteger
7zScaleTCplx
8IndexIntegerstart index
9LenIntegerelement count

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

Overload 7: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const Z: TMtxVec; const zScale: Double): TMtxVec;

Compute X + Y + Z*zScale

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3ZTMtxVec
4zScaleDouble

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5ZTMtxVec
6zIndexInteger
7zScaleDouble
8IndexIntegerstart index
9LenIntegerelement count

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

Overload 8: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: Double): TMtxVec;

Compute X + Y*yScale

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3yScaleDouble

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: Double; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y*yScale on sub arrays.

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5yScaleDouble
6IndexIntegerstart index
7LenIntegerelement count

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

Overload 9: function AddScaled(const X: TMtxVec; const Y: TMtxVec; const yScale: Double; const Z: TMtxVec; const zScale: Double): TMtxVec;

Compute X + Y*yScale + Z*zScale

#NameTypeDescription
1XTMtxVec
2YTMtxVec
3yScaleDouble
4ZTMtxVec
5zScaleDouble

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const Y: TMtxVec; YIndex: Integer; const yScale: Double; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;

Compute X + Y*yScale + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3YTMtxVec
4YIndexIntegerY start index
5yScaleDouble
6ZTMtxVec
7zIndexInteger
8zScaleDouble
9IndexIntegerstart index
10LenIntegerelement count

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

Overload 10: function AddScaled(const Vec: TMtxVec; aScale: Double): TMtxVec;

Add each of Vec elements to corresponding elements in the calling object.

#NameTypeDescription
1VecTMtxVec
2aScaleDoublescalar

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

Remarks:

In addition, the following formula is begin used:

result = result+ aScale*Vec . 

The results are stored in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match the Vec object.

Indexed: function AddScaled(const Vec: TMtxVec; aScale: Double; VecIndex: Integer; Index: Integer; Len: Integer): TMtxVec;

Adds Vec elements [VecIndex]..[VecIndex+Len-1] to calling object elements [Index]..[Index+Len-1].

#NameTypeDescription
1VecTMtxVec
2aScaleDoublescalar
3VecIndexInteger
4IndexIntegerstart index
5LenIntegerelement count

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

Remarks:

In addition, the following formula is begin used:

result = result+ Cplx(aScale)*Vec . 

An exception is raised if Matrix.ConditionCheck is true and array borders are overrun.

Overload 11: function AddScaled(const X: TMtxVec; const xScale: Double; const Y: TMtxVec; const yScale: Double): TMtxVec;

Compute X*xScale + Y*yScale

#NameTypeDescription
1XTMtxVec
2xScaleDouble
3YTMtxVec
4yScaleDouble

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: Double; const Y: TMtxVec; YIndex: Integer; const yScale: Double; Index: Integer; Len: Integer): TMtxVec;

Compute X*xScale + Y*yScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3xScaleDouble
4YTMtxVec
5YIndexIntegerY start index
6yScaleDouble
7IndexIntegerstart index
8LenIntegerelement count

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

Overload 12: function AddScaled(const X: TMtxVec; const xScale: Double; const Y: TMtxVec; const yScale: Double; const Z: TMtxVec; const zScale: Double): TMtxVec;

Compute X*xScale + Y*yScale + Z*zScale

#NameTypeDescription
1XTMtxVec
2xScaleDouble
3YTMtxVec
4yScaleDouble
5ZTMtxVec
6zScaleDouble

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

Indexed: function AddScaled(const X: TMtxVec; XIndex: Integer; const xScale: Double; const Y: TMtxVec; YIndex: Integer; const yScale: Double; const Z: TMtxVec; zIndex: Integer; const zScale: Double; Index: Integer; Len: Integer): TMtxVec;

Compute X*xScale + Y*yScale + Z*zScale on sub arrays

#NameTypeDescription
1XTMtxVec
2XIndexIntegerX start index
3xScaleDouble
4YTMtxVec
5YIndexIntegerY start index
6yScaleDouble
7ZTMtxVec
8zIndexInteger
9zScaleDouble
10IndexIntegerstart index
11LenIntegerelement count

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

Overload 13: function AddScaled(const Vec: TMtxVec; RScale: Double; IScale: Double): TMtxVec;

Add each of Vec elements to corresponding elements in the calling object.

#NameTypeDescription
1VecTMtxVec
2RScaleDoublescalar
3IScaleDoublescalar

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

Remarks:

In addition, the following formula is begin used:

result = result+ Cplx(RScale,IScale)*Vec . 

When default values for parameters are being used the "normal" addition is being performed. The results are stored in the calling object. Size and Matrix.Complex properties of the calling object are set implicitly to match the Vec object.