ILinearAlgebraOperations<T, TVector, TMatrix> Interface

Specifies the methods that must be implemented by a class to support basic linear algebra.

Definition

Namespace: Extreme.Mathematics.LinearAlgebra.Implementation
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
public interface ILinearAlgebraOperations<T, TVector, TMatrix> : IImplementation, 
	IParallelized
Implements
IParallelized, IImplementation

Type Parameters

T
The element type.
TVector
The type used to represent vectors of type T.
TMatrix
The type used to represent matrices of type T.

Properties

HasSharedDegreeOfParallelism Indicates whether the degree of parallelism is a property that is shared across instances.
(Inherited from IParallelized)
ImplementedType Gets the base type of the implementation.
(Inherited from IImplementation)
MaxDegreeOfParallelism Gets or sets the maximum degree of parallelism enabled by the instance.
(Inherited from IParallelized)
Name Gets the name of the implementation.
(Inherited from IImplementation)
Platform Gets the processor architecture supported by the implementation.
(Inherited from IImplementation)

Methods

AbsoluteMaxIndex Returns the index of the element of a vector with maximum absolute value.
BandMultiplyAndAddInPlace Sum of the product of a general band matrix and vector and a scaled vector.
BandSymmetricMultiplyAndAddInPlace Product of a symmetric band matrix and a vector.
BandTriangularMultiplyInPlace Product of a triangular band matrix and a vector.
BandTriangularSolveInPlace Solves a triangular band system of equations.
ConjugateDotProduct Returns the inner product of two vectors.
ConjugateRankUpdate Performs a rank one update of a matrix.
Copy(Int32, TVector, TVector) Copies a vector.
Copy(MatrixTriangle, Int32, Int32, TMatrix, TMatrix) Copies part of a matrix to another.
CreateGivensRotation Generates the elements for a Givens plane rotation.
DotProduct Returns the inner product of two vectors.
FullMatrixNorm Computes the norm of a general rectangular matrix.
HermitianMatrixNorm Computes the norm of a Hermitian matrix.
HermitianMultiplyAndAddInPlace(MatrixTriangle, Int32, T, TMatrix, TVector, T, TVector) Product of a hermitian matrix and a vector.
HermitianMultiplyAndAddInPlace(MatrixOperationSide, MatrixTriangle, Int32, Int32, T, TMatrix, TMatrix, T, TMatrix) Sum of the product of a hermitian and a general matrix and a scaled matrix.
HermitianRankUpdate(MatrixTriangle, Int32, T, TVector, TMatrix) Performs a rank one update of a hermitian.
HermitianRankUpdate(MatrixTriangle, Int32, T, TVector, TVector, TMatrix) Performs a hermitian rank two update of a hermitian matrix.
HermitianRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, T, TMatrix, T, TMatrix) Performs a rank k update of a hermitian matrix.
HermitianRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, T, TMatrix, TMatrix, T, TMatrix) Performs a rank 2k update of a hermitian matrix.
MultiplyAndAddInPlace(Int32, T, TVector, TVector) Evaluates a vector plus the product of a scalar and a vector
MultiplyAndAddInPlace(TransposeOperation, Int32, Int32, T, TMatrix, TVector, T, TVector) Sum of the product of a general matrix and vector and a scaled vector.
MultiplyAndAddInPlace(TransposeOperation, TransposeOperation, Int32, Int32, Int32, T, TMatrix, TMatrix, T, TMatrix) Sum of the product of two general matrices and a scaled matrix.
MultiplyInPlace Evaluates the product of a scalar and a vector.
OneNorm Returns the sum of the absolute values of the elements of a vector.
RankUpdate Performs a rank one update of a matrix.
RealOneNorm Returns the sum of the absolute values of the elements of a vector.
Rotate Applies a Givens plane rotation.
Swap Exchanges the elements of two vectors.
SymmetricMatrixNorm Computes the norm of a symmetric matrix.
SymmetricMultiplyAndAddInPlace(MatrixTriangle, Int32, T, TMatrix, TVector, T, TVector) Product of a symmetric matrix and a vector.
SymmetricMultiplyAndAddInPlace(MatrixOperationSide, MatrixTriangle, Int32, Int32, T, TMatrix, TMatrix, T, TMatrix) Sum of the product of a symmetric and a general matrix and a scaled matrix.
SymmetricRankUpdate(MatrixTriangle, Int32, T, TVector, TMatrix) Performs a rank one update of a symmetric matrix.
SymmetricRankUpdate(MatrixTriangle, Int32, T, TVector, TVector, TMatrix) Performs a symmetric rank two update of a symmetric matrix.
SymmetricRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, T, TMatrix, T, TMatrix) Performs a rank k update of a symmetric matrix.
SymmetricRankUpdate(MatrixTriangle, TransposeOperation, Int32, Int32, T, TMatrix, TMatrix, T, TMatrix) Performs a rank k update of a symmetric matrix.
TriangularMatrixNorm Computes the norm of a triangular matrix.
TriangularMultiplyInPlace(MatrixTriangle, TransposeOperation, MatrixDiagonal, Int32, TMatrix, TVector) Product of a triangular matrix and a vector.
TriangularMultiplyInPlace(MatrixOperationSide, MatrixTriangle, TransposeOperation, MatrixDiagonal, Int32, Int32, T, TMatrix, TMatrix) Product of a triangular and a general matrix.
TriangularSolveInPlace(MatrixTriangle, TransposeOperation, MatrixDiagonal, Int32, TMatrix, TVector) Solves a triangular system of equations.
TriangularSolveInPlace(MatrixOperationSide, MatrixTriangle, TransposeOperation, MatrixDiagonal, Int32, Int32, T, TMatrix, TMatrix) Solution of a triangular linear system with multiple right-hand sides.
TwoNorm Returns the square root of sum of the squares of the elements of a vector.

See Also