www.cemf.ir
boundaryExit Class Reference
+ Inheritance diagram for boundaryExit:
+ Collaboration diagram for boundaryExit:

Public Member Functions

 TypeInfo ("boundary<exit>")
 
 boundaryExit (const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex)
 
virtual ~boundaryExit ()=default
 
 add_vCtor (boundaryBase, boundaryExit, dictionary)
 
bool beforeIteration (uint32 step, const timeInfo &ti, bool updateIter, bool iterBeforeUpdate, bool &callAgain) final
 
bool iterate (const timeInfo &ti) final
 
bool afterIteration (const timeInfo &ti) final
 
- Public Member Functions inherited from boundaryBase
uint32 markInNegativeSide (const word &name, uint32Vector_D &markedIndices) const
 
 TypeInfo ("boundaryBase")
 
 boundaryBase (const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex)
 
 boundaryBase (const boundaryBase &)=delete
 
boundaryBaseoperator= (const boundaryBase &)=delete
 
 boundaryBase (boundaryBase &&)=default
 
boundaryBaseoperator= (boundaryBase &&)=default
 
 ~boundaryBase () override=default
 
 create_vCtor (boundaryBase, dictionary,(const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex),(dict, bplane, internal, bndrs, thisIndex))
 
real neighborLengthIntoInternal () const
 The length from boundary plane into the domain where beyond that distance internal points exist. More...
 
virtual real neighborLength () const
 The distance length from boundary plane where neighbor particles still exist in that distance. More...
 
virtual realx3 boundaryExtensionLength () const
 The extention length (in vector form) for the boundary as required by each boundary type. More...
 
bool performBoundarytUpdate () const
 Is this iter the right time for updating bounday list. More...
 
bool iterBeforeBoundaryUpdate () const
 
const wordtype () const
 
const wordname () const
 
bool empty () const
 
auto size () const
 
auto capacity () const
 
int neighborProcessorNo () const
 
int thisProcessorNo () const
 
bool isBoundaryMaster () const
 
uint32 thisBoundaryIndex () const
 
uint32 mirrorBoundaryIndex () const
 
const internalPointsinternal () const
 
internalPointsinternal ()
 
const pointStructurepStruct () const
 
const Timetime () const
 
const auto & indexList () const
 
const auto & indexListHost () const
 
boundaryBasemirrorBoundary ()
 
const boundaryBasemirrorBoundary () const
 
const planeboundaryPlane () const
 the actual boundary plane of this boundary More...
 
virtual realx3 displacementVectroToMirror () const
 displacement vector that transfers points
to a distance that is equal to the distance between this plane and the mirror plane, the vector points from this plane to mirror plane
More...
 
pointFieldAccessType thisPoints () const
 
virtual uint32 neighborProcSize () const
 Return number of points in the neighbor processor boundary. More...
 
virtual realx3Vector_DneighborProcPoints ()
 Return a reference to point positions in the neighbor processor boundary. More...
 
virtual const realx3Vector_DneighborProcPoints () const
 Return a const reference to point positions in the neighbor processor boundary. More...
 
virtual uint32 numToTransfer () const
 
virtual uint32 numToRecieve () const
 
- Public Member Functions inherited from subscriber
 subscriber (const word &name)
 
 subscriber (const subscriber &)
 Copy constructor, only copies the name, not the list. More...
 
 subscriber (subscriber &&)
 Move constructor, moves the name and the list, also change the subriber of the object in the list
More...
 
subscriberoperator= (const subscriber &)
 Copy assignemnt, only assign the name, do not assign the list. More...
 
subscriberoperator= (subscriber &&)
 Move assignment, move assign name and list, also change the subcriber of the object in the list
More...
 
virtual ~subscriber ()
 
virtual bool subscribe (message msg, observer *obsevr) const
 
virtual bool unsubscribe (observer *obsevr) const
 
bool notify (uint32 iter, real t, real dt, const message msg, const anyList &varList)
 
bool notify (const timeInfo &ti, const message msg, const anyList &varList)
 
const wordsubscriberName () const
 

Protected Attributes

real exitMarginLength_ = 0
 Length of margin in the negative side of boundary to still allow points stay in the simulation. More...
 
uint32 checkForExitInterval_ = 1
 between successive check for particle exit (iteration-based). More...
 

Additional Inherited Members

- Public Types inherited from boundaryBase
using pointFieldAccessType = deviceScatteredFieldAccess< realx3 >
 
- Static Public Member Functions inherited from boundaryBase
static uniquePtr< boundaryBasecreate (const dictionary &dict, const plane &bplane, internalPoints &internal, boundaryList &bndrs, uint32 thisIndex)
 
- Protected Member Functions inherited from boundaryBase
virtual void setSize (uint32 newSize)
 Set the size of indexList. More...
 
void setUpdateTime (bool val)
 
void setNewIndices (const uint32Vector_D &newIndices)
 
bool appendNewIndices (const uint32Vector_D &newIndices)
 
bool removeIndices (uint32 numRemove, const uint32Vector_D &removeMask)
 
bool setRemoveKeepIndices (const uint32Vector_D &removeIndices, const uint32Vector_D &keepIndices)
 
bool transferPointsToMirror (uint32 numTransfer, const uint32Vector_D &transferMask, uint32 transferBoundaryIndex, realx3 transferVector)
 
void unSyncLists ()
 
void syncLists () const
 
virtual bool updataBoundaryData (int step)
 Update this boundary data in two steps (1 and 2). More...
 
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 afterIteration). More...
 

Detailed Description

Definition at line 30 of file boundaryExit.hpp.

Constructor & Destructor Documentation

◆ boundaryExit()

boundaryExit ( const dictionary dict,
const plane bplane,
internalPoints internal,
boundaryList bndrs,
uint32  thisIndex 
)

Definition at line 27 of file boundaryExit.cpp.

References dictionary::getValOrSet(), and pFlow::algorithms::KOKKOS::max().

+ Here is the call graph for this function:

◆ ~boundaryExit()

virtual ~boundaryExit ( )
virtualdefault

Member Function Documentation

◆ TypeInfo()

TypeInfo ( "boundary<exit>"  )

◆ add_vCtor()

add_vCtor ( boundaryBase  ,
boundaryExit  ,
dictionary   
)

◆ beforeIteration()

bool beforeIteration ( uint32  step,
const timeInfo ti,
bool  updateIter,
bool  iterBeforeUpdate,
bool &  callAgain 
)
finalvirtual

Reimplemented from boundaryBase.

Definition at line 44 of file boundaryExit.cpp.

References VectorSingle< T, MemorySpace >::deviceViewAll(), VectorSingle< T, MemorySpace >::fill(), and LAMBDA_HD.

+ Here is the call graph for this function:

◆ iterate()

bool iterate ( const timeInfo ti)
finalvirtual

Implements boundaryBase.

Definition at line 113 of file boundaryExit.cpp.

◆ afterIteration()

bool afterIteration ( const timeInfo ti)
finalvirtual

Implements boundaryBase.

Definition at line 118 of file boundaryExit.cpp.

Member Data Documentation

◆ exitMarginLength_

real exitMarginLength_ = 0
protected

Length of margin in the negative side of boundary to still allow points stay in the simulation.


Definition at line 39 of file boundaryExit.hpp.

◆ checkForExitInterval_

uint32 checkForExitInterval_ = 1
protected

between successive check for particle exit (iteration-based).

Definition at line 43 of file boundaryExit.hpp.


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