MercuryDPM
0.10
|
Defines a pair of periodic walls. The particles are in {x: position_left<=normal*x <position_right}, with normal being the outward unit normal vector of the right wall. If a particle moves outside these boundaries, it will be shifted. More...
#include <CircularPeriodicBoundary.h>
Private Attributes | |
double | innerRadius |
Defines a pair of periodic walls. The particles are in {x: position_left<=normal*x <position_right}, with normal being the outward unit normal vector of the right wall. If a particle moves outside these boundaries, it will be shifted.
Definition at line 32 of file CircularPeriodicBoundary.h.
|
inline |
Definition at line 35 of file CircularPeriodicBoundary.h.
References innerRadius.
Referenced by copy().
|
inline |
Definition at line 43 of file CircularPeriodicBoundary.h.
References innerRadius.
|
inline |
Definition at line 122 of file CircularPeriodicBoundary.h.
References ParticleHandler::addObject(), BaseParticle::copy(), BaseParticle::get_Displacement(), BaseParticle::get_Index(), BaseParticle::get_Position(), innerRadius, constants::pi, R, BaseHandler< T >::removeObject(), rotateParticle(), BaseParticle::set_Displacement(), Vec3D::X, and Vec3D::Y.
|
inlinevirtual |
BaseBoundary copy method.
It calls the copy constructor of this BaseBoundary, useful for polymorphism todo{Does this work correctly?}
Implements BaseBoundary.
Definition at line 51 of file CircularPeriodicBoundary.h.
References CircularPeriodicBoundary().
|
inline |
Definition at line 73 of file CircularPeriodicBoundary.h.
References ParticleHandler::addObject(), BaseParticle::copy(), BaseParticle::get_InteractionRadius(), BaseParticle::get_PeriodicFromParticle(), BaseParticle::get_Position(), ParticleHandler::getLargestParticle(), innerRadius, constants::pi, R, rotateParticle(), BaseParticle::set_periodicFromParticle(), Vec3D::X, and Vec3D::Y.
|
inline |
|
inline |
|
inline |
todo{Do we need to update rotations and rotational velocitys?}
Definition at line 59 of file CircularPeriodicBoundary.h.
References BaseParticle::get_Position(), BaseParticle::get_Velocity(), R, BaseParticle::set_Position(), BaseParticle::set_Velocity(), Vec3D::X, Vec3D::Y, and Vec3D::Z.
Referenced by checkBoundaryAfterParticleMoved(), and createPeriodicParticles().
|
private |
Definition at line 208 of file CircularPeriodicBoundary.h.
Referenced by checkBoundaryAfterParticleMoved(), CircularPeriodicBoundary(), createPeriodicParticles(), print(), and read().