Class ReflectiveBox
Defined in File Boundary.h
Inheritance Relationships
Base Type
public Module
(Class Module)
Class Documentation
-
class ReflectiveBox : public Module
Rectangular box with reflective boundaries.
If a particle passes on of the sides it is reflected back inside (position and velocity) and its initial position changed as if the particle had come from that side. This implements periodic boundaries, that keep the particle inside the box and instead move the source away reflectively. Particles can overshoot (be outside of the box during the step) since the step size is not limited by this module.
Public Functions
-
ReflectiveBox()
Default constructor
-
ReflectiveBox(Vector3d origin, Vector3d size)
Constructor
- Parameters:
origin – vector corresponding to the lower box corner
size – vector corresponding to the box sizes along each direction
-
virtual std::string getDescription() const
-
void setDescription(const std::string &description)
-
inline size_t addReference() const
-
inline size_t removeReference() const
-
inline int removeReferenceNoDelete() const
-
inline size_t getReferenceCount() const
Protected Attributes
-
mutable size_t _referenceCount
-
ReflectiveBox()