ManagedSparseLinearAlgebraOperationsOfSingle.MultiplyAndAddInPlace Method

Definition

Namespace: Extreme.Mathematics.LinearAlgebra.Implementation
Assembly: Extreme.Numerics.SinglePrecision (in Extreme.Numerics.SinglePrecision.dll) Version: 8.1.4

Overload List

MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Complex<Single>, MatrixStructure, MatrixTriangle, MatrixDiagonal, Complex<Single>[], Int32[], Int32[], Int32[], ArraySlice<Complex<Single>>, Complex<Single>, ArraySlice<Complex<Single>>)

Multiplies a dense vector by a sparse matrix in Compressed Sparse Column (CSC) format.
C#
public override void MultiplyAndAddInPlace(
	TransposeOperation transA,
	int m,
	int k,
	Complex<float> alpha,
	MatrixStructure structure,
	MatrixTriangle storedTriangle,
	MatrixDiagonal matrixDiagonal,
	Complex<float>[] a,
	int[] aRows,
	int[] aPointerB,
	int[] aPointerE,
	ArraySlice<Complex<float>> x,
	Complex<float> beta,
	ArraySlice<Complex<float>> y
)

Parameters

transA  TransposeOperation
Specifies the operation to be performed on the matrix a.
m  Int32
The number of rows in the matrix a.
k  Int32
The number of columns in the matrix a.
alpha  Complex<Single>
The scalar used to multiply the matrix-vector product.
structure  MatrixStructure
A MatrixStructure value that specifies the structure of the matrix.
storedTriangle  MatrixTriangle
A MatrixTriangle value that specifies whether the matrix is upper or lower triangular.
matrixDiagonal  MatrixDiagonal
A MatrixDiagonal value that indicates whether the diagonal elements are all 1 or not.
a  Complex<Single>[]
Reference to the first element in a one-dimensional array that contains the elements of the matrix.
aRows  Int32[]
Integer array that contains the 1-based row indices of the corresponding elements of a.
aPointerB  Int32[]
Integer array of length m containing the 1-based indices into a of the first component of each column.
aPointerE  Int32[]
Integer array of length m containing the 1-based indices into a of the first component of each column.
x  ArraySlice<Complex<Single>>
A reference to a one-dimensional array containing the elements of the vector x.
beta  Complex<Single>
The scalar used to multiply y.
y  ArraySlice<Complex<Single>>
A reference to a one-dimensional array containing the elements of the vector y. The elements of y are overwritten with the result.

Implements

ISparseLinearAlgebraOperations<T>.MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, T, MatrixStructure, MatrixTriangle, MatrixDiagonal, T[], Int32[], Int32[], Int32[], ArraySlice<T>, T, ArraySlice<T>)

MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Single, MatrixStructure, MatrixTriangle, MatrixDiagonal, Single[], Int32[], Int32[], Int32[], ArraySlice<Single>, Single, ArraySlice<Single>)

Multiplies a dense vector by a sparse matrix in Compressed Sparse Column (CSC) format.
C#
public override void MultiplyAndAddInPlace(
	TransposeOperation transA,
	int m,
	int k,
	float alpha,
	MatrixStructure structure,
	MatrixTriangle storedTriangle,
	MatrixDiagonal matrixDiagonal,
	float[] a,
	int[] aRows,
	int[] aPointerB,
	int[] aPointerE,
	ArraySlice<float> x,
	float beta,
	ArraySlice<float> y
)

Parameters

transA  TransposeOperation
Specifies the operation to be performed on the matrix a.
m  Int32
The number of rows in the matrix a.
k  Int32
The number of columns in the matrix a.
alpha  Single
The scalar used to multiply the matrix-vector product.
structure  MatrixStructure
A MatrixStructure value that specifies the structure of the matrix.
storedTriangle  MatrixTriangle
A MatrixTriangle value that specifies whether the matrix is upper or lower triangular.
matrixDiagonal  MatrixDiagonal
A MatrixDiagonal value that indicates whether the diagonal elements are all 1 or not.
a  Single[]
Reference to the first element in a one-dimensional array that contains the elements of the matrix.
aRows  Int32[]
Integer array that contains the 1-based row indices of the corresponding elements of a.
aPointerB  Int32[]
Integer array of length m containing the 1-based indices into a of the first component of each column.
aPointerE  Int32[]
Integer array of length m containing the 1-based indices into a of the first component of each column.
x  ArraySlice<Single>
A reference to a one-dimensional array containing the elements of the vector x.
beta  Single
The scalar used to multiply y.
y  ArraySlice<Single>
A reference to a one-dimensional array containing the elements of the vector y. The elements of y are overwritten with the result.

Implements

ISparseLinearAlgebraOperations<T>.MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, T, MatrixStructure, MatrixTriangle, MatrixDiagonal, T[], Int32[], Int32[], Int32[], ArraySlice<T>, T, ArraySlice<T>)

MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Int32, Complex<Single>, MatrixStructure, MatrixTriangle, MatrixDiagonal, Complex<Single>[], Int32[], Int32[], Int32[], Array2D<Complex<Single>>, Complex<Single>, Array2D<Complex<Single>>)

Multiplies a matrix in compressed sparse column format with a dense matrix.
C#
public override void MultiplyAndAddInPlace(
	TransposeOperation transA,
	int m,
	int n,
	int k,
	Complex<float> alpha,
	MatrixStructure structure,
	MatrixTriangle storedTriangle,
	MatrixDiagonal matrixDiagonal,
	Complex<float>[] a,
	int[] aRows,
	int[] aPointerB,
	int[] aPointerE,
	Array2D<Complex<float>> b,
	Complex<float> beta,
	Array2D<Complex<float>> c
)

Parameters

transA  TransposeOperation
m  Int32
The number of rows in the matrix A.
n  Int32
The number of columns in the matrix C.
k  Int32
The number of columns in the matric A.
alpha  Complex<Single>
The multiplier for the matrix product.
structure  MatrixStructure
A MatrixStructure value that specifies the structural properties of the matrix A
storedTriangle  MatrixTriangle
A MatrixTriangle value that specifies whether the upper or lower triangular part of the matrix is used.
matrixDiagonal  MatrixDiagonal
A MatrixDiagonal value that specifies whether the diagonal of the sparse matrix contains all 1's.
a  Complex<Single>[]
A Double array that contains the values of the elements of the matrix A.
aRows  Int32[]
An integer array that contains the row indexes corresponding to the values in a.
aPointerB  Int32[]
An integer array that specifies the index into a and aRows of the first element of each column.
aPointerE  Int32[]
An integer array that specifies the index into a and aRows past the last element of each column.
b  Array2D<Complex<Single>>
A Double array that contains the components of the dense matrix.
beta  Complex<Single>
Multiplier for the matrix C.
c  Array2D<Complex<Single>>
A Double array that contains the components of the (dense) result matrix.

Implements

ISparseLinearAlgebraOperations<T>.MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Int32, T, MatrixStructure, MatrixTriangle, MatrixDiagonal, T[], Int32[], Int32[], Int32[], Array2D<T>, T, Array2D<T>)

MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Int32, Single, MatrixStructure, MatrixTriangle, MatrixDiagonal, Single[], Int32[], Int32[], Int32[], Array2D<Single>, Single, Array2D<Single>)

Multiplies a matrix in compressed sparse column format with a dense matrix.
C#
public override void MultiplyAndAddInPlace(
	TransposeOperation transA,
	int m,
	int n,
	int k,
	float alpha,
	MatrixStructure structure,
	MatrixTriangle storedTriangle,
	MatrixDiagonal matrixDiagonal,
	float[] a,
	int[] aRows,
	int[] aPointerB,
	int[] aPointerE,
	Array2D<float> b,
	float beta,
	Array2D<float> c
)

Parameters

transA  TransposeOperation
m  Int32
The number of rows in the matrix A.
n  Int32
The number of columns in the matrix C.
k  Int32
The number of columns in the matric A.
alpha  Single
The multiplier for the matrix product.
structure  MatrixStructure
A MatrixStructure value that specifies the structural properties of the matrix A
storedTriangle  MatrixTriangle
A MatrixTriangle value that specifies whether the upper or lower triangular part of the matrix is used.
matrixDiagonal  MatrixDiagonal
A MatrixDiagonal value that specifies whether the diagonal of the sparse matrix contains all 1's.
a  Single[]
A Double array that contains the values of the elements of the matrix A.
aRows  Int32[]
An integer array that contains the row indexes corresponding to the values in a.
aPointerB  Int32[]
An integer array that specifies the index into a and aRows of the first element of each column.
aPointerE  Int32[]
An integer array that specifies the index into a and aRows past the last element of each column.
b  Array2D<Single>
A Double array that contains the components of the dense matrix.
beta  Single
Multiplier for the matrix C.
c  Array2D<Single>
A Double array that contains the components of the (dense) result matrix.

Implements

ISparseLinearAlgebraOperations<T>.MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Int32, T, MatrixStructure, MatrixTriangle, MatrixDiagonal, T[], Int32[], Int32[], Int32[], Array2D<T>, T, Array2D<T>)
ISparseLinearAlgebraOperations<T>.MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, Int32, T, MatrixStructure, MatrixTriangle, MatrixDiagonal, T[], Int32[], Int32[], Int32[], Array2D<T>, T, Array2D<T>)

See Also