Click or drag to resize

ILinearAlgebraProvider Interface

Interface to linear algebra algorithms that work off 1-D arrays.

Namespace: Altaxo.Calc.Providers.LinearAlgebra
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3179.0 (4.8.3179.0)
Syntax
C#
public interface ILinearAlgebraProvider : ILinearAlgebraProvider<double>, 
	ILinearAlgebraProvider<float>, ILinearAlgebraProvider<Complex>, ILinearAlgebraProvider<Complex32>

The ILinearAlgebraProvider type exposes the following members.

Methods
 NameDescription
Public methodAddArrays(T, T, T) Does a point wise add of two arrays z = x + y. This can be used to add vectors or matrices.
(Inherited from ILinearAlgebraProviderT)
Public methodAddVectorToScaledVector(T, T, T, T) Adds a scaled vector to another: result = y + alpha*x.
(Inherited from ILinearAlgebraProviderT)
Public methodCholeskyFactor(T, Int32) Computes the Cholesky factorization of A.
(Inherited from ILinearAlgebraProviderT)
Public methodCholeskySolve(T, Int32, T, Int32) Solves A*X=B for X using Cholesky factorization.
(Inherited from ILinearAlgebraProviderT)
Public methodCholeskySolveFactored(T, Int32, T, Int32) Solves A*X=B for X using a previously factored A matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodConjugateArray(T, T) Conjugates an array. Can be used to conjugate a vector and a matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodDotProduct(T, T) Computes the dot product of x and y.
(Inherited from ILinearAlgebraProviderT)
Public methodEigenDecomp(Boolean, Int32, T, T, Complex, T) Computes the eigenvalues and eigenvectors of a matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodFreeResources Frees memory buffers, caches and handles allocated in or to the provider. Does not unload the provider itself, it is still usable afterwards.
Public methodInitializeVerify Initialize and verify that the provided is indeed available. If not, fall back to alternatives like the managed provider
Public methodIsAvailable Try to find out whether the provider is available, at least in principle. Verification may still fail if available, but it will certainly fail if unavailable.
Public methodLUFactor(T, Int32, Int32) Computes the LUP factorization of A. P*A = L*U.
(Inherited from ILinearAlgebraProviderT)
Public methodLUInverse(T, Int32) Computes the inverse of matrix using LU factorization.
(Inherited from ILinearAlgebraProviderT)
Public methodLUInverseFactored(T, Int32, Int32) Computes the inverse of a previously factored matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodLUSolve(Int32, T, Int32, T) Solves A*X=B for X using LU factorization.
(Inherited from ILinearAlgebraProviderT)
Public methodLUSolveFactored(Int32, T, Int32, Int32, T) Solves A*X=B for X using a previously factored A matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodMatrixMultiply(T, Int32, Int32, T, Int32, Int32, T) Multiples two matrices. result = x * y
(Inherited from ILinearAlgebraProviderT)
Public methodMatrixMultiplyWithUpdate(Transpose, Transpose, T, T, Int32, Int32, T, Int32, Int32, T, T) Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c
(Inherited from ILinearAlgebraProviderT)
Public methodMatrixNorm(Norm, Int32, Int32, T) Computes the requested Norm of the matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodPointWiseDivideArrays(T, T, T) Does a point wise division of two arrays z = x / y. This can be used to divide elements of vectors or matrices.
(Inherited from ILinearAlgebraProviderT)
Public methodPointWiseMultiplyArrays(T, T, T) Does a point wise multiplication of two arrays z = x * y. This can be used to multiply elements of vectors or matrices.
(Inherited from ILinearAlgebraProviderT)
Public methodPointWisePowerArrays(T, T, T) Does a point wise power of two arrays z = x ^ y. This can be used to raise elements of vectors or matrices to the powers of another vector or matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodQRFactor(T, Int32, Int32, T, T) Computes the full QR factorization of A.
(Inherited from ILinearAlgebraProviderT)
Public methodQRSolve(T, Int32, Int32, T, Int32, T, QRMethod) Solves A*X=B for X using QR factorization of A.
(Inherited from ILinearAlgebraProviderT)
Public methodQRSolveFactored(T, T, Int32, Int32, T, T, Int32, T, QRMethod) Solves A*X=B for X using a previously QR factored matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodScaleArray(T, T, T) Scales an array. Can be used to scale a vector and a matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodSingularValueDecomposition(Boolean, T, Int32, Int32, T, T, T) Computes the singular value decomposition of A.
(Inherited from ILinearAlgebraProviderT)
Public methodSubtractArrays(T, T, T) Does a point wise subtraction of two arrays z = x - y. This can be used to subtract vectors or matrices.
(Inherited from ILinearAlgebraProviderT)
Public methodSvdSolve(T, Int32, Int32, T, Int32, T) Solves A*X=B for X using the singular value decomposition of A.
(Inherited from ILinearAlgebraProviderT)
Public methodSvdSolveFactored(Int32, Int32, T, T, T, T, Int32, T) Solves A*X=B for X using a previously SVD decomposed matrix.
(Inherited from ILinearAlgebraProviderT)
Public methodThinQRFactor(T, Int32, Int32, T, T) Computes the thin QR factorization of A where M > N.
(Inherited from ILinearAlgebraProviderT)
Top
See Also