20 #ifndef LIBMESH_ERROR_ESTIMATOR_H 21 #define LIBMESH_ERROR_ESTIMATOR_H 28 #ifdef LIBMESH_FORWARD_DECLARE_ENUMS 48 class EquationSystems;
50 template <
typename T>
class NumericVector;
101 bool estimate_parent_error =
false) = 0;
116 const std::map<const System *, SystemNorm> & error_norms,
118 bool estimate_parent_error =
false);
141 bool estimate_parent_error =
false);
170 void reduce_error (std::vector<ErrorVectorReal> & error_per_cell,
177 #endif // LIBMESH_ERROR_ESTIMATOR_H virtual void estimate_errors(const EquationSystems &equation_systems, ErrorVector &error_per_cell, const std::map< const System *, SystemNorm > &error_norms, const std::map< const System *, const NumericVector< Number > *> *solution_vectors=nullptr, bool estimate_parent_error=false)
Manages multiples systems of equations.
ErrorEstimator & operator=(const ErrorEstimator &)=default
virtual void estimate_error(const System &system, ErrorVector &error_per_cell, const NumericVector< Number > *solution_vector=nullptr, bool estimate_parent_error=false)=0
virtual ErrorEstimatorType type() const =0
Manages consistently variables, degrees of freedom, and coefficient vectors.
std::map< std::pair< const System *, unsigned int >, ErrorVector * > ErrorMap
void reduce_error(std::vector< ErrorVectorReal > &error_per_cell, const Parallel::Communicator &comm) const
virtual ~ErrorEstimator()=default