OGS
ElementQualityMetric.cpp
Go to the documentation of this file.
1
// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2
// SPDX-License-Identifier: BSD-3-Clause
3
4
#include "
ElementQualityMetric.h
"
5
6
#include <cmath>
7
8
#include "
MeshLib/Node.h
"
9
10
namespace
MeshToolsLib
11
{
12
ElementQualityMetric::ElementQualityMetric
(
MeshLib::Mesh
const
& mesh)
13
:
_mesh
(mesh)
14
{
15
_element_quality_metric
.resize(
_mesh
.getNumberOfElements(), -1.0);
16
}
17
18
BaseLib::Histogram<double>
ElementQualityMetric::getHistogram
(
19
std::size_t n_bins)
const
20
{
21
if
(n_bins == 0)
22
{
23
n_bins =
static_cast<
std::size_t
>
(
24
1 +
25
3.3 * std::log(
static_cast<
float
>
((
_mesh
.getNumberOfElements()))));
26
}
27
28
return
BaseLib::Histogram<double>
(
getElementQuality
(), n_bins,
true
);
29
}
30
31
std::vector<double>
const
&
ElementQualityMetric::getElementQuality
()
const
32
{
33
return
_element_quality_metric
;
34
}
35
}
// namespace MeshToolsLib
ElementQualityMetric.h
Node.h
BaseLib::Histogram
Definition
Histogram.h:22
MeshLib::Mesh
Definition
Mesh.h:34
MeshToolsLib::ElementQualityMetric::_element_quality_metric
std::vector< double > _element_quality_metric
Definition
ElementQualityMetric.h:42
MeshToolsLib::ElementQualityMetric::getHistogram
virtual BaseLib::Histogram< double > getHistogram(std::size_t n_bins=0) const
Definition
ElementQualityMetric.cpp:18
MeshToolsLib::ElementQualityMetric::ElementQualityMetric
ElementQualityMetric(MeshLib::Mesh const &mesh)
Definition
ElementQualityMetric.cpp:12
MeshToolsLib::ElementQualityMetric::_mesh
MeshLib::Mesh const & _mesh
Definition
ElementQualityMetric.h:41
MeshToolsLib::ElementQualityMetric::getElementQuality
std::vector< double > const & getElementQuality() const
Returns the result vector.
Definition
ElementQualityMetric.cpp:31
MeshToolsLib
Definition
Node.h:11
MeshToolsLib
MeshQuality
ElementQualityMetric.cpp
Generated by
1.14.0