libMesh::WendlandRBF< SpaceDim, Continuity > Class Template Reference

Interface for evaluating Wendland's radial basis functions. More...

#include <radial_basis_functions.h>

Public Member Functions

 WendlandRBF (const Real r_cut=1.)
 
Real operator() (Real) const
 
template<>
Real operator() (Real rad) const
 
template<>
Real operator() (Real rad) const
 
template<>
Real operator() (Real rad) const
 
template<>
Real operator() (Real rad) const
 

Private Attributes

const Real _rcut
 

Detailed Description

template<unsigned int SpaceDim, unsigned int Continuity>
class libMesh::WendlandRBF< SpaceDim, Continuity >

Interface for evaluating Wendland's radial basis functions.

Simple radial basis function. Constructor. Evaluate the radial basis function at the requested location. Wendland's compactly supported Radial Basis Functions.

Author
Benjamin S. Kirk
Date
2013

Definition at line 75 of file radial_basis_functions.h.

Constructor & Destructor Documentation

template<unsigned int SpaceDim, unsigned int Continuity>
libMesh::WendlandRBF< SpaceDim, Continuity >::WendlandRBF ( const Real  r_cut = 1.)
inline

Constructor.

Definition at line 85 of file radial_basis_functions.h.

85  :
86  _rcut (r_cut)
87  { libmesh_experimental(); }

Member Function Documentation

template<unsigned int SpaceDim, unsigned int Continuity>
Real libMesh::WendlandRBF< SpaceDim, Continuity >::operator() ( Real  ) const
inline

Evaluate the radial basis function at the requested location.

Definition at line 92 of file radial_basis_functions.h.

92 { libmesh_not_implemented(); return 0.; }
template<>
Real libMesh::WendlandRBF< 3, 0 >::operator() ( Real  rad) const
inline

Definition at line 101 of file radial_basis_functions.h.

References libMesh::WendlandRBF< SpaceDim, Continuity >::_rcut.

102 {
103  if (rad > _rcut) return 0.;
104 
105  rad /= _rcut;
106 
107  return Utility::pow<2>(1.-rad);
108 }
template<>
Real libMesh::WendlandRBF< 3, 2 >::operator() ( Real  rad) const
inline

Definition at line 112 of file radial_basis_functions.h.

References libMesh::WendlandRBF< SpaceDim, Continuity >::_rcut.

113 {
114  if (rad > _rcut) return 0.;
115 
116  rad /= _rcut;
117 
118  return Utility::pow<4>(1.-rad)*(4.*rad + 1.);
119 }
template<>
Real libMesh::WendlandRBF< 3, 4 >::operator() ( Real  rad) const
inline

Definition at line 123 of file radial_basis_functions.h.

References libMesh::WendlandRBF< SpaceDim, Continuity >::_rcut.

124 {
125  if (rad > _rcut) return 0.;
126 
127  rad /= _rcut;
128 
129  return Utility::pow<6>(1.-rad)*((35.*rad + 18.)*rad + 3.);
130 }
template<>
Real libMesh::WendlandRBF< 3, 8 >::operator() ( Real  rad) const
inline

Definition at line 134 of file radial_basis_functions.h.

References libMesh::WendlandRBF< SpaceDim, Continuity >::_rcut.

135 {
136  if (rad > _rcut) return 0.;
137 
138  rad /= _rcut;
139 
140  return Utility::pow<8>(1.-rad)*(((32.*rad + 25.)*rad + 8.)*rad + 1.);
141 }

Member Data Documentation

template<unsigned int SpaceDim, unsigned int Continuity>
const Real libMesh::WendlandRBF< SpaceDim, Continuity >::_rcut
private

The documentation for this class was generated from the following file: