OpenVDB 11.0.0

Loading...
Searching...
No Matches
Classes | Namespaces | Functions
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/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
| Convert a base-pointer to an openvdb grid, denoted srcGrid, to a nanovdb grid of the same type, e.g. float -> float or openvdb::Vec3f -> nanovdb::Vec3f.

## Functions
template<typename ValueType , typename RealT = ValueType>
__hostdev__ 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 >
__hostdev__ 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 >
__hostdev__ 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