Go to the documentation of this file.
20 #ifndef __boundaryBase_hpp__
21 #define __boundaryBase_hpp__
124 uint32 transferBoundaryIndex,
204 (dict, bplane,
internal, bndrs, thisIndex)
363 bool iterBeforeUpdate ,
426 #endif //__boundaryBase_hpp__
virtual uint32 neighborProcSize() const
Return number of points in the neighbor processor boundary.
real neighborLengthIntoInternal() const
The length from boundary plane into the domain where beyond that distance internal points exist.
const pointStructure & pStruct() const
const auto & indexListHost() const
virtual realx3 displacementVectroToMirror() const
displacement vector that transfers points to a distance that is equal to the distance between this ...
const INLINE_FUNCTION_HD auto & normal() const
uint32 thisBoundaryIndex() const
INLINE_FUNCTION_H void assignFromDevice(const VectorSingle< T, MSpace > &src, bool srcCapacity=true)
bool transferPointsToMirror(uint32 numTransfer, const uint32Vector_D &transferMask, uint32 transferBoundaryIndex, realx3 transferVector)
virtual realx3Vector_D & neighborProcPoints()
Return a reference to point positions in the neighbor processor boundary.
uint32 markInNegativeSide(const word &name, uint32Vector_D &markedIndices) const
const plane & boundaryPlane() const
the actual boundary plane of this boundary
virtual bool updataBoundaryData(int step)
Update this boundary data in two steps (1 and 2).
int neighborProcessorNo() const
boundaryBase & mirrorBoundary()
const word & name() const
virtual bool beforeIteration(uint32 step, const timeInfo &ti, bool updateIter, bool iterBeforeUpdate, bool &callAgain)
int thisProcessorNo() const
bool listsSync_
device and host list are sync
virtual realx3 boundaryExtensionLength() const
The extention length (in vector form) for the boundary as required by each boundary type.
virtual bool transferData(uint32 iter, int step, bool &callAgain)
This method is called when a transfer of data is to be performed between processors (in afterIteratio...
const plane & boundaryPlane_
const Time & time() const
const word & type() const
const auto & indexList() const
uint32 thisBoundaryIndex_
virtual bool afterIteration(const timeInfo &ti)=0
boundaryList & boundaries_
a reference to the list of boundaries (never use this in the constructor).
internalPoints & internal_
a reference to internal points
bool isBoundaryMaster() const
virtual void setSize(uint32 newSize)
Set the size of indexList.
bool performBoundarytUpdate() const
Is this iter the right time for updating bounday list.
deviceScatteredFieldAccess< realx3 > pointFieldAccessType
virtual uint32 numToTransfer() const
void setUpdateTime(bool val)
real neighborLength_
The length defined for creating neighbor list.
uint32Vector_D indexList_
list of particles indices on device
localProcessors & pFlowProcessors()
uint32Vector_H indexListHost_
list of particles indieces on host
bool iterBeforeBoundaryUpdate() const
void setNewIndices(const uint32Vector_D &newIndices)
INLINE_FUNCTION_H uint32 capacity() const
boundaryBase(const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex)
create_vCtor(boundaryBase, dictionary,(const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex),(dict, bplane, internal, bndrs, thisIndex))
bool setRemoveKeepIndices(const uint32Vector_D &removeIndices, const uint32Vector_D &keepIndices)
bool appendNewIndices(const uint32Vector_D &newIndices)
virtual uint32 numToRecieve() const
~boundaryBase() override=default
boundaryBase & operator=(const boundaryBase &)=delete
real boundaryExtntionLengthRatio_
the extra boundary extension beyound actual limits of boundary
pointFieldAccessType thisPoints() const
static uniquePtr< boundaryBase > create(const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex)
uint32 mirrorBoundaryIndex() const
Dictionary holds a set of data entries or sub-dictionaries that are enclosed in a curely braces or ar...
INLINE_FUNCTION_H uint32 size() const
Size of the vector.
virtual bool iterate(const timeInfo &ti)=0
virtual real neighborLength() const
The distance length from boundary plane where neighbor particles still exist in that distance.
bool removeIndices(uint32 numRemove, const uint32Vector_D &removeMask)