Memosa-FVM  0.2
Linearizer.cpp
Go to the documentation of this file.
1 // This file os part of FVM
2 // Copyright (c) 2012 FVM Authors
3 // See LICENSE file for terms.
4 
5 
6 #include "Linearizer.h"
7 #include "Mesh.h"
8 #include "MultiFieldMatrix.h"
9 #include "MultiField.h"
10 #include "Discretization.h"
11 //#include <omp.h>
12 
14 {}
15 
16 void
18  const MeshList& meshes, MultiFieldMatrix& matrix,
19  MultiField& x, MultiField& r)
20 {
21  const int nMeshes = meshes.size();
22  const int nDiscretizations = discretizations.size();
23 
24  //#pragma omp parallel for
25  for(int n=0; n<nMeshes; n++)
26  {
27  const Mesh& mesh = *meshes[n];
28  if (mesh.isShell() == false){
29  for(int nd=0; nd<nDiscretizations; nd++)
30  discretizations[nd]->discretize(mesh,matrix,x,r);
31  }
32  }
33 }
34 
Definition: Mesh.h:49
vector< shared_ptr< Discretization > > DiscrList
bool isShell() const
Definition: Mesh.h:323
virtual void linearize(DiscrList &discretizations, const MeshList &meshes, MultiFieldMatrix &matrix, MultiField &x, MultiField &b)
Definition: Linearizer.cpp:17
vector< Mesh * > MeshList
Definition: Mesh.h:439