|
| SineWall () |
| Default constructor, sets a chute with default parameters. More...
|
|
| SineWall (const SineWall &other) |
| Copy constructor. More...
|
|
| SineWall (Mdouble length, Mdouble sw_wavn, Mdouble sw_phshift, Mdouble sw_amp) |
| Constructor in which all parameters are set. More...
|
|
| ~SineWall () override |
|
void | set (Mdouble length, Mdouble sw_wavn, Mdouble sw_phshift, Mdouble sw_amp) |
|
SineWall * | copy () const override |
| Pure virtual function that can be overwritten in inherited classes in order to copy a BaseWall. More...
|
|
bool | getDistanceAndNormal (const BaseParticle &P, Mdouble &distance, Vec3D &normal_return) const override |
| Pure virtual function that computes the distance of a BaseParticle to this wall and returns the normal of this wall if there is a collision. More...
|
|
BaseInteraction * | getInteractionWith (BaseParticle *p, unsigned timeStamp, InteractionHandler *interactionHandler) override |
| Returns the interaction between this wall and a given particle, nullptr if there is no interaction. More...
|
|
void | read (std::istream &is) override |
|
void | write (std::ostream &os) const override |
|
std::string | getName () const override |
|
| BaseWall () |
| Default constructor. More...
|
|
| BaseWall (const BaseWall &w) |
| Copy constructor. More...
|
|
| ~BaseWall () override |
| Default destructor. More...
|
|
virtual bool | getDistanceNormalOverlap (const BaseParticle &P, Mdouble &distance, Vec3D &normal_return, Mdouble &overlap) const |
|
virtual bool | getDistanceNormalOverlapSuperquadric (const SuperQuadricParticle &p, Mdouble &distance, Vec3D &normal_return, Mdouble &overlap) const |
|
virtual Vec3D | getFurthestPointSuperQuadric (const Vec3D &normalBodyFixed, const Vec3D &axes, Mdouble eps1, Mdouble eps2) const |
|
virtual void | setHandler (WallHandler *handler) |
| A function which sets the WallHandler for this BaseWall. More...
|
|
WallHandler * | getHandler () const |
| A function which returns the WallHandler that handles this BaseWall. More...
|
|
void | setIndSpecies (unsigned int indSpecies) override |
| Define the species of this wall using the index of the species in the SpeciesHandler in this DPMBase. More...
|
|
void | setSpecies (const ParticleSpecies *species) |
| Defines the species of the current wall. More...
|
|
bool | isFixed () const override |
|
void | setForceControl (Vec3D forceGoal, Vec3D gainFactor, Vec3D baseVelocity={0, 0, 0}) |
| Slowly adjusts the force on a wall towards a specified goal, by adjusting (prescribing) the velocity of the wall. More...
|
|
virtual bool | isLocal (Vec3D &min, Vec3D &max) const |
|
bool | getLinePlaneIntersect (Vec3D &intersect, const Vec3D &p0, const Vec3D &p1, const Vec3D &n, const Vec3D &p) |
|
bool | isInsideWallVTK (const Vec3D &point, const Vec3D &normal, const Vec3D &position) const |
|
void | projectOntoWallVTK (Vec3D &point0, const Vec3D &point1, const Vec3D &normal, const Vec3D &position) const |
|
void | intersectVTK (std::vector< Vec3D > &points, Vec3D normal, Vec3D position) const |
|
virtual BaseInteraction * | getInteractionWithSuperQuad (SuperQuadricParticle *p, unsigned timeStamp, InteractionHandler *interactionHandler) |
|
virtual void | writeVTK (VTKContainer &vtk) const |
|
void | getVTK (std::vector< Vec3D > &points, std::vector< std::vector< double >> &triangleStrips) |
|
const Vec3D | getAxis () const |
|
virtual void | actionsOnRestart () |
| No implementation but can be overidden in its derived classes. More...
|
|
virtual void | actionsAfterParticleGhostUpdate () |
| No implementation but can be overidden in its derived classes. More...
|
|
virtual void | handleParticleAddition (unsigned int id, BaseParticle *p) |
| Handles the addition of particles to the particleHandler. More...
|
|
virtual void | handleParticleRemoval (unsigned int id) |
| Handles the addition of particles to the particleHandler. More...
|
|
virtual void | checkInteractions (InteractionHandler *interactionHandler, unsigned int timeStamp) |
| Check if all interactions are valid. More...
|
|
bool | getVTKVisibility () const |
|
void | setVTKVisibility (bool vtkVisibility) |
|
void | addRenderedWall (BaseWall *w) |
|
BaseWall * | getRenderedWall (size_t i) const |
|
std::vector< BaseWall * > | getRenderedWalls () const |
|
void | removeRenderedWalls () |
|
void | renderWall (VTKContainer &vtk) |
|
void | addParticlesAtWall (unsigned numElements=50) |
|
void | setVelocityControl (Vec3D forceGoal, Vec3D gainFactor, Vec3D baseVelocity) |
|
virtual void | writeWallDetailsVTK (VTKData &data) const |
|
virtual void | computeWear () |
|
| BaseInteractable () |
| Default BaseInteractable constructor. More...
|
|
| BaseInteractable (const BaseInteractable &p) |
| Copy constructor. More...
|
|
| ~BaseInteractable () override |
| Destructor, it simply destructs the BaseInteractable and all the objects it contains. More...
|
|
unsigned int | getIndSpecies () const |
| Returns the index of the species associated with the interactable object. More...
|
|
const ParticleSpecies * | getSpecies () const |
| Returns a pointer to the species of this BaseInteractable. More...
|
|
void | setSpecies (const ParticleSpecies *species) |
| Sets the species of this BaseInteractable. More...
|
|
const Vec3D & | getForce () const |
| Returns the force on this BaseInteractable. More...
|
|
const Vec3D & | getTorque () const |
| Returns the torque on this BaseInteractable. More...
|
|
void | setForce (const Vec3D &force) |
| Sets the force on this BaseInteractable. More...
|
|
void | setTorque (const Vec3D &torque) |
| Sets the torque on this BaseInteractable. More...
|
|
void | addForce (const Vec3D &addForce) |
| Adds an amount to the force on this BaseInteractable. More...
|
|
void | addTorque (const Vec3D &addTorque) |
| Adds an amount to the torque on this BaseInteractable. More...
|
|
virtual void | resetForceTorque (int numberOfOMPthreads) |
|
void | sumForceTorqueOMP () |
|
const Vec3D & | getPosition () const |
| Returns the position of this BaseInteractable. More...
|
|
const Quaternion & | getOrientation () const |
| Returns the orientation of this BaseInteractable. More...
|
|
virtual void | setPosition (const Vec3D &position) |
| Sets the position of this BaseInteractable. More...
|
|
void | setOrientationViaNormal (Vec3D normal) |
| Sets the orientation of this BaseInteractable by defining the vector that results from the rotation of the (1,0,0) vector. More...
|
|
void | setOrientationViaEuler (Vec3D eulerAngle) |
| Sets the orientation of this BaseInteractable by defining the euler angles. More...
|
|
virtual void | setOrientation (const Quaternion &orientation) |
| Sets the orientation of this BaseInteractable. More...
|
|
virtual void | move (const Vec3D &move) |
| Moves this BaseInteractable by adding an amount to the position. More...
|
|
virtual void | rotate (const Vec3D &angularVelocityDt) |
| Rotates this BaseInteractable. More...
|
|
const std::vector< BaseInteraction * > & | getInteractions () const |
| Returns a list of interactions which belong to this interactable. More...
|
|
void | addInteraction (BaseInteraction *I) |
| Adds an interaction to this BaseInteractable. More...
|
|
bool | removeInteraction (BaseInteraction *I) |
| Removes an interaction from this BaseInteractable. More...
|
|
void | copyInteractionsForPeriodicParticles (const BaseInteractable &p) |
| Copies interactions to this BaseInteractable whenever a periodic copy made. More...
|
|
void | setVelocity (const Vec3D &velocity) |
| set the velocity of the BaseInteractable. More...
|
|
void | setAngularVelocity (const Vec3D &angularVelocity) |
| set the angular velocity of the BaseInteractble. More...
|
|
void | addVelocity (const Vec3D &velocity) |
| adds an increment to the velocity. More...
|
|
void | addAngularVelocity (const Vec3D &angularVelocity) |
| add an increment to the angular velocity. More...
|
|
virtual const Vec3D & | getVelocity () const |
| Returns the velocity of this interactable. More...
|
|
virtual const Vec3D & | getAngularVelocity () const |
| Returns the angular velocity of this interactable. More...
|
|
void | setPrescribedPosition (const std::function< Vec3D(double)> &prescribedPosition) |
| Allows the position of an infinite mass interactable to be prescribed. More...
|
|
void | applyPrescribedPosition (double time) |
| Computes the position from the user defined prescribed position function. More...
|
|
void | setPrescribedVelocity (const std::function< Vec3D(double)> &prescribedVelocity) |
| Allows the velocity of an infinite mass interactable to be prescribed. More...
|
|
void | applyPrescribedVelocity (double time) |
| Computes the velocity from the user defined prescribed velocity function. More...
|
|
void | setPrescribedOrientation (const std::function< Quaternion(double)> &prescribedOrientation) |
| Allows the orientation of the infinite mass interactbale to be prescribed. More...
|
|
void | applyPrescribedOrientation (double time) |
| Computes the orientation from the user defined prescribed orientation function. More...
|
|
void | setPrescribedAngularVelocity (const std::function< Vec3D(double)> &prescribedAngularVelocity) |
| Allows the angular velocity of the infinite mass interactable to be prescribed. More...
|
|
void | applyPrescribedAngularVelocity (double time) |
| Computes the angular velocity from the user defined prescribed angular velocity. More...
|
|
virtual const Vec3D | getVelocityAtContact (const Vec3D &contact) const |
| Returns the velocity at the contact point, use by many force laws. More...
|
|
void | integrateBeforeForceComputation (double time, double timeStep) |
| This is part of integrate routine for objects with infinite mass. More...
|
|
void | integrateAfterForceComputation (double time, double timeStep) |
| This is part of the integration routine for objects with infinite mass. More...
|
|
virtual Mdouble | getInvMass () const |
|
virtual Mdouble | getCurvature (const Vec3D &labFixedCoordinates) const |
|
virtual bool | isFaceContact (const Vec3D &normal) const |
|
| BaseObject ()=default |
| Default constructor. More...
|
|
| BaseObject (const BaseObject &p)=default |
| Copy constructor, copies all the objects BaseObject contains. More...
|
|
virtual | ~BaseObject ()=default |
| virtual destructor More...
|
|
virtual void | moveInHandler (unsigned int index) |
| Except that it is virtual, it does the same thing as setIndex() does. More...
|
|
void | setIndex (unsigned int index) |
| Allows one to assign an index to an object in the handler/container. More...
|
|
void | setId (unsigned long id) |
| Assigns a unique identifier to each object in the handler (container) which remains constant even after the object is deleted from the container/handler. More...
|
|
unsigned int | getIndex () const |
| Returns the index of the object in the handler. More...
|
|
unsigned int | getId () const |
| Returns the unique identifier of any particular object. More...
|
|
void | setGroupId (unsigned groupId) |
|
unsigned | getGroupId () const |
|
A half-infinite surface which has a sinusoidal direction in the x direction, and no variation in the y direction.
The equation of the surface is z = sw_amp * sin( sw_wavn * x + sw_phshift ) for x < l Because this is nonlinear, we must solve for the interaction location using Newton's method.