|
occ
|
Templated storage class for Multipole expansions. More...
#include <multipole.h>
Public Types | |
| using | Dipole = std::array< double, 3 > |
| storage alias for 3 components of a dipole | |
| using | Quadrupole = std::array< double, 6 > |
| storage alias for the 6 components of a quadrupole | |
| using | Octupole = std::array< double, 10 > |
| storage alias for the 10 components of an octupole | |
| using | Hexadecapole = std::array< double, 15 > |
| storage alias for the 15 components of a hexadecapole | |
Public Member Functions | |
| int | rank () const |
| The multipole rank. | |
| double | charge () const |
The monopole (charge) part of this multipole expansion q | |
| Dipole | dipole () const |
The dipole part of this multipole expansion (x y z). | |
| Quadrupole | quadrupole () const |
The quadrupole part of this multipole expansion (xx xy xz yy yz zz). | |
| Octupole | octupole () const |
The octupole part of this multipole expansion (xxx xxy xxz xyy xyz xzz yyy yyz yzz zzz). | |
| Hexadecapole | hexadecapole () const |
The hexadecapole part of this multipole expansion (xxxx xxxz xxyy xxyz xxzz xyyy xyyz xyzz xzzz yyyy yyyz yyzz yzzz zzzz). | |
| template<unsigned int L2> | |
| Multipole< std::max(L, L2)> | operator+ (const Multipole< L2 > &rhs) const |
| Operator overload to add two multipoles together. | |
| std::string | to_string () const |
Public Attributes | |
| std::array< double, num_components > | components |
Static Public Attributes | |
| static constexpr unsigned int | num_components |
Templated storage class for Multipole expansions.
| using occ::core::Multipole< L >::Dipole = std::array<double, 3> |
storage alias for 3 components of a dipole
| using occ::core::Multipole< L >::Hexadecapole = std::array<double, 15> |
storage alias for the 15 components of a hexadecapole
| using occ::core::Multipole< L >::Octupole = std::array<double, 10> |
storage alias for the 10 components of an octupole
| using occ::core::Multipole< L >::Quadrupole = std::array<double, 6> |
storage alias for the 6 components of a quadrupole
|
inline |
The monopole (charge) part of this multipole expansion q
|
inline |
The dipole part of this multipole expansion (x y z).
|
inline |
The hexadecapole part of this multipole expansion (xxxx xxxz xxyy xxyz xxzz xyyy xyyz xyzz xzzz yyyy yyyz yyzz yzzz zzzz).
|
inline |
The octupole part of this multipole expansion (xxx xxy xxz xyy xyz xzz yyy yyz yzz zzz).
|
inline |
Operator overload to add two multipoles together.
|
inline |
The quadrupole part of this multipole expansion (xx xy xz yy yz zz).
|
inline |
The multipole rank.
|
inline |
| std::array<double, num_components> occ::core::Multipole< L >::components |
|
staticconstexpr |