# PhasicFlow: collisionCheck Class Reference
PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.

collisionCheck Class Reference
Collaboration diagram for collisionCheck:
[legend]

## Public Member Functions

| collisionCheck (box sBox, real dx, const realx3Vector &pos, const realVector &diam)
bool | checkPoint (const realx3 &p, const real d) const
bool | mapLastAddedParticle ()

## Private Member Functions

int32x3 | pointIndex (const realx3 &p) const
bool | build ()

## Private Attributes

box | searchBox_
real | dx_
int32x3 | nCells_
const realx3Vector & | position_
const realVector & | diameters_
uint32Vector | next_
ViewType3D< uint32, HostSpace > | head_

## Detailed Description

Definition at line 13 of file collisionCheck.hpp.

## Constructor & Destructor Documentation

## collisionCheck()

collisionCheck | ( | box | sBox,
|  | real | dx,
|  | const realx3Vector & | pos,
|  | const realVector & | diam
| ) |  |

Definition at line 25 of file collisionCheck.cpp.

References collisionCheck::build(), and fatalExit.

Here is the call graph for this function:

## Member Function Documentation

## pointIndex()

int32x3 pointIndex | ( | const realx3 & | p | ) | const

inlineprivate

Definition at line 31 of file collisionCheck.hpp.

References collisionCheck::dx_, box::minPoint(), and collisionCheck::searchBox_.

Referenced by collisionCheck::build().

Here is the call graph for this function:
Here is the caller graph for this function:

## build()

bool build | ( |  | ) |

private

Definition at line 4 of file collisionCheck.cpp.

References pFlow::endl(), fatalErrorInFunction, pFlow::fill(), collisionCheck::head_, box::isInside(), collisionCheck::next_, collisionCheck::pointIndex(), collisionCheck::position_, collisionCheck::searchBox_, and Vector< T, Allocator >::size().

Referenced by collisionCheck::collisionCheck().

Here is the call graph for this function:
Here is the caller graph for this function:

## checkPoint()

bool checkPoint | ( | const realx3 & | p,
|  | const real | d
| ) |  | const

Definition at line 46 of file collisionCheck.cpp.

References length(), pFlow::max(), pFlow::min(), and n.

Referenced by positionRandom::positionOnePass().

Here is the call graph for this function:
Here is the caller graph for this function:

## mapLastAddedParticle()

bool mapLastAddedParticle | ( |  | ) |

Definition at line 79 of file collisionCheck.cpp.

References pFlow::endl(), fatalErrorInFunction, and n.

Referenced by positionRandom::positionOnePass().

Here is the call graph for this function:
Here is the caller graph for this function:

## Member Data Documentation

## searchBox_

box searchBox_

private

Definition at line 17 of file collisionCheck.hpp.

Referenced by collisionCheck::build(), and collisionCheck::pointIndex().

## dx_

real dx_

private

Definition at line 19 of file collisionCheck.hpp.

Referenced by collisionCheck::pointIndex().

## nCells_

int32x3 nCells_

private

Definition at line 21 of file collisionCheck.hpp.

## position_

const realx3Vector& position_

private

Definition at line 23 of file collisionCheck.hpp.

Referenced by collisionCheck::build().

## diameters_

const realVector& diameters_

private

Definition at line 25 of file collisionCheck.hpp.

## next_

uint32Vector next_

private

Definition at line 27 of file collisionCheck.hpp.

Referenced by collisionCheck::build().

## head_

ViewType3D<uint32, HostSpace> head_

private

Definition at line 29 of file collisionCheck.hpp.

Referenced by collisionCheck::build().

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

- src/Particles/Insertion/collisionCheck/collisionCheck.hpp
- src/Particles/Insertion/collisionCheck/collisionCheck.cpp