10 #include <eigen3/Eigen/Dense>
18 template <
int DIM_PROBLEM>
24 std::vector<Tetra::prm> & _pTetra ,
25 std::vector<Facette::prm> & _pFac ,
26 const std::string name ,
34 static const int DIM_PB = DIM_PROBLEM;
57 for (
int ie=0; ie<
N; ie++)
60 for (
int je=0; je<
N; je++)
63 for (
int di=0; di<DIM_PROBLEM; di++)
64 for (
int dj=0; dj<DIM_PROBLEM; dj++)
65 K.
insert(DIM_PROBLEM*i_ + di, DIM_PROBLEM*j_ + dj, Ke(di*
N+ie,dj*
N+je));
74 void buildVect(std::vector<int> &ind, std::vector<double> &Le, std::vector<double> &L)
76 for (
int ie=0; ie<
N; ie++)
79 for (
int di=0; di<DIM_PROBLEM; di++)
80 { L[DIM_PROBLEM*i_ + di] += Le[di*
N+ie]; }
Write-mode sparse matrix.
Definition: sparseMat.h:52
void insert(const int i, const int j, const double val)
Definition: sparseMat.h:70
template class for the different solvers template parameter DIM_PROBLEM: dimensionnality of the probl...
Definition: solver.h:20
Mesh::mesh * msh
Definition: solver.h:37
void buildMat(std::vector< int > &ind, Eigen::Matrix< double, DIM_PROBLEM *N, DIM_PROBLEM *N > &Ke, algebra::w_sparseMat &K)
Definition: solver.h:55
const int NOD
Definition: solver.h:40
void buildVect(std::vector< int > &ind, std::vector< double > &Le, std::vector< double > &L)
Definition: solver.h:74
algebra::iteration< double > iter
Definition: solver.h:49
const std::vector< Tetra::prm > & paramTet
Definition: solver.h:43
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)
Definition: solver.h:23
static const int DIM_PB
Definition: solver.h:34
const std::vector< Facette::prm > & paramFac
Definition: solver.h:46
class mesh, readMesh is expecting a mesh file in gmsh format either text or binary,...
const int N
Definition: facette.h:17
constexpr double v[NPI]
Definition: facette.h:22