Loading...
Searching...
No Matches
Stencils.h File Reference

Defines various finite-difference stencils that allow for the computation of gradients of order 1 to 5, mean curvatures, gaussian curvatures, principal curvatures, tri-linear interpolation, zero-crossing, laplacian, and closest point transform. More...

`#include "../NanoVDB.h"`

Go to the source code of this file.

## Classes

class | BaseStencil< DerivedType, SIZE, GridT >
struct | BaseStencil< DerivedType, SIZE, GridT >::Mask
class | BoxStencil< GridT >
class | GradStencil< GridT >
class | WenoStencil< GridT, RealT >
| This is a special 19-point stencil that supports optimal fifth-order WENO upwinding, second-order central differencing, Laplacian, and zero-crossing test. More...
class | CurvatureStencil< GridT, RealT >

## Namespaces

namespace | nanovdb

## Functions

template<typename ValueType, typename RealT = ValueType>
ValueType | WENO5 (const ValueType &v1, const ValueType &v2, const ValueType &v3, const ValueType &v4, const ValueType &v5, RealT scale2=1.0)
| Implementation of nominally fifth-order finite-difference WENO.
template<typename RealT>
RealT | GodunovsNormSqrd (bool isOutside, RealT dP_xm, RealT dP_xp, RealT dP_ym, RealT dP_yp, RealT dP_zm, RealT dP_zp)
template<typename RealT>
RealT | GodunovsNormSqrd (bool isOutside, const Vec3< RealT > &gradient_m, const Vec3< RealT > &gradient_p)

## Detailed Description

Defines various finite-difference stencils that allow for the computation of gradients of order 1 to 5, mean curvatures, gaussian curvatures, principal curvatures, tri-linear interpolation, zero-crossing, laplacian, and closest point transform.

Author
  Ken Museth

Date
  April 9, 2021