30 double tolerance(
double referenceTolerance,
double h)
const
32 const double unknown = std::numeric_limits<double>::quiet_NaN();
33 if (!
valid() || !(referenceTolerance > 0) || !std::isfinite(referenceTolerance) ||
34 !std::isfinite(
h) ||
h < 0)
37 return referenceTolerance;
43 const long double scaled =
static_cast<long double>(referenceTolerance) *
h /
referenceSize;
45 static_cast<long double>(cap)));
53 if (!std::isfinite(flatness) || !(actualSize > 0) || !std::isfinite(actualSize) ||
54 !(targetSize > 0) || !std::isfinite(targetSize))
55 return std::numeric_limits<double>::infinity();
56 return std::sqrt(std::max(0., 2 * (1 - std::clamp(flatness, -1., 1.)))) *
57 (actualSize / targetSize);
int h
Definition mesh2dresultsexport.cpp:477
Definition qtcdtstorage.h:9
double resolutionRemovalImportance(double flatness, double actualSize, double targetSize)
Definition terrainpolicy.hpp:51
CoarseningOrder
Definition terrainpolicy.hpp:9
TerrainToleranceMode
Definition terrainpolicy.hpp:10
Definition terrainpolicy.hpp:15
bool valid() const
Definition terrainpolicy.hpp:21
double tolerance(double referenceTolerance, double h) const
Definition terrainpolicy.hpp:30
double minimumTolerance
Definition terrainpolicy.hpp:18
TerrainToleranceMode mode
Definition terrainpolicy.hpp:16
double referenceSize
Definition terrainpolicy.hpp:17
double maximumTolerance
Definition terrainpolicy.hpp:19
double
Definition swmmpollutantpropertyadapter.cpp:68