A representation of a multipole expansion.
More...
#include <MultipoleMoments.h>
|
MultipoleMoments & | operator+= (const MultipoleMoments &m) |
| Add two expansions together, using parallel axis theorem.
|
|
template<typename ParticleType> |
MultipoleMoments & | operator+= (const ParticleType &p) |
| Add the contribution of a particle to this multipole expansion.
|
|
MultipoleMoments | operator- (const MultipoleMoments &m) |
| Subtract an expansion from this larger one, yielding the leftover.
|
|
void | clear () |
| Reset this expansion to nothing.
|
|
cosmoType | getRadius () const |
|
void | setRadius (cosmoType r) |
|
|
cosmoType | soft |
|
cosmoType | totalMass |
| The total mass represented by this expansion.
|
|
Vector3D< cosmoType > | cm |
| The center of mass (zeroth order multipole)
|
|
FMOMR | mom |
|
|
class | CudaMultipoleMoments |
| Version of MultipoleMoments using cudatype.
|
|
void | operator| (PUP::er &p, MultipoleMoments &m) |
|
void | calculateRadiusFarthestCorner (MultipoleMoments &m, const OrientedBox< double > &box) |
| Given an enclosing box, set the multipole expansion size to the distance from the center of mass to the farthest corner of the box.
|
|
template<typename ParticleType> |
void | calculateRadiusFarthestParticle (MultipoleMoments &m, const ParticleType *begin, const ParticleType *end) |
| Given the positions that make up a multipole expansion, set the distance to the farthest particle from the center of mass.
|
|
void | calculateRadiusBox (MultipoleMoments &m, const OrientedBox< double > &box) |
|
template<typename ParticleType> |
void | calculateRadiusFirstParticle (MultipoleMoments &m, const ParticleType *begin, const ParticleType *end) |
|
A representation of a multipole expansion.
◆ calculateRadiusBox
void calculateRadiusBox |
( |
MultipoleMoments & | m, |
|
|
const OrientedBox< double > & | box ) |
|
friend |
Given an enclosing box, set the multipole expansion size to the distance from the center of the box to the farthest corner of the box
◆ calculateRadiusFirstParticle
template<typename ParticleType>
void calculateRadiusFirstParticle |
( |
MultipoleMoments & | m, |
|
|
const ParticleType * | begin, |
|
|
const ParticleType * | end ) |
|
friend |
Given list of particles, get a radius based on the first particle. N.B. this is a failover in case the box size is tiny. We assume the multipole moments have not been calculated.
The documentation for this class was generated from the following file: