ManagedLinearAlgebraOperations.HermitianRankUpdate Method

Definition

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

Overload List

HermitianRankUpdate(MatrixTriangle, Int32, Double, ArraySlice<Complex<Double>>, Array2D<Complex<Double>>)

Performs a rank one update of a hermitian.
C#
public override void HermitianRankUpdate(
	MatrixTriangle storedTriangle,
	int n,
	double alpha,
	ArraySlice<Complex<double>> x,
	Array2D<Complex<double>> a
)

Parameters

storedTriangle  MatrixTriangle
Specifies whether the matrix is an upper or lower triangular matrix.
n  Int32
The number of rows and columns in the matrix a.
alpha  Double
The scalar used to multiply the outer product.
x  ArraySlice<Complex<Double>>
A reference to a one-dimensional array containing the elements of the vector x.
a  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the matrix.

HermitianRankUpdate(MatrixTriangle, Int32, Complex<Double>, ArraySlice<Complex<Double>>, ArraySlice<Complex<Double>>, Array2D<Complex<Double>>)

Performs a hermitian rank two update of a hermitian matrix.
C#
public override void HermitianRankUpdate(
	MatrixTriangle storedTriangle,
	int n,
	Complex<double> alpha,
	ArraySlice<Complex<double>> x,
	ArraySlice<Complex<double>> y,
	Array2D<Complex<double>> a
)

Parameters

storedTriangle  MatrixTriangle
Specifies whether the matrix is an upper or lower triangular matrix.
n  Int32
The number of rows and columns in the matrix a.
alpha  Complex<Double>
The scalar used to multiply the outer product.
x  ArraySlice<Complex<Double>>
A reference to a one-dimensional array containing the elements of the vector x.
y  ArraySlice<Complex<Double>>
A reference to a one-dimensional array containing the elements of the vector y.
a  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the matrix.

Implements

ILinearAlgebraOperations<T>.HermitianRankUpdate(MatrixTriangle, Int32, T, ArraySlice<T>, ArraySlice<T>, Array2D<T>)

HermitianRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, Double, Array2D<Complex<Double>>, Double, Array2D<Complex<Double>>)

Performs a rank k update of a hermitian matrix.
C#
public override void HermitianRankUpdate(
	MatrixTriangle triangle,
	TransposeOperation trans,
	int n,
	int k,
	double alpha,
	Array2D<Complex<double>> a,
	double beta,
	Array2D<Complex<double>> c
)

Parameters

triangle  MatrixTriangle
Specifies whether the elements of the matrix a are stored in the upper or lower triangular part.
trans  TransposeOperation
Specifies the operation to be performed on the matrix a.
n  Int32
The number of rows and columns in the matrix c.
k  Int32
The number of columns in the matrix a transformed as specified by trans.
alpha  Double
The scalar used to multiply the matrix-matrix product.
a  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the first matrix.
beta  Double
The scalar used to multiply c.
c  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the third matrix.

HermitianRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, Complex<Double>, Array2D<Complex<Double>>, Array2D<Complex<Double>>, Double, Array2D<Complex<Double>>)

Performs a rank 2k update of a hermitian matrix.
C#
public override void HermitianRankUpdate(
	MatrixTriangle triangle,
	TransposeOperation trans,
	int n,
	int k,
	Complex<double> alpha,
	Array2D<Complex<double>> a,
	Array2D<Complex<double>> b,
	double beta,
	Array2D<Complex<double>> c
)

Parameters

triangle  MatrixTriangle
Specifies whether the elements of the matrix a are stored in the upper or lower triangular part.
trans  TransposeOperation
Specifies the operation to be performed on the matrix a.
n  Int32
The number of rows and columns in the matrix c.
k  Int32
The number of columns in the matrix a transformed as specified by trans.
alpha  Complex<Double>
The scalar used to multiply the matrix-matrix product.
a  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the first matrix.
b  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the second matrix.
beta  Double
The scalar used to multiply c.
c  Array2D<Complex<Double>>
Reference to the first element in a one-dimensional array that contains the elements of the third matrix.

See Also