Click or drag to resize

ManagedLinearAlgebraProvider Class

The managed linear algebra provider.
Inheritance Hierarchy
SystemObject
  Altaxo.Calc.Providers.LinearAlgebraManagedLinearAlgebraProvider

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

The ManagedLinearAlgebraProvider type exposes the following members.

Constructors
 NameDescription
Public methodManagedLinearAlgebraProviderInitializes a new instance of the ManagedLinearAlgebraProvider class
Top
Properties
 NameDescription
Public propertyStatic memberInstance 
Top
Methods
 NameDescription
Public methodAddArrays(Complex, Complex, Complex) Does a point wise add of two arrays z = x + y. This can be used to add vectors or matrices.
Public methodAddArrays(Complex32, Complex32, Complex32) Does a point wise add of two arrays z = x + y. This can be used to add vectors or matrices.
Public methodAddArrays(Double, Double, Double) Does a point wise add of two arrays z = x + y. This can be used to add vectors or matrices.
Public methodAddArrays(Single, Single, Single) Does a point wise add of two arrays z = x + y. This can be used to add vectors or matrices.
Public methodAddVectorToScaledVector(Complex, Complex, Complex, Complex) Adds a scaled vector to another: result = y + alpha*x.
Public methodAddVectorToScaledVector(Complex32, Complex32, Complex32, Complex32) Adds a scaled vector to another: result = y + alpha*x.
Public methodAddVectorToScaledVector(Double, Double, Double, Double) Adds a scaled vector to another: result = y + alpha*x.
Public methodAddVectorToScaledVector(Single, Single, Single, Single) Adds a scaled vector to another: result = y + alpha*x.
Public methodCholeskyFactor(Complex, Int32) Computes the Cholesky factorization of A.
Public methodCholeskyFactor(Complex32, Int32) Computes the Cholesky factorization of A.
Public methodCholeskyFactor(Double, Int32) Computes the Cholesky factorization of A.
Public methodCholeskyFactor(Single, Int32) Computes the Cholesky factorization of A.
Public methodCholeskySolve(Complex, Int32, Complex, Int32) Solves A*X=B for X using Cholesky factorization.
Public methodCholeskySolve(Complex32, Int32, Complex32, Int32) Solves A*X=B for X using Cholesky factorization.
Public methodCholeskySolve(Double, Int32, Double, Int32) Solves A*X=B for X using Cholesky factorization.
Public methodCholeskySolve(Single, Int32, Single, Int32) Solves A*X=B for X using Cholesky factorization.
Public methodCholeskySolveFactored(Complex, Int32, Complex, Int32) Solves A*X=B for X using a previously factored A matrix.
Public methodCholeskySolveFactored(Complex32, Int32, Complex32, Int32) Solves A*X=B for X using a previously factored A matrix.
Public methodCholeskySolveFactored(Double, Int32, Double, Int32) Solves A*X=B for X using a previously factored A matrix.
Public methodCholeskySolveFactored(Single, Int32, Single, Int32) Solves A*X=B for X using a previously factored A matrix.
Public methodConjugateArray(Complex, Complex) Conjugates an array. Can be used to conjugate a vector and a matrix.
Public methodConjugateArray(Complex32, Complex32) Conjugates an array. Can be used to conjugate a vector and a matrix.
Public methodConjugateArray(Double, Double) Conjugates an array. Can be used to conjugate a vector and a matrix.
Public methodConjugateArray(Single, Single) Conjugates an array. Can be used to conjugate a vector and a matrix.
Public methodDotProduct(Complex, Complex) Computes the dot product of x and y.
Public methodDotProduct(Complex32, Complex32) Computes the dot product of x and y.
Public methodDotProduct(Double, Double) Computes the dot product of x and y.
Public methodDotProduct(Single, Single) Computes the dot product of x and y.
Public methodEigenDecomp(Boolean, Int32, Complex32, Complex32, Complex, Complex32) Computes the eigenvalues and eigenvectors of a matrix.
Public methodEigenDecomp(Boolean, Int32, Double, Double, Complex, Double) Computes the eigenvalues and eigenvectors of a matrix.
Public methodEigenDecomp(Boolean, Int32, Complex, Complex, Complex, Complex) Computes the eigenvalues and eigenvectors of a matrix.
Public methodEigenDecomp(Boolean, Int32, Single, Single, Complex, Single) Computes the eigenvalues and eigenvectors of a matrix.
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
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 methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
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(Complex, Int32, Int32) Computes the LUP factorization of A. P*A = L*U.
Public methodLUFactor(Complex32, Int32, Int32) Computes the LUP factorization of A. P*A = L*U.
Public methodLUFactor(Double, Int32, Int32) Computes the LUP factorization of A. P*A = L*U.
Public methodLUFactor(Single, Int32, Int32) Computes the LUP factorization of A. P*A = L*U.
Public methodLUInverse(Complex, Int32) Computes the inverse of matrix using LU factorization.
Public methodLUInverse(Complex32, Int32) Computes the inverse of matrix using LU factorization.
Public methodLUInverse(Double, Int32) Computes the inverse of matrix using LU factorization.
Public methodLUInverse(Single, Int32) Computes the inverse of matrix using LU factorization.
Public methodLUInverseFactored(Complex, Int32, Int32) Computes the inverse of a previously factored matrix.
Public methodLUInverseFactored(Complex32, Int32, Int32) Computes the inverse of a previously factored matrix.
Public methodLUInverseFactored(Double, Int32, Int32) Computes the inverse of a previously factored matrix.
Public methodLUInverseFactored(Single, Int32, Int32) Computes the inverse of a previously factored matrix.
Public methodLUSolve(Int32, Complex32, Int32, Complex32) Solves A*X=B for X using LU factorization.
Public methodLUSolve(Int32, Double, Int32, Double) Solves A*X=B for X using LU factorization.
Public methodLUSolve(Int32, Complex, Int32, Complex) Solves A*X=B for X using LU factorization.
Public methodLUSolve(Int32, Single, Int32, Single) Solves A*X=B for X using LU factorization.
Public methodLUSolveFactored(Int32, Complex32, Int32, Int32, Complex32) Solves A*X=B for X using a previously factored A matrix.
Public methodLUSolveFactored(Int32, Double, Int32, Int32, Double) Solves A*X=B for X using a previously factored A matrix.
Public methodLUSolveFactored(Int32, Complex, Int32, Int32, Complex) Solves A*X=B for X using a previously factored A matrix.
Public methodLUSolveFactored(Int32, Single, Int32, Int32, Single) Solves A*X=B for X using a previously factored A matrix.
Public methodMatrixMultiply(Complex, Int32, Int32, Complex, Int32, Int32, Complex) Multiples two matrices. result = x * y
Public methodMatrixMultiply(Complex32, Int32, Int32, Complex32, Int32, Int32, Complex32) Multiples two matrices. result = x * y
Public methodMatrixMultiply(Double, Int32, Int32, Double, Int32, Int32, Double) Multiples two matrices. result = x * y
Public methodMatrixMultiply(Single, Int32, Int32, Single, Int32, Int32, Single) Multiples two matrices. result = x * y
Public methodMatrixMultiplyWithUpdate(Transpose, Transpose, Complex32, Complex32, Int32, Int32, Complex32, Int32, Int32, Complex32, Complex32) Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c
Public methodMatrixMultiplyWithUpdate(Transpose, Transpose, Double, Double, Int32, Int32, Double, Int32, Int32, Double, Double) Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c
Public methodMatrixMultiplyWithUpdate(Transpose, Transpose, Complex, Complex, Int32, Int32, Complex, Int32, Int32, Complex, Complex) Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c
Public methodMatrixMultiplyWithUpdate(Transpose, Transpose, Single, Single, Int32, Int32, Single, Int32, Int32, Single, Single) Multiplies two matrices and updates another with the result. c = alpha*op(a)*op(b) + beta*c
Public methodMatrixNorm(Norm, Int32, Int32, Complex32) Computes the requested Norm of the matrix.
Public methodMatrixNorm(Norm, Int32, Int32, Double) Computes the requested Norm of the matrix.
Public methodMatrixNorm(Norm, Int32, Int32, Complex) Computes the requested Norm of the matrix.
Public methodMatrixNorm(Norm, Int32, Int32, Single) Computes the requested Norm of the matrix.
Public methodPointWiseDivideArrays(Complex, Complex, Complex) Does a point wise division of two arrays z = x / y. This can be used to divide elements of vectors or matrices.
Public methodPointWiseDivideArrays(Complex32, Complex32, Complex32) Does a point wise division of two arrays z = x / y. This can be used to divide elements of vectors or matrices.
Public methodPointWiseDivideArrays(Double, Double, Double) Does a point wise division of two arrays z = x / y. This can be used to divide elements of vectors or matrices.
Public methodPointWiseDivideArrays(Single, Single, Single) Does a point wise division of two arrays z = x / y. This can be used to divide elements of vectors or matrices.
Public methodPointWiseMultiplyArrays(Complex, Complex, Complex) Does a point wise multiplication of two arrays z = x * y. This can be used to multiple elements of vectors or matrices.
Public methodPointWiseMultiplyArrays(Complex32, Complex32, Complex32) Does a point wise multiplication of two arrays z = x * y. This can be used to multiple elements of vectors or matrices.
Public methodPointWiseMultiplyArrays(Double, Double, Double) Does a point wise multiplication of two arrays z = x * y. This can be used to multiple elements of vectors or matrices.
Public methodPointWiseMultiplyArrays(Single, Single, Single) Does a point wise multiplication of two arrays z = x * y. This can be used to multiple elements of vectors or matrices.
Public methodPointWisePowerArrays(Complex, Complex, Complex) 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.
Public methodPointWisePowerArrays(Complex32, Complex32, Complex32) 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.
Public methodPointWisePowerArrays(Double, Double, Double) 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.
Public methodPointWisePowerArrays(Single, Single, Single) 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.
Public methodQRFactor(Complex, Int32, Int32, Complex, Complex) Computes the QR factorization of A.
Public methodQRFactor(Complex32, Int32, Int32, Complex32, Complex32) Computes the QR factorization of A.
Public methodQRFactor(Double, Int32, Int32, Double, Double) Computes the QR factorization of A.
Public methodQRFactor(Single, Int32, Int32, Single, Single) Computes the QR factorization of A.
Public methodQRSolve(Complex, Int32, Int32, Complex, Int32, Complex, QRMethod) Solves A*X=B for X using QR factorization of A.
Public methodQRSolve(Complex32, Int32, Int32, Complex32, Int32, Complex32, QRMethod) Solves A*X=B for X using QR factorization of A.
Public methodQRSolve(Double, Int32, Int32, Double, Int32, Double, QRMethod) Solves A*X=B for X using QR factorization of A.
Public methodQRSolve(Single, Int32, Int32, Single, Int32, Single, QRMethod) Solves A*X=B for X using QR factorization of A.
Public methodQRSolveFactored(Complex, Complex, Int32, Int32, Complex, Complex, Int32, Complex, QRMethod) Solves A*X=B for X using a previously QR factored matrix.
Public methodQRSolveFactored(Complex32, Complex32, Int32, Int32, Complex32, Complex32, Int32, Complex32, QRMethod) Solves A*X=B for X using a previously QR factored matrix.
Public methodQRSolveFactored(Double, Double, Int32, Int32, Double, Double, Int32, Double, QRMethod) Solves A*X=B for X using a previously QR factored matrix.
Public methodQRSolveFactored(Single, Single, Int32, Int32, Single, Single, Int32, Single, QRMethod) Solves A*X=B for X using a previously QR factored matrix.
Public methodScaleArray(Complex, Complex, Complex) Scales an array. Can be used to scale a vector and a matrix.
Public methodScaleArray(Complex32, Complex32, Complex32) Scales an array. Can be used to scale a vector and a matrix.
Public methodScaleArray(Double, Double, Double) Scales an array. Can be used to scale a vector and a matrix.
Public methodScaleArray(Single, Single, Single) Scales an array. Can be used to scale a vector and a matrix.
Public methodSingularValueDecomposition(Boolean, Complex32, Int32, Int32, Complex32, Complex32, Complex32) Computes the singular value decomposition of A.
Public methodSingularValueDecomposition(Boolean, Double, Int32, Int32, Double, Double, Double) Computes the singular value decomposition of A.
Public methodSingularValueDecomposition(Boolean, Complex, Int32, Int32, Complex, Complex, Complex) Computes the singular value decomposition of A.
Public methodSingularValueDecomposition(Boolean, Single, Int32, Int32, Single, Single, Single) Computes the singular value decomposition of A.
Public methodSubtractArrays(Complex, Complex, Complex) Does a point wise subtraction of two arrays z = x - y. This can be used to subtract vectors or matrices.
Public methodSubtractArrays(Complex32, Complex32, Complex32) Does a point wise subtraction of two arrays z = x - y. This can be used to subtract vectors or matrices.
Public methodSubtractArrays(Double, Double, Double) Does a point wise subtraction of two arrays z = x - y. This can be used to subtract vectors or matrices.
Public methodSubtractArrays(Single, Single, Single) Does a point wise subtraction of two arrays z = x - y. This can be used to subtract vectors or matrices.
Public methodSvdSolve(Complex, Int32, Int32, Complex, Int32, Complex) Solves A*X=B for X using the singular value decomposition of A.
Public methodSvdSolve(Complex32, Int32, Int32, Complex32, Int32, Complex32) Solves A*X=B for X using the singular value decomposition of A.
Public methodSvdSolve(Double, Int32, Int32, Double, Int32, Double) Solves A*X=B for X using the singular value decomposition of A.
Public methodSvdSolve(Single, Int32, Int32, Single, Int32, Single) Solves A*X=B for X using the singular value decomposition of A.
Public methodSvdSolveFactored(Int32, Int32, Complex32, Complex32, Complex32, Complex32, Int32, Complex32) Solves A*X=B for X using a previously SVD decomposed matrix.
Public methodSvdSolveFactored(Int32, Int32, Double, Double, Double, Double, Int32, Double) Solves A*X=B for X using a previously SVD decomposed matrix.
Public methodSvdSolveFactored(Int32, Int32, Complex, Complex, Complex, Complex, Int32, Complex) Solves A*X=B for X using a previously SVD decomposed matrix.
Public methodSvdSolveFactored(Int32, Int32, Single, Single, Single, Single, Int32, Single) Solves A*X=B for X using a previously SVD decomposed matrix.
Public methodThinQRFactor(Complex, Int32, Int32, Complex, Complex) Computes the QR factorization of A.
Public methodThinQRFactor(Complex32, Int32, Int32, Complex32, Complex32) Computes the QR factorization of A.
Public methodThinQRFactor(Double, Int32, Int32, Double, Double) Computes the QR factorization of A.
Public methodThinQRFactor(Single, Int32, Int32, Single, Single) Computes the QR factorization of A.
Public methodToString
(Overrides ObjectToString)
Top
See Also