|
| template<Size N> |
| NAMESPACE_SPH_BEGIN INLINE void | computeGreenGamma (ArrayView< Float > gamma, const Vector dr) |
| |
| template<Size M, Size N> |
| Multipole< N - 2 *M > | computeTrace (const Multipole< N > &m) |
| | Computes M-fold trace of given multipole moment. More...
|
| |
| template<Size N, Size M> |
| INLINE Float | reducedFactor () |
| |
| template<Size N> |
| TracelessMultipole< N > | computeReducedMultipole (const Multipole< N > &m) |
| |
| template<> |
| TracelessMultipole< 4 > | computeReducedMultipole (const Multipole< 4 > &m) |
| |
| template<> |
| TracelessMultipole< 3 > | computeReducedMultipole (const Multipole< 3 > &m) |
| |
| template<> |
| TracelessMultipole< 2 > | computeReducedMultipole (const Multipole< 2 > &m) |
| |
| template<> |
| TracelessMultipole< 1 > | computeReducedMultipole (const Multipole< 1 > &m) |
| |
| template<> |
| TracelessMultipole< 0 > | computeReducedMultipole (const Multipole< 0 > &m) |
| |
| template<Size M, Size N> |
| std::enable_if_t<(M< N), TracelessMultipole< M > > | computeMultipolePotential (const TracelessMultipole< N > &q, const Vector &r) |
| |
| template<Size M, Size N> |
| std::enable_if_t< M==N, TracelessMultipole< M > > | computeMultipolePotential (const TracelessMultipole< N > &q, const Vector &UNUSED(r)) |
| |
| template<Size M, Size N> |
| std::enable_if_t<(M > N), TracelessMultipole< M > > | computeMultipolePotential (const TracelessMultipole< N > &UNUSED(q), const Vector &UNUSED(r)) |
| |
| template<Size N> |
| INLINE Multipole< N > | Detail::computeMultipoleImpl (const Vector &dr, const Float m) |
| |
| template<> |
| INLINE Multipole< 0 > | Detail::computeMultipoleImpl (const Vector &UNUSED(dr), const Float m) |
| |
| template<Size N, typename TSequence > |
| Multipole< N > | computeMultipole (ArrayView< const Vector > r, ArrayView< const Float > m, const Vector &r0, const TSequence &sequence) |
| |
| INLINE TracelessMultipole< 1 > | parallelAxisTheorem (const TracelessMultipole< 1 > &Qi, const Float Q, const Vector &d) |
| |
| INLINE TracelessMultipole< 2 > | parallelAxisTheorem (const TracelessMultipole< 2 > &Qij, const Float Q, const Vector &d) |
| |
| INLINE TracelessMultipole< 3 > | parallelAxisTheorem (const TracelessMultipole< 3 > &Qijk, const TracelessMultipole< 2 > &Qij, const Float Q, const Vector &d) |
| |
| INLINE TracelessMultipole< 4 > | parallelAxisTheorem (const TracelessMultipole< 4 > &Qijkl, const TracelessMultipole< 3 > &Qijk, const TracelessMultipole< 2 > &Qij, const Float Q, const Vector &d) |
| |
| template<Size M, Size N> |
| INLINE Vector | computeMultipoleAcceleration (const MultipoleExpansion< N > &ms, ArrayView< const Float > gamma, const Vector &dr) |
| |
| template<Size N> |
| Vector | evaluateGravity (const Vector &dr, const MultipoleExpansion< N > &ms, const MultipoleOrder maxOrder) |
| |