39 #ifndef _MUMPSSOLVER_HPP_ 40 #define _MUMPSSOLVER_HPP_ 49 #define USE_COMM_WORLD -987654 52 #define ICNTL(I) icntl[(I)-1] 55 #include <Eigen/Dense> 56 #include <Eigen/SparseCore> 77 MumpsSolver(
unsigned int option=1,
bool flag =
false);
88 bool SolveSystem(Eigen::SparseMatrix<double> &A, Eigen::VectorXd &b);
This file contains the abstract "LinearSystem object" declarations, which defines the library to solv...
const Eigen::VectorXd & GetSolution()
Gets the soultion vector.
MumpsSolver(unsigned int option=1, bool flag=false)
Creates a MumpsSolver object.
bool Flag
Analysis flag.
Definition: MumpsSolver.hpp:103
Class for solving a linear system using the (MU)ltifrontal (M)assively (P)arallel (S)parse direct Sol...
Definition: MumpsSolver.hpp:69
unsigned int nz
Number of non-zero values.
Definition: MumpsSolver.hpp:97
Eigen::VectorXd x
Vector of unknowns.
Definition: MumpsSolver.hpp:112
bool SolveSystem(Eigen::SparseMatrix< double > &A, Eigen::VectorXd &b)
Solve the linear system.
bool Initialized
MUMPS Initialization Flag.
Definition: MumpsSolver.hpp:109
DMUMPS_STRUC_C id
MUMPS Structure of parameters.
Definition: MumpsSolver.hpp:115
Virtual class for solving a linear system of the form Ax = b.
Definition: LinearSystem.hpp:44
unsigned int Option
Matrix structure 0: SPD, 1:Symmetric, 0: Unsymmetric.
Definition: MumpsSolver.hpp:100
~MumpsSolver()
Destroys this MumpsSolver object.
bool Factored
MUMPS Factorization Flag.
Definition: MumpsSolver.hpp:106