Feellgood
Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
solver< DIM_PROBLEM > Class Template Reference

template class for the different solvers template parameter DIM_PROBLEM: dimensionnality of the problem to solve More...

#include <solver.h>

Public Member Functions

 solver (Mesh::mesh &_msh, std::vector< Tetra::prm > &_pTetra, std::vector< Facette::prm > &_pFac, const std::string name, const double _tol, const bool v, const int max_iter)
 

Protected Member Functions

template<int N>
void buildMat (std::vector< int > &ind, Eigen::Matrix< double, DIM_PROBLEM *N, DIM_PROBLEM *N > &Ke, algebra::w_sparseMat &K)
 
template<int N>
void buildVect (std::vector< int > &ind, std::vector< double > &Le, std::vector< double > &L)
 

Protected Attributes

Mesh::meshmsh
 
const int NOD
 
const std::vector< Tetra::prm > & paramTet
 
const std::vector< Facette::prm > & paramFac
 
algebra::iteration< double > iter
 

Static Protected Attributes

static const int DIM_PB = DIM_PROBLEM
 

Detailed Description

template<int DIM_PROBLEM>
class solver< DIM_PROBLEM >

template class for the different solvers template parameter DIM_PROBLEM: dimensionnality of the problem to solve

Constructor & Destructor Documentation

◆ solver()

template<int DIM_PROBLEM>
solver< DIM_PROBLEM >::solver ( Mesh::mesh _msh,
std::vector< Tetra::prm > &  _pTetra,
std::vector< Facette::prm > &  _pFac,
const std::string  name,
const double  _tol,
const bool  v,
const int  max_iter 
)
inlineexplicit

constructor

Parameters
[in]_mshmesh
[in]_pTetraref to vector of param tet (volume region parameters)
[in]_pFacref to vector of param fac (surface region parameters)
[in]namename of the solver method
[in]_tolsolver tolerance
[in]vverbose mode for iteration monitor
[in]max_itermaximum number of iterations

Member Function Documentation

◆ buildMat()

template<int DIM_PROBLEM>
template<int N>
void solver< DIM_PROBLEM >::buildMat ( std::vector< int > &  ind,
Eigen::Matrix< double, DIM_PROBLEM *N, DIM_PROBLEM *N > &  Ke,
algebra::w_sparseMat K 
)
inlineprotected

function template. parameter N is the number of indices of the element to build matrix from: ind.size() = N

◆ buildVect()

template<int DIM_PROBLEM>
template<int N>
void solver< DIM_PROBLEM >::buildVect ( std::vector< int > &  ind,
std::vector< double > &  Le,
std::vector< double > &  L 
)
inlineprotected

function template. parameter N is the number of indices of the element to build vector from

Member Data Documentation

◆ DIM_PB

template<int DIM_PROBLEM>
const int solver< DIM_PROBLEM >::DIM_PB = DIM_PROBLEM
staticprotected

dimensionnality of the problem

◆ iter

template<int DIM_PROBLEM>
algebra::iteration<double> solver< DIM_PROBLEM >::iter
protected

monitor the solver called in method solve()

◆ msh

template<int DIM_PROBLEM>
Mesh::mesh* solver< DIM_PROBLEM >::msh
protected

mesh pointer to access nodes, fac, tet, and others geometrical values and methods

◆ NOD

template<int DIM_PROBLEM>
const int solver< DIM_PROBLEM >::NOD
protected

number of nodes in the mesh

◆ paramFac

template<int DIM_PROBLEM>
const std::vector<Facette::prm>& solver< DIM_PROBLEM >::paramFac
protected

this vector contains the material parameters for all surface regions for all the triangular facettes

◆ paramTet

template<int DIM_PROBLEM>
const std::vector<Tetra::prm>& solver< DIM_PROBLEM >::paramTet
protected

this vector contains the material parameters for all volume regions for all the tetrahedrons


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