6 #ifndef OPENFPM_PDATA_EQNSSTRUCT_HPP 7 #define OPENFPM_PDATA_EQNSSTRUCT_HPP 9 #include "Solvers/umfpack_solver.hpp" 10 #include "Solvers/petsc_solver.hpp" 16 static const unsigned int dims=2;
18 static const unsigned int nvar=1;
21 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
40 static const unsigned int dims = 2;
42 static const unsigned int nvar = 2;
45 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
65 static const unsigned int dims = 2;
67 static const unsigned int nvar = 1;
70 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
89 static const unsigned int dims = 2;
91 static const unsigned int nvar = 2;
94 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
114 static const unsigned int dims = 2;
116 static const unsigned int nvar = 3;
119 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
138 static const unsigned int dims = 2;
140 static const unsigned int nvar = 3;
143 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
162 static const unsigned int dims = 2;
164 static const unsigned int nvar = 4;
167 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
187 static const unsigned int dims = 3;
189 static const unsigned int nvar = 3;
192 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,NON_PERIODIC};
211 static const unsigned int dims = 3;
213 static const unsigned int nvar = 1;
216 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,NON_PERIODIC};
235 static const unsigned int dims = 3;
237 static const unsigned int nvar = 3;
240 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,PERIODIC};
259 static const unsigned int dims = 3;
261 static const unsigned int nvar = 3;
264 static constexpr
bool boundary[]={NON_PERIODIC, PERIODIC,PERIODIC};
283 static const unsigned int dims = 3;
285 static const unsigned int nvar = 3;
288 static constexpr
bool boundary[]={PERIODIC, NON_PERIODIC,PERIODIC};
307 static const unsigned int dims = 3;
309 static const unsigned int nvar = 3;
312 static constexpr
bool boundary[]={PERIODIC, PERIODIC,PERIODIC};
331 static const unsigned int dims = 3;
333 static const unsigned int nvar = 3;
336 static constexpr
bool boundary[]={PERIODIC, NON_PERIODIC,PERIODIC};
355 static const unsigned int dims = 3;
357 static const unsigned int nvar = 1;
360 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,PERIODIC};
382 static const unsigned int dims=2;
384 static const unsigned int nvar=1;
387 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
406 static const unsigned int dims = 2;
408 static const unsigned int nvar = 2;
411 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
430 static const unsigned int dims = 2;
432 static const unsigned int nvar = 3;
435 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
454 static const unsigned int dims = 2;
456 static const unsigned int nvar = 4;
459 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC};
479 static const unsigned int dims = 2;
481 static const unsigned int nvar = 1;
484 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
503 static const unsigned int dims = 2;
505 static const unsigned int nvar = 2;
508 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
527 static const unsigned int dims = 2;
529 static const unsigned int nvar = 3;
532 static constexpr
bool boundary[]={PERIODIC, PERIODIC};
551 static const unsigned int dims = 3;
553 static const unsigned int nvar = 3;
556 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,NON_PERIODIC};
575 static const unsigned int dims = 3;
577 static const unsigned int nvar = 1;
580 static constexpr
bool boundary[]={NON_PERIODIC, NON_PERIODIC,NON_PERIODIC};
598 #endif //OPENFPM_PDATA_EQNSSTRUCT_HPP
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static constexpr bool boundary[]
boundary at X and Y
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
Vector< double > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ..
Vector< double > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Vector< double > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
static constexpr bool boundary[]
boundary at X and Y
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
Sparse Matrix implementation stub object when OpenFPM is compiled with no linear algebra support.
static const unsigned int nvar
number of fields in the system
Specify the general characteristic of system to solve.
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
double stype
type of space float, double, ...
static const unsigned int nvar
number of fields in the system
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
double stype
type of space float, double, ...
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Specify the general characteristic of system to solve.
static const unsigned int nvar
number of fields in the system
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int nvar
number of fields in the system
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int nvar
number of fields in the system
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static const unsigned int nvar
number of fields in the system
static const unsigned int nvar
number of fields in the system
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
double stype
type of space float, double, ...
static const unsigned int nvar
number of fields in the system
stub when library compiled without eigen
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Vector< double > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static constexpr bool boundary[]
boundary at X and Y
static constexpr bool boundary[]
boundary at X and Y
Vector< double > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ...
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
double stype
type of space float, double, ...
static constexpr bool boundary[]
boundary at X and Y
double stype
type of space float, double, ...
double stype
type of space float, double, ...
static const unsigned int nvar
number of fields in the system
Sparse Matrix implementation.
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
double stype
type of space float, double, ...
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static const unsigned int nvar
number of fields in the system
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ...
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static constexpr bool boundary[]
boundary at X and Y
Vector< double > Vector_type
type of Vector for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
This class is able to do Matrix inversion in parallel with PETSC solvers.
Vector< double > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ..
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
static constexpr bool boundary[]
boundary at X and Y
double stype
type of space float, double, ...
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
static constexpr bool boundary[]
boundary at X and Y
double stype
type of space float, double, ...
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int nvar
number of fields in the system
Vector< double > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ..
static const unsigned int nvar
number of fields in the system
static const unsigned int nvar
number of fields in the system
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static constexpr bool boundary[]
boundary at X and Y
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
double stype
type of space float, double, ...
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
double stype
type of space float, double, ..
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
double stype
type of space float, double, ...
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
double stype
type of space float, double, ...
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
double stype
type of space float, double, ...
double stype
type of space float, double, ...
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static const unsigned int nvar
number of fields in the system
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
double stype
type of space float, double, ...
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
double stype
type of space float, double, ..
Vector< double > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, EIGEN_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int nvar
number of fields in the system
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
double stype
type of space float, double, ...
static const unsigned int nvar
number of fields in the system
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static constexpr bool boundary[]
boundary at X and Y
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int nvar
number of fields in the system
static constexpr bool boundary[]
boundary at X and Y
Vector< double > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
static const unsigned int nvar
number of fields in the system
double stype
type of space float, double, ...
static constexpr bool boundary[]
boundary at X and Y
static const unsigned int nvar
number of fields in the system
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
Vector< double, PETSC_BASE > Vector_type
type of Vector for the linear solver
SparseMatrix< double, int, PETSC_BASE > SparseMatrix_type
type of SparseMatrix for the linear solver
Vector< double > Vector_type
type of Vector for the linear solver
vector_dist< dims, double, aggregate< double > > b_part
type of base particles
static const unsigned int dims
dimensionaly of the equation ( 3D problem ...)
static constexpr bool boundary[]
boundary at X and Y
static constexpr bool boundary[]
boundary at X and Y
vector_dist< dims, double, aggregate< double > > b_part
type of base particles