#include <sph_gaussian.h>
Public Types | |
typedef FixedSmoothingKernel < Types, CheckRange > | base_type |
typedef Types::real_type | real_type |
typedef Types::vector | vector |
Public Member Functions | |
WFixedGaussian () | |
~WFixedGaussian () | |
real_type | evaluate (const vector &r) const |
vector | gradient (const vector &r) const |
real_type | laplacian (const vector &r) const |
Protected Attributes | |
real_type | m_k |
Magic Gaussian constant for eval. | |
real_type | m_l |
Magic Gaussian constant for gradient. | |
real_type | m_m |
Magic Gaussian constant for laplacian. | |
real_type | m_inv_2hSqr |
Inverse 2 radius squared. | |
real_type | m_3hSqr |
3 radius squared. |
1 |r|^2 Gaussian : W(r,h) = -------- exp(- -----) <Monaghan 1992> h pi^0.5 h^2
1 |r|^2 Isotropic Gaussian : W(r,h) = -------------- exp(- -----) <Erleben, et al. 2005> (2 pi h^2)^1.5 2 h^2 W_gaussian Smoothing Kernel (fixed kernel support).
typedef FixedSmoothingKernel<Types, CheckRange> OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::base_type |
typedef Types::real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::real_type |
Reimplemented from OpenTissue::sph::FixedSmoothingKernel< Types, CheckRange >.
typedef Types::vector OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::vector |
Reimplemented from OpenTissue::sph::FixedSmoothingKernel< Types, CheckRange >.
OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::WFixedGaussian | ( | ) | [inline] |
Default Constructor.
OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::~WFixedGaussian | ( | ) | [inline] |
Deconstructor.
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::evaluate | ( | const vector & | r | ) | const [inline] |
W(r,h) = (1/(2 pi h^2)^1.5)exp(-r*r/(2 h^2))
vector OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::gradient | ( | const vector & | r | ) | const [inline] |
grad(W(r,h)) = r(sqrt(2)/(4 pi h^4 sqrt(pi h^2)))exp(-r*r/(2 h^2))
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::laplacian | ( | const vector & | r | ) | const [inline] |
laplacian(W(r,h)) = (sqrt(2)/(4 pi h^6 sqrt(pi h^2)))exp(-r*r/(2 h^2))(r*r-3h^2)
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::m_3hSqr [protected] |
3 radius squared.
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::m_inv_2hSqr [protected] |
Inverse 2 radius squared.
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::m_k [protected] |
Magic Gaussian constant for eval.
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::m_l [protected] |
Magic Gaussian constant for gradient.
real_type OpenTissue::sph::WFixedGaussian< Types, Radius, CheckRange >::m_m [protected] |
Magic Gaussian constant for laplacian.