HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
Loading...
Searching...
No Matches
hypre-compute-errors.hpp
Go to the documentation of this file.
1#ifndef HYPRE_COMPUTE_ERRORS_HPP
2#define HYPRE_COMPUTE_ERRORS_HPP
3
4#include "hypre.hpp"
5
6namespace HArDCore2D {
7
8 namespace DSL {
9
10 struct ComputeErrorsParameters {
11 bool use_threads = true;
12 std::ostream & output = std::cout;
13 };
14
18 std::map<std::string, double>
20 const HYPRE * scheme,
21 const Eigen::VectorXd & uph,
22 const Eigen::VectorXd & upI,
23 const Eigen::VectorXd & brh,
24 const Eigen::VectorXd & brI,
25 const double & viscosity,
26 const double & magnetic_diffusivity,
27 const ComputeErrorsParameters & parameters = {}
28 );
29
31 std::map<std::string, double>
32 compute_errors(const HYPRE * scheme,
34 const Eigen::VectorXd & uh,
35 const Eigen::VectorXd & ph,
36 const Eigen::VectorXd & bh,
37 const Eigen::VectorXd & rh,
38 const ComputeErrorsParameters & parameters = {},
39 const double & t = 0.
40 );
41
43 std::map<std::string, double>
45 const HYPRE * scheme,
46 const Eigen::VectorXd & uph,
47 const Eigen::VectorXd & upI,
48 const Eigen::VectorXd & brh,
49 const Eigen::VectorXd & brI,
50 const ComputeErrorsParameters & parameters
51 );
52
53
54 std::map<std::string, double>
56 const HYPRE * scheme,
58 const Eigen::VectorXd & uph,
59 const Eigen::VectorXd & upI,
60 const Eigen::VectorXd & brh,
61 const Eigen::VectorXd & brI,
62 const double & viscosity,
63 const double & magnetic_diffusivity,
64 const double & current_time,
65 const ComputeErrorsParameters & parameters = {}
66 );
67
71 std::map<std::string, double>
73 const HYPRE * scheme,
75 const Eigen::VectorXd & uph_half,
76 const Eigen::VectorXd & upI_half,
77 const Eigen::VectorXd & uph,
78 const Eigen::VectorXd & upI,
79 const Eigen::VectorXd & brh_half,
80 const Eigen::VectorXd & brI_half,
81 const Eigen::VectorXd & brh,
82 const Eigen::VectorXd & brI,
83 const double & viscosity,
84 const double & magnetic_diffusivity,
85 const double & time_step,
86 const double & current_time,
87 const ComputeErrorsParameters & parameters = {}
88 );
89
90 } // namespace DSL
91
92} // namespace HArDCore2D
93
94#endif
std::map< std::string, double > compute_discrete_errors(const HYPRE *scheme, const Eigen::VectorXd &uph, const Eigen::VectorXd &upI, const double &viscosity, const ComputeErrorsParameters &parameters={})
Definition hypre-compute-errors.cpp:13
std::map< std::string, double > compute_errors(const HYPRE *scheme, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uh, const Eigen::VectorXd &ph, const ComputeErrorsParameters &parameters={})
Compute errors between the discrete solution and the continuous one.
Definition hypre-compute-errors.cpp:117
std::map< std::string, double > compute_energy_errors(const HYPRE *scheme, const HArDCore2D::NavierStokesSolutions::IExactSolution *isolution, const Eigen::VectorXd &uph, const Eigen::VectorXd &upI, const double &viscosity, const double &current_time, const ComputeErrorsParameters &parameters={})
Definition hypre-compute-errors.cpp:388
std::map< std::string, double > compute_l2_dof_errors(const HYPRE *scheme, const Eigen::VectorXd &uph, const Eigen::VectorXd &upI, const ComputeErrorsParameters &parameters)
Compute the errors on DOFs.
Definition hypre-compute-errors.cpp:329
Definition ddr-klplate.hpp:27
std::ostream & output
Definition hypre-compute-errors.hpp:12
bool use_threads
Definition hypre-compute-errors.hpp:11