Fermat
Classes | Namespaces | Functions
sh.h File Reference

Defines spherical and zonal harmonics functions and classes. More...

#include <cugar/basic/numbers.h>
#include <cugar/linalg/vector.h>
#include <cugar/analysis/project.h>
#include <cugar/basic/functors.h>
#include <cugar/spherical/sh_inline.h>

Go to the source code of this file.

Classes

struct  cugar::SH_basis< L >
 

Namespaces

 cugar
 Define a vector_view POD type and plain_view() for std::vector.
 

Functions

template<typename Vector3 >
CUGAR_HOST_DEVICE float cugar::sh (const int32 l, const int32 m, const Vector3 &v)
 
template<int32 l, typename Vector3 >
CUGAR_HOST_DEVICE float cugar::sh (const int32 m, const Vector3 &v)
 
template<int32 l, int32 m, typename Vector3 >
CUGAR_HOST_DEVICE float cugar::sh (const Vector3 &v)
 
template<typename ZHVector , typename SHVector , typename Vector3 >
CUGAR_HOST_DEVICE void cugar::rotate_ZH (const int32 L, const ZHVector &zh_coeff, const Vector3 &d, SHVector &sh_coeff)
 
template<int32 L, typename ZHVector , typename SHVector , typename Vector3 >
CUGAR_HOST_DEVICE void cugar::rotate_ZH (const ZHVector &zh_coeff, const Vector3 &d, SHVector &sh_coeff)
 
template<int32 l, int32 m, typename Vector3 >
CUGAR_HOST_DEVICE float cugar::rotate_ZH (const float zh_l, const Vector3 &d)
 
CUGAR_FORCEINLINE CUGAR_HOST_DEVICE float cugar::sh_legendre_polynomial (const uint32 l, const uint32 m, const float x, const float y)
 
template<typename OutputIterator >
CUGAR_HOST_DEVICE void cugar::sh_legendre_integrals (const uint32 n, const float x, OutputIterator r)
 
CUGAR_HOST_DEVICE float cugar::sh_polar_integral (const int32 m, const float phi)
 

Detailed Description

Defines spherical and zonal harmonics functions and classes.