ViennaLS
Loading...
Searching...
No Matches
lsOxidationSolverBase.hpp File Reference
#include <lsDomain.hpp>
#include <hrleSparseIterator.hpp>
#include <algorithm>
#include <array>
#include <cmath>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <limits>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  viennals::detail::IndexTypeHasher< D >
class  viennals::OxidationSolverBase< T, D >
 Common Cartesian-grid infrastructure shared by the oxidation solver classes (diffusion, deformation). Provides the node lookup table, grid extents, and the core grid utility methods that operate on them. More...
struct  viennals::OxidationSolverBase< T, D >::GridBounds

Namespaces

namespace  viennals
namespace  viennals::detail

Functions

template<int D>
std::size_t viennals::detail::gridIndexHash (const viennahrle::Index< D > &index)
template<class T>
Vec3D< T > viennals::detail::vecScaled (const Vec3D< T > &source, T factor)
template<class T>
Vec3D< T > viennals::detail::vecAdd (const Vec3D< T > &a, const Vec3D< T > &b)
template<class T>
Vec3D< T > viennals::detail::vecSubtract (const Vec3D< T > &a, const Vec3D< T > &b)
template<class T>
void viennals::detail::vecAddTo (Vec3D< T > &target, const Vec3D< T > &source)
template<class T>
T viennals::detail::clampLevelSetPhi (T v)
 Clamp HRLE far-field sentinels (±DBL_MAX) to ±1 before differencing to prevent DBL_MAX² overflow that silently returns the zero vector.
template<class T>
T viennals::detail::levelSetCrossingDistance (T insidePhi, T outsidePhi, T minBoundaryFraction, T gridDelta)