EPANET  3.0
EPANET Development Project
Public Member Functions | Static Public Member Functions | List of all members
MatrixSolver Class Referenceabstract

Abstract class for solving a set of linear equations. More...

#include <matrixsolver.h>

Inheritance diagram for MatrixSolver:
SparspakSolver

Public Member Functions

virtual int init (int nRows, int nOffDiags, int offDiagRow[], int offDiagCol[])=0
 
virtual void reset ()=0
 
virtual double getDiag (int i)
 
virtual double getOffDiag (int i)
 
virtual double getRhs (int i)
 
virtual void setDiag (int row, double a)=0
 
virtual void setRhs (int row, double b)=0
 
virtual void addToDiag (int row, double a)=0
 
virtual void addToOffDiag (int offDiag, double a)=0
 
virtual void addToRhs (int row, double b)=0
 
virtual int solve (int nRows, double x[])=0
 
virtual void debug (std::ostream &out)
 

Static Public Member Functions

static MatrixSolverfactory (const std::string solver, std::ostream &logger)
 

Detailed Description

Abstract class for solving a set of linear equations.

This class defines an interface for solving a set of linear equations generated from a network of links and nodes.

The system of equations is expressed as Ax = b where A is a square symmetric coefficient matrix, b is a right hand side vector, and x is a vector of unknowns.


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