All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
SurgSim::Math::LinearSolveAndInverse Class Referenceabstract

LinearSolveAndInverse aims at performing an efficient linear system resolution and calculating its inverse matrix at the same time. More...

#include <SurgSim/Math/LinearSolveAndInverse.h>

Inheritance diagram for SurgSim::Math::LinearSolveAndInverse:
Inheritance graph
[legend]

Public Member Functions

virtual ~LinearSolveAndInverse ()
 
virtual void operator() (const Matrix &A, const Vector &b, Vector *x=nullptr, Matrix *Ainv=nullptr)=0
 Solve a linear system A.x=b and compute the matrix A^-1. More...
 

Detailed Description

LinearSolveAndInverse aims at performing an efficient linear system resolution and calculating its inverse matrix at the same time.

This class is very useful in the OdeSolver resolution to improve performance.

See also
SurgSim::Math::OdeSolver

Constructor & Destructor Documentation

virtual SurgSim::Math::LinearSolveAndInverse::~LinearSolveAndInverse ( )
inlinevirtual

Member Function Documentation

virtual void SurgSim::Math::LinearSolveAndInverse::operator() ( const Matrix A,
const Vector b,
Vector x = nullptr,
Matrix Ainv = nullptr 
)
pure virtual

Solve a linear system A.x=b and compute the matrix A^-1.

Parameters
ALinear system matrix
bLinear system right-hand-side
[out]xLinear system unknown (if requested)
[out]AinvLinear system matrix inverse = A^-1 (if requested)

Implemented in SurgSim::Math::LinearSolveAndInverseSymmetricTriDiagonalBlockMatrix< BlockSize >, SurgSim::Math::LinearSolveAndInverseTriDiagonalBlockMatrix< BlockSize >, SurgSim::Math::LinearSolveAndInverseDiagonalMatrix, and SurgSim::Math::LinearSolveAndInverseDenseMatrix.


The documentation for this class was generated from the following file: