Revision 73cf97cdbd8ffcb982e7306c2e5417babfe25653 authored by Dmitri Naumov on 06 July 2021, 10:49:42 UTC, committed by Dmitri Naumov on 06 July 2021, 21:16:01 UTC
Reduces output size from 870MiB to 540MiB, and doxygen's runtime (user + system in seconds) from 680+134 to 340+128.
1 parent 2bf700d
HeuristicSearchLength.h
/**
* \file
* \date 2014-09-19
* \brief Interface for heuristic search length strategy.
*
* \copyright
* Copyright (c) 2012-2021, OpenGeoSys Community (http://www.opengeosys.org)
* Distributed under a Modified BSD License.
* See accompanying file LICENSE.txt or
* http://www.opengeosys.org/project/license
*/
#pragma once
#include "MeshGeoToolsLib/SearchLength.h"
namespace MeshLib
{
class Mesh;
}
namespace MeshGeoToolsLib
{
/// HeuristicSearchLength implements a mesh dependent criterion for searching
/// mesh nodes near a geometry. For this purpose it computes the average
/// \f$\mu\f$ and the standard deviation \f$\sigma\f$ of edge length or node distance of mesh
/// elements. The search length is set to \f$\mu-2\sigma\f$. This strategy
/// is useful for meshes with different sizes of elements.
class HeuristicSearchLength : public SearchLength
{
public:
/// Type of length to be sampled
enum class LengthType
{
Edge, /// edge length of elements, which is recommended for meshes without nonlinear nodes
Node /// distance between nodes
};
/**
* Constructor
* @param mesh mesh object
* @param length_type length type to be sampled
*/
explicit HeuristicSearchLength(MeshLib::Mesh const& mesh,
LengthType length_type = LengthType::Edge);
private:
MeshLib::Mesh const& _mesh;
};
} // end namespace MeshGeoToolsLib
Computing file changes ...