NiHu  2.0
NiHu::fmm::laplace_3d_fmm Class Reference

the fmm for the Laplace equation in 3D More...

#include <laplace_3d_fmm.hpp>

Classes

class  l2l
 L2L operator of the Laplace 3D FMM. More...
 
class  l2p
 L2P operator of the Laplace 3D FMM. More...
 
class  m2l
 M2L operator of the Laplace 3D FMM. More...
 
class  m2m
 M2M operator of the Laplace 3D FMM. More...
 
class  m2p
 M2P operator of the Laplace 3D FMM. More...
 
class  p2l
 P2L operator of the Laplace 3D FMM. More...
 
class  p2m
 P2M operator of the Laplace 3D FMM. More...
 

Public Types

typedef laplace_3d_cluster cluster_t
 the cluster type
 
typedef cluster_t::bounding_box_t bounding_box_t
 the bounding box type
 
typedef cluster_t::location_t location_t
 the location type
 

Public Member Functions

template<int Nx, int Ny>
fmm::p2p< NiHu::normal_derivative_kernel< NiHu::laplace_kernel< NiHu::space_3d< double > >, Nx, Ny > > create_p2p () const
 return an instance of the P2P operator More...
 
template<unsigned Ny>
p2m< Ny > create_p2m () const
 return an instance of the P2M operator More...
 
template<unsigned Ny>
p2l< Ny > create_p2l () const
 return an instance of the P2L operator More...
 
template<unsigned Nx>
m2p< Nx > create_m2p () const
 return an instance of the M2P operator More...
 
template<unsigned Nx>
l2p< Nx > create_l2p () const
 return an instance of the L2P operator More...
 
m2m create_m2m () const
 return an instance of the M2M operator More...
 
l2l create_l2l () const
 return an instance of the L2L operator More...
 
m2l create_m2l () const
 return an instance of the M2L operator More...
 

Static Public Member Functions

static std::complex< double > Y (size_t n, int m, double theta, double phi)
 
static double A (int n, int m)
 

Detailed Description

the fmm for the Laplace equation in 3D

Definition at line 82 of file laplace_3d_fmm.hpp.

Member Function Documentation

◆ create_l2l()

laplace_3d_fmm::l2l NiHu::fmm::laplace_3d_fmm::create_l2l ( ) const

return an instance of the L2L operator

Returns
an instance of the L2L operator

Definition at line 191 of file laplace_3d_fmm.cpp.

◆ create_l2p()

template<unsigned Nx>
l2p<Nx> NiHu::fmm::laplace_3d_fmm::create_l2p ( ) const
inline

return an instance of the L2P operator

Template Parameters
Nxorder of differentiation w.r.t x
Returns
an instance of the L2P operator

Definition at line 446 of file laplace_3d_fmm.hpp.

◆ create_m2l()

laplace_3d_fmm::m2l NiHu::fmm::laplace_3d_fmm::create_m2l ( ) const

return an instance of the M2L operator

Returns
an instance of the M2L operator

Definition at line 197 of file laplace_3d_fmm.cpp.

◆ create_m2m()

laplace_3d_fmm::m2m NiHu::fmm::laplace_3d_fmm::create_m2m ( ) const

return an instance of the M2M operator

Returns
an instance of the M2M operator

Definition at line 185 of file laplace_3d_fmm.cpp.

◆ create_m2p()

template<unsigned Nx>
m2p<Nx> NiHu::fmm::laplace_3d_fmm::create_m2p ( ) const
inline

return an instance of the M2P operator

Template Parameters
Nxorder of differentiation w.r.t x
Returns
an instance of the M2P operator

Definition at line 436 of file laplace_3d_fmm.hpp.

◆ create_p2l()

template<unsigned Ny>
p2l<Ny> NiHu::fmm::laplace_3d_fmm::create_p2l ( ) const
inline

return an instance of the P2L operator

Template Parameters
Nyorder of differentiation w.r.t y
Returns
an instance of the P2L operator

Definition at line 426 of file laplace_3d_fmm.hpp.

◆ create_p2m()

template<unsigned Ny>
p2m<Ny> NiHu::fmm::laplace_3d_fmm::create_p2m ( ) const
inline

return an instance of the P2M operator

Template Parameters
Nyorder of differentiation w.r.t y
Returns
an instance of the P2M operator

Definition at line 416 of file laplace_3d_fmm.hpp.

◆ create_p2p()

template<int Nx, int Ny>
fmm::p2p<NiHu::normal_derivative_kernel< NiHu::laplace_kernel<NiHu::space_3d<double> >, Nx, Ny > > NiHu::fmm::laplace_3d_fmm::create_p2p ( ) const
inline

return an instance of the P2P operator

Template Parameters
Nxorder of differentiation w.r.t x
Nyorder of differentiation w.r.t y
Returns
an instance of the P2P operator

Definition at line 101 of file laplace_3d_fmm.hpp.


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