# PhasicFlow: pFlow::boundaryBaseKernels Namespace 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.

pFlow::boundaryBaseKernels Namespace Reference

## Functions

void | createRemoveKeepLists (uint32 numTotal, uint32 numRemove, const uint32Vector_D &removeMask, uint32Vector_D &removeList, uint32Vector_D &keepList)
void | createRemoveKeepIndices (const uint32Vector_D &indices, uint32 numRemove, const uint32Vector_D &removeMask, uint32Vector_D &removeIndices, uint32Vector_D &keepIndices, bool exactCap=true)

## Function Documentation

## createRemoveKeepLists()

void createRemoveKeepLists | ( | uint32 | numTotal,
|  | uint32 | numRemove,
|  | const uint32Vector_D & | removeMask,
|  | uint32Vector_D & | removeList,
|  | uint32Vector_D & | keepList
| ) |  |

Definition at line 24 of file boundaryBaseKernels.cpp.

References VectorSingle< T, MemorySpace >::deviceViewAll(), pFlow::algorithms::KOKKOS::exclusiveScan(), LAMBDA_HD, and VectorSingle< T, MemorySpace >::reallocate().

Here is the call graph for this function:

## createRemoveKeepIndices()

void createRemoveKeepIndices | ( | const uint32Vector_D & | indices,
|  | uint32 | numRemove,
|  | const uint32Vector_D & | removeMask,
|  | uint32Vector_D & | removeIndices,
|  | uint32Vector_D & | keepIndices,
|  | bool | exactCap = `true`
| ) |  |

Definition at line 65 of file boundaryBaseKernels.cpp.

References VectorSingle< T, MemorySpace >::clear(), VectorSingle< T, MemorySpace >::deviceViewAll(), pFlow::algorithms::KOKKOS::exclusiveScan(), LAMBDA_HD, VectorSingle< T, MemorySpace >::reallocate(), VectorSingle< T, MemorySpace >::resize(), and VectorSingle< T, MemorySpace >::size().

Referenced by boundaryBase::removeIndices(), and boundaryBase::transferPointsToMirror().

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