|
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) |
|