111 divergence([](
const VectorRd x,
const Cell *cell) ->
double {
return 0;}),
113 is_divergence_zero(
true),
114 is_divergence_constant(
true)
145 :
value([](const
VectorRd x, const Cell *cell) -> double { return 0.;}),
200 std::vector<int> m_iTC;
201 const double pi = acos(-1);
202 const double sqrt2 = std::pow(2, 0.5);
203 const double eps = 1e-5;
214 Solution create_solution(
const size_t n);
215 Diffusion create_diffusion(
const size_t n);
216 Advection create_advection(
const size_t n);
217 Reaction create_reaction(
const size_t n);
std::function< T(const VectorRd &, const Cell *)> CellFType
type for function of a point, that could be discontinuous between cells. T is the type of value of th...
Definition TestCase.hpp:42
The TestCase class provides definition of test cases.
Definition TestCase.hpp:164
void validate()
Check if the provided test cases are valid (within range, and combination of solution/diffusion valid...
Definition TestCase.cpp:538
CellFType< double > diff_source()
Returns the diffusion source term.
Definition TestCase.cpp:514
Advection get_advection()
Returns the advection.
Definition TestCase.hpp:224
Diffusion get_diffusion()
Returns the diffusion.
Definition TestCase.hpp:223
double get_lambda()
Returns the value of the parameter lambda.
Definition TestCase.hpp:221
CellFType< double > diff_advec_reac_source()
Returns the diffusion-advection-reaction source term.
Definition TestCase.cpp:525
Reaction get_reaction()
Returns the reaction.
Definition TestCase.hpp:225
Solution get_solution()
Returns the solution.
Definition TestCase.hpp:222
Eigen::Vector2d VectorRd
Definition basis.hpp:55
std::function< T(const VectorRd &)> FType
type for function of point. T is the type of value of the function
Definition basis.hpp:64
if(strcmp(field, 'real')) % real valued entries T
Definition mmread.m:93
Definition ddr-klplate.hpp:27
Structure to store an advection velocity and its divergence, together with various flags.
Definition TestCase.hpp:90
CellFType< VectorRd > value
Definition TestCase.hpp:120
bool is_zero
Definition TestCase.hpp:122
CellFType< double > divergence
Definition TestCase.hpp:121
Advection()
Definition TestCase.hpp:109
bool is_divergence_constant
Definition TestCase.hpp:124
Advection(const CellFType< VectorRd > value, const CellFType< double > divergence, const bool is_zero, const bool is_divergence_zero, const bool is_divergence_constant)
Definition TestCase.hpp:92
bool is_divergence_zero
Definition TestCase.hpp:123
Structure to store a diffusion tensor and its row-wise divergence.
Definition TestCase.hpp:68
const CellFType< MatrixRd > value
Definition TestCase.hpp:83
const CellFType< VectorRd > divergence
Definition TestCase.hpp:84
Diffusion(const CellFType< MatrixRd > value, const CellFType< VectorRd > divergence, const size_t degree)
Definition TestCase.hpp:70
const size_t degree
Definition TestCase.hpp:85
Structure to store a reaction term, together with various flags.
Definition TestCase.hpp:129
Reaction()
Definition TestCase.hpp:144
CellFType< double > value
Definition TestCase.hpp:153
Reaction(const CellFType< double > value, const bool is_zero, const bool is_constant)
Definition TestCase.hpp:131
bool is_constant
Definition TestCase.hpp:155
bool is_zero
Definition TestCase.hpp:154
Structure to store a solution and its derivatives.
Definition TestCase.hpp:46
const FType< double > value
Definition TestCase.hpp:61
const CellFType< VectorRd > gradient
Definition TestCase.hpp:62
Solution(const FType< double > value, const CellFType< VectorRd > gradient, const CellFType< MatrixRd > hessian)
Definition TestCase.hpp:48
const CellFType< MatrixRd > hessian
Definition TestCase.hpp:63