libMesh
Public Member Functions | Private Attributes | List of all members
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.)
 Constructor. More...
 
Real operator() (Real) const
 Evaluate the radial basis function at the requested location. More...
 
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.
 &zwj;/

class SimpleRBF { private: const Real _rcut;

public:

/** Constructor. ‍/ SimpleRBF (const Real r_cut = 1.) : _rcut (r_cut) {}

/** Evaluate the radial basis function at the requested location. ‍/ Real operator()(Real rad) const { if (rad > _rcut) return 0.;

rad /= _rcut;

return std::sqrt( 1+ rad*rad ); } };

/** 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

◆ WendlandRBF()

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

◆ operator()() [1/5]

template<>
Real libMesh::WendlandRBF< 3, 0 >::operator() ( Real  rad) const
inline

Definition at line 101 of file radial_basis_functions.h.

102 {
103  if (rad > _rcut) return 0.;
104 
105  rad /= _rcut;
106 
107  return Utility::pow<2>(1.-rad);
108 }

◆ operator()() [2/5]

template<>
Real libMesh::WendlandRBF< 3, 2 >::operator() ( Real  rad) const
inline

Definition at line 112 of file radial_basis_functions.h.

113 {
114  if (rad > _rcut) return 0.;
115 
116  rad /= _rcut;
117 
118  return Utility::pow<4>(1.-rad)*(4.*rad + 1.);
119 }

◆ operator()() [3/5]

template<>
Real libMesh::WendlandRBF< 3, 4 >::operator() ( Real  rad) const
inline

Definition at line 123 of file radial_basis_functions.h.

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 }

◆ operator()() [4/5]

template<>
Real libMesh::WendlandRBF< 3, 8 >::operator() ( Real  rad) const
inline

Definition at line 134 of file radial_basis_functions.h.

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 }

◆ operator()() [5/5]

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.; }

Member Data Documentation

◆ _rcut

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

Definition at line 78 of file radial_basis_functions.h.


The documentation for this class was generated from the following file:
libMesh::WendlandRBF::_rcut
const Real _rcut
Definition: radial_basis_functions.h:78