- Extreme Optimization
- Documentation
- Vector and Matrix Library User's Guide
- Matrix Decompositions
- The LU Decomposition
- The QR Decomposition
- The Cholesky Decomposition
- The Symmetric Indefinite Decomposition
- The Eigenvalue Decomposition
- The Generalized Eigenvalue Decomposition
- The Singular Value Decomposition
- The Generalized Singular Value Decomposition
- Non-Negative Matrix Factorization
- Solving Linear Systems

- Solving Linear Systems

## Solving Linear Systems and Related Operations | Extreme Optimization Numerical Libraries for .NET Professional |

All decomposition classes inherit from the
LinearOperator

The Solve
method is overloaded. To solve for one right-hand side,
pass this value as a
Vector

To solve for the transpose of a matrix, use the SolveTranspose or SolveTransposeInto method.

To compute a least squares solution for an over-determined system, use the LeastSquaresSolve or LeastSquaresSolveInto method.

A matrix is singular when not all of its rows or columns are linearly independent. The IsSingular method returns a Boolean value that indicates this condition.

The inverse matrix is returned by the GetInverse method.

The condition number of a matrix is defined as the ratio of its largest to its smallest singular value. Because the calculation of singular values is a very expensive operation, an estimate that is cheaper to calculate is usually preferred. The EstimateConditionNumber method returns such an estimate.

The condition number gives an indication of the worst case loss of precision when solving a system of simultaneous
linear equations. The condition number of a singular matrix is infinite, which is returned as
Double

The determinant of a matrix is returned by the GetDeterminant method. The determinant is only defined for square matrices.

Copyright Â© 2004-2021,
Extreme Optimization. All rights reserved.

*Extreme Optimization,* *Complexity made simple*, *M#*, and *M
Sharp* are trademarks of ExoAnalytics Inc.

*Microsoft*, *Visual C#, Visual Basic, Visual Studio*, *Visual
Studio.NET*, and the *Optimized for Visual Studio* logo

are
registered trademarks of Microsoft Corporation.