Ponca  e26a0e88a45818354616c1a7180bcd203aecad3c
Point Cloud Analysis library
Loading...
Searching...
No Matches
Ponca::CompactExpWeightKernel< _Scalar > Class Template Reference

Compact Exponential WeightKernel defined in \(\left[0 : 1\right]\). More...

#include <weightKernel.h>

+ Inheritance diagram for Ponca::CompactExpWeightKernel< _Scalar >:
+ Collaboration diagram for Ponca::CompactExpWeightKernel< _Scalar >:

Public Types

typedef _Scalar Scalar
 Scalar type defined outside the class.
 

Public Member Functions

Scalar f (const Scalar &_x) const
 Defines the smooth weighting function \( w(x) = e^{-\frac{x^2}{1 - x^2}} \).
 
Scalar df (const Scalar &_x) const
 Defines the smooth first order weighting function \( \nabla w(x) = -\frac{2 x e^{\frac{x^2}{x^2 - 1}}}{(1 - x^2)^2} \).
 
Scalar ddf (const Scalar &_x) const
 Defines the smooth second order weighting function \( \nabla^2 w(x) = \frac{2 e^\frac{x^2}{x^2 - 1} \left(4 x^{\frac{2}{x^2 - 1} + 2} log(x) - (x^2 - 1) \left(-3 x^2 + 2 x^\frac{2}{x^2 - 1} - 1\right)\right)}{(x^2 - 1)^4} \).
 

Static Public Attributes

static constexpr bool isDValid = true
 df is defined and valid on the definition interval
 
static constexpr bool isDDValid = false
 ddf is not defined and valid on the definition interval
 

Detailed Description

template<typename _Scalar>
class Ponca::CompactExpWeightKernel< _Scalar >

Compact Exponential WeightKernel defined in \(\left[0 : 1\right]\).

Continuity is \(C^\infty\) for \(x=1\).

Warning
\(\nabla^2 w(x)\) is not defined for all values in \(\left[0 : 1\right]\). Do not use for second-order differentiation.

Definition at line 164 of file weightKernel.h.

Member Typedef Documentation

◆ Scalar

template<typename _Scalar >
typedef _Scalar Ponca::CompactExpWeightKernel< _Scalar >::Scalar

Scalar type defined outside the class.

Definition at line 168 of file weightKernel.h.

Member Function Documentation

◆ ddf()

template<typename _Scalar >
Scalar Ponca::CompactExpWeightKernel< _Scalar >::ddf ( const Scalar _x) const
inline

Defines the smooth second order weighting function \( \nabla^2 w(x) = \frac{2 e^\frac{x^2}{x^2 - 1} \left(4 x^{\frac{2}{x^2 - 1} + 2} log(x) - (x^2 - 1) \left(-3 x^2 + 2 x^\frac{2}{x^2 - 1} - 1\right)\right)}{(x^2 - 1)^4} \).

See also
https://www.wolframalpha.com/input?i2d=true&i=+-Divide%5B%5C%2840%292+Power%5Be%2C%5C%2840%29Power%5Bx%2CDivide%5B2%2C%5C%2840%29Power%5Bx%2C2%5D+-+1%5C%2841%29%5D%5D%5C%2841%29%5D+x%5C%2841%29%2CPower%5B%5C%2840%291+-+Power%5Bx%2C2%5D%5C%2841%29%2C2%5D%5D

Definition at line 183 of file weightKernel.h.

◆ df()

template<typename _Scalar >
Scalar Ponca::CompactExpWeightKernel< _Scalar >::df ( const Scalar _x) const
inline

◆ f()

template<typename _Scalar >
Scalar Ponca::CompactExpWeightKernel< _Scalar >::f ( const Scalar _x) const
inline

Defines the smooth weighting function \( w(x) = e^{-\frac{x^2}{1 - x^2}} \).

See also
https://www.wolframalpha.com/input?i=e%5E%28-x%5E2%2F%281+-+x%5E2%29%29&assumption=%22ClashPrefs%22+-%3E+%7B%22Math%22%7D

Definition at line 174 of file weightKernel.h.

Member Data Documentation

◆ isDDValid

template<typename _Scalar >
constexpr bool Ponca::CompactExpWeightKernel< _Scalar >::isDDValid = false
staticconstexpr

ddf is not defined and valid on the definition interval

Definition at line 194 of file weightKernel.h.

◆ isDValid

template<typename _Scalar >
constexpr bool Ponca::CompactExpWeightKernel< _Scalar >::isDValid = true
staticconstexpr

df is defined and valid on the definition interval

Definition at line 192 of file weightKernel.h.