SPH
Public Member Functions | Protected Attributes | List of all members
ElasticBounceHandler Class Reference

Handler for bounce on collision. More...

#include <Collision.h>

Inheritance diagram for ElasticBounceHandler:
ICollisionHandler Polymorphic

Public Member Functions

 ElasticBounceHandler (const RunSettings &settings)
 
 ElasticBounceHandler (const Float n, const Float t)
 
virtual void initialize (Storage &storage) override
 
virtual CollisionResult collide (const Size i, const Size j, FlatSet< Size > &UNUSED(toRemove)) override
 
- Public Member Functions inherited from ICollisionHandler
virtual CollisionResult collide (const Size i, const Size j, FlatSet< Size > &toRemove)=0
 Computes the outcome of collision between i-th and j-th particle. More...
 
- Public Member Functions inherited from Polymorphic
virtual ~Polymorphic ()
 

Protected Attributes

ArrayView< Vectorr
 
ArrayView< Vectorv
 
ArrayView< Floatm
 
struct {
   Float   n
 Normal;. More...
 
   Float   t
 Tangential. More...
 
restitution
 Coefficients of restitution. More...
 

Detailed Description

Handler for bounce on collision.

No merging takes place. Particles lose fraction of momentum, given by coefficients of restitution.

Todo:
if restitution.t < 1, we should spin up the particles to conserve the angular momentum!!

Definition at line 269 of file Collision.h.

Constructor & Destructor Documentation

◆ ElasticBounceHandler() [1/2]

ElasticBounceHandler::ElasticBounceHandler ( const RunSettings settings)
inlineexplicit

Definition at line 285 of file Collision.h.

◆ ElasticBounceHandler() [2/2]

ElasticBounceHandler::ElasticBounceHandler ( const Float  n,
const Float  t 
)
inline

Definition at line 290 of file Collision.h.

Member Function Documentation

◆ collide()

virtual CollisionResult ElasticBounceHandler::collide ( const Size  i,
const Size  j,
FlatSet< Size > &  UNUSEDtoRemove 
)
inlineoverridevirtual

Definition at line 301 of file Collision.h.

◆ initialize()

virtual void ElasticBounceHandler::initialize ( Storage storage)
inlineoverridevirtual

Implements ICollisionHandler.

Definition at line 295 of file Collision.h.

Member Data Documentation

◆ m

ArrayView<Float> ElasticBounceHandler::m
protected

Definition at line 272 of file Collision.h.

◆ n

Float ElasticBounceHandler::n

Normal;.

Definition at line 277 of file Collision.h.

◆ r

ArrayView<Vector> ElasticBounceHandler::r
protected

Definition at line 271 of file Collision.h.

◆ 

struct { ... } ElasticBounceHandler::restitution

Coefficients of restitution.

◆ t

Float ElasticBounceHandler::t

Tangential.

Definition at line 280 of file Collision.h.

◆ v

ArrayView<Vector> ElasticBounceHandler::v
protected

Definition at line 271 of file Collision.h.


The documentation for this class was generated from the following file: