SuiteSparseSolver
The GeMA Suite Sparse Numeric Solver Plugin
Loading...
Searching...
No Matches
paruSolver.h
Go to the documentation of this file.
1/************************************************************************
2**
3** Copyright (C) 2014 by Carlos Augusto Teixera Mendes
4** All rights reserved.
5**
6** This file is part of the "GeMA" software. It's use should respect
7** the terms in the license agreement that can be found together
8** with this source code.
9** It is provided AS IS, with NO WARRANTY OF ANY KIND,
10** INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR
11** A PARTICULAR PURPOSE.
12**
13************************************************************************/
14
24#ifndef _GEMA_PARU_SOLVER_H_
25#define _GEMA_PARU_SOLVER_H_
26
27#include "suiteSparseSolver.h"
28
29#include "ParU.h"
30
33{
34public:
35
37 virtual ~ParuSolver();
38
39 // Comments on the base class
40 virtual const char* pluginType() const { return "paru"; }
41
42 virtual bool loadPrivateData(LuaTable& table);
43
44 virtual bool solveImpl(GmSolverMatrix* A, const GmVector& b, GmVector& x, bool xIsGuess = false) const;
45
46 virtual void printParameters(const GmLogCategory& logger);
47
48private:
49
50 QString errorStr(int status) const;
51 QString selectedOrderMethod(int method, bool symStrategy) const;
52
53 ParU_Control _control;
55
56 static int _numSolvers;
57};
58
59#endif
virtual const GmLogCategory & logger() const
QString description() const
A class for creating a GeMA solver based on the ParU solver from the SuiteSparse library.
Definition paruSolver.h:33
static int _numSolvers
The number of instanced solvers.
Definition paruSolver.h:56
QString selectedOrderMethod(int method, bool symStrategy) const
Translates the used order method.
Definition paruSolver.cpp:384
virtual ~ParuSolver()
Destructor.
Definition paruSolver.cpp:64
ParuSolver(GmSimulationData *simulation, QString id, QString description, const GmLogCategory &logger)
Constructor. Will be called by the plugin loading code.
Definition paruSolver.cpp:48
QString errorStr(int status) const
Translates status error indices.
Definition paruSolver.cpp:366
QString _ordering
The requested ordering option.
Definition paruSolver.h:54
ParU_Control _control
The ParU library configuration control.
Definition paruSolver.h:53
A base class with the common behavior for creating a GeMA solver based on one of the following SuiteS...
Definition suiteSparseSolver.h:44
arma::vec GmVector
Declaration of the SuiteSparseSolver base class.