BEM++  2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | Static Protected Member Functions | Private Member Functions | List of all members
Bempp::Solver< BasisFunctionType, ResultType > Class Template Referenceabstract

The abstract interface of solvers of boundary integral equations. More...

#include </home/wojtek/Projects/BEM/bempp-sven/bempp/lib/linalg/solver.hpp>

Inheritance diagram for Bempp::Solver< BasisFunctionType, ResultType >:
Bempp::DefaultDirectSolver< BasisFunctionType, ResultType > Bempp::DefaultIterativeSolver< BasisFunctionType, ResultType >

Public Member Functions

Solution< BasisFunctionType,
ResultType > 
solve (const GridFunction< BasisFunctionType, ResultType > &rhs) const
 Solve a standard (non-blocked) boundary integral equation. More...
 
BlockedSolution
< BasisFunctionType,
ResultType > 
solve (const std::vector< GridFunction< BasisFunctionType, ResultType > > &rhs) const
 Solve a block-operator system of boundary integral equations. More...
 

Static Protected Member Functions

static void checkConsistency (const BoundaryOperator< BasisFunctionType, ResultType > &boundaryOp, const GridFunction< BasisFunctionType, ResultType > &rhs, ConvergenceTestMode::Mode mode)
 
static void checkConsistency (const BlockedBoundaryOperator< BasisFunctionType, ResultType > &boundaryOp, const std::vector< GridFunction< BasisFunctionType, ResultType > > &rhs, ConvergenceTestMode::Mode mode)
 
static std::vector
< GridFunction
< BasisFunctionType,
ResultType > > 
canonicalizeBlockedRhs (const BlockedBoundaryOperator< BasisFunctionType, ResultType > &boundaryOp, const std::vector< GridFunction< BasisFunctionType, ResultType > > &rhs, ConvergenceTestMode::Mode mode)
 
static void constructBlockedGridFunction (const arma::Col< ResultType > &solution, const BlockedBoundaryOperator< BasisFunctionType, ResultType > &boundaryOp, std::vector< GridFunction< BasisFunctionType, ResultType > > &solutionFunctions)
 

Private Member Functions

virtual Solution
< BasisFunctionType,
ResultType > 
solveImplNonblocked (const GridFunction< BasisFunctionType, ResultType > &rhs) const =0
 
virtual BlockedSolution
< BasisFunctionType,
ResultType > 
solveImplBlocked (const std::vector< GridFunction< BasisFunctionType, ResultType > > &rhs) const =0
 

Detailed Description

template<typename BasisFunctionType, typename ResultType>
class Bempp::Solver< BasisFunctionType, ResultType >

The abstract interface of solvers of boundary integral equations.

Member Function Documentation

template<typename BasisFunctionType , typename ResultType >
Solution<BasisFunctionType, ResultType> Bempp::Solver< BasisFunctionType, ResultType >::solve ( const GridFunction< BasisFunctionType, ResultType > &  rhs) const
inline

Solve a standard (non-blocked) boundary integral equation.

This function solves a boundary integral equation with given right-hand side rhs of type GridFunction and returns a new Solution object.

Parameters
[in]rhsGridFunction representing the right-hand side function of the boundary integral equation.
Returns
A new Solution object, containing the solution of the boundary integral equation.
template<typename BasisFunctionType , typename ResultType >
BlockedSolution<BasisFunctionType, ResultType> Bempp::Solver< BasisFunctionType, ResultType >::solve ( const std::vector< GridFunction< BasisFunctionType, ResultType > > &  rhs) const
inline

Solve a block-operator system of boundary integral equations.

This function solves a block system of boundary integral equations. It takes a vector of variables of type GridFunction as its input.

Parameters
[in]rhsvector of variables of type GridFunction
Returns
A new BlockedSolution object, containing the solution of the system of boundary integral equation.

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