OGS
ElementQualityMetric.h
Go to the documentation of this file.
1 
15 #pragma once
16 
17 #include <vector>
18 
19 #include "BaseLib/Histogram.h"
20 
21 #include "MeshLib/Mesh.h"
23 
24 namespace MeshLib
25 {
26 
31 {
32 public:
33  explicit ElementQualityMetric(Mesh const& mesh);
34 
35  virtual ~ElementQualityMetric() = default;
36 
38  virtual void calculateQuality () = 0;
39 
41  std::vector<double> const& getElementQuality () const;
42 
45  virtual BaseLib::Histogram<double> getHistogram (std::size_t n_bins = 0) const;
46 
47 protected:
48  double _min = std::numeric_limits<double>::max();
49  double _max = 0;
50  Mesh const& _mesh;
51  std::vector<double> _element_quality_metric;
52 };
53 } // namespace MeshLib
Definition of the Element class.
Implementation of Histogram class.
Definition of the Mesh class.
virtual void calculateQuality()=0
Calculates the quality metric for each element of the mesh.
virtual ~ElementQualityMetric()=default
std::vector< double > const & getElementQuality() const
Returns the result vector.
virtual BaseLib::Histogram< double > getHistogram(std::size_t n_bins=0) const
std::vector< double > _element_quality_metric