26 #ifndef BaseBoundary_H
27 #define BaseBoundary_H
76 void read(std::istream& is)
override = 0;
82 void write(std::ostream& os)
const override = 0;
124 #ifdef MERCURYDPM_USE_MPI
131 std::set<BaseParticle*>& getParticlesToBeDeleted();
135 #ifdef MERCURYDPM_USE_MPI
143 std::set<BaseParticle*> particlesToBeDeleted_;
#define UNUSED
Definition: GeneralDefine.h:39
Definition: BaseBoundary.h:49
virtual void createPeriodicParticle(BaseParticle *p UNUSED, ParticleHandler &pH UNUSED)
Creates a periodic particle in case of periodic boundaries in serial build.
Definition: BaseBoundary.cc:81
void read(std::istream &is) override=0
Reads the object's id_ from given istream NB: purely virtual function, overriding the version of Base...
Definition: BaseBoundary.cc:61
virtual void createPeriodicParticles(ParticleHandler &pH UNUSED)
Creates periodic copies of given particle in case of periodic boundaries.
Definition: BaseBoundary.cc:91
void write(std::ostream &os) const override=0
Adds object's id_ to given ostream NB: purely virtual function, overriding the version of BaseObject.
Definition: BaseBoundary.cc:70
~BaseBoundary() override
destructor
Definition: BaseBoundary.cc:52
virtual BaseBoundary * copy() const =0
Used to create a copy of the object NB: purely virtual function.
BoundaryHandler * getHandler() const
Returns the boundary's BoundaryHandler.
Definition: BaseBoundary.cc:143
BoundaryHandler * handler_
pointer to the boundary's BoundaryHandler
Definition: BaseBoundary.h:152
virtual void checkBoundaryAfterParticlesMove(ParticleHandler &pH)
Virtual function that does things to particles, each time step after particles have moved.
Definition: BaseBoundary.cc:113
virtual void checkBoundaryBeforeTimeStep(DPMBase *md)
Virtual function that does things before each time step.
Definition: BaseBoundary.cc:101
virtual void actionsBeforeTimeLoop()
Virtual function that does something after DPMBase::setupInitialConditions but before the first time ...
Definition: BaseBoundary.cc:125
void setHandler(BoundaryHandler *handler)
Sets the boundary's BoundaryHandler.
Definition: BaseBoundary.cc:134
virtual void modifyGhostAfterCreation(BaseParticle *particle, int i)
Definition: BaseBoundary.cc:117
BaseBoundary()
default constructor.
Definition: BaseBoundary.cc:32
virtual void writeVTK(std::fstream &file)
Definition: BaseBoundary.h:112
It is an abstract base class due to the purely virtual functions declared below. Even if the function...
Definition: BaseObject.h:51
Definition: BaseParticle.h:54
Container to store pointers to all BaseBoundary objects.
Definition: BoundaryHandler.h:39
The DPMBase header includes quite a few header files, defining all the handlers, which are essential....
Definition: DPMBase.h:77
Container to store all BaseParticle.
Definition: ParticleHandler.h:48
Container to store pointers to all BasePeriodicBoundary objects.
Definition: PeriodicBoundaryHandler.h:46
const std::complex< Mdouble > i
Definition: ExtendedMath.h:51