# PhasicFlow: pointField< T, MemorySpace > Class Template 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.

pointField< T, MemorySpace > Class Template Reference
Inheritance diagram for pointField< T, MemorySpace >:
[legend]
Collaboration diagram for pointField< T, MemorySpace >:
[legend]

## Public Types

using | PointFieldType = pointField< T, MemorySpace >
using | InternalFieldType = internalField< T, MemorySpace >
using | boundaryFieldListType = boundaryFieldList< T, MemorySpace >
using | FieldType = typename InternalFieldType::FieldType
using | VectorType = typename InternalFieldType::VectorType
using | memory_space = typename InternalFieldType::memory_space
using | execution_space = typename InternalFieldType::execution_space
using | pointFieldType = pointField< VectorField, T, MemorySpace >
using | FieldType = Field< VectorField, T, MemorySpace >
using | VectorType = typename FieldType::VectorType
using | iterator = typename FieldType::iterator
using | constIterator = typename FieldType::constIterator
using | reference = typename FieldType::reference
using | constReference = typename FieldType::constReference
using | valueType = typename FieldType::valueType
using | pointer = typename FieldType::pointer
using | constPointer = typename FieldType::constPointer
Public Types inherited from objectFile
enum | readFlag { READ_ALWAYS, READ_NEVER, READ_IF_PRESENT }
enum | writeFlag { WRITE_ALWAYS, WRITE_NEVER }
Public Types inherited from internalField< T, void >
using | InternalFieldType = internalField< T, void >
using | FieldType = Field< T, void >
using | FieldType = Field< VectorField, T, void >
using | FieldTypeHost = Field< T, HostSpace >
using | VectorType = typename FieldType::VectorType
using | VectorType = typename FieldType::VectorType
using | memory_space = typename FieldType::memory_space
using | execution_space = typename FieldType::execution_space
using | pointFieldType = pointField< VectorField, T, void >
using | boundaryFieldListType = boundaryFieldList< VectorField, T, void >
using | iterator = typename FieldType::iterator
using | const_iterator = typename FieldType::const_iterator
using | reference = typename FieldType::reference
using | const_reference = typename FieldType::const_reference
using | value_type = typename FieldType::value_type
using | pointer = typename FieldType::pointer
using | const_pointer = typename FieldType::const_pointer

## Public Member Functions

| TypeInfoTemplate111 ("pointField", T, VectorType::memoerySpaceName())
| pointField (const objectFile &objf, pointStructure &pStruct, const T &defVal)
| pointField (const objectFile &objf, repository *owner, pointStructure &pStruct, const T &defVal)
| pointField (const objectFile &objf, pointStructure &pStruct, const T &defVal, const T &val)
const word & | name () const final
const auto & | internal () const
void | updateBoundaries (DataDirection direction) const
void | updateBoundariesSlaveToMasterIfRequested ()
| update boundaries if it is requested previousely (slave to master). More...
const auto & | boundaryFields () const
const auto & | BoundaryField (uint32 i) const
const pointStructure & | pStruct () const
void | fill (const T &val)
bool | readPointField (iIstream &is, const IOPattern &iop)
bool | writePointField (iOstream &os, const IOPattern &iop) const
bool | read (iIstream &is, const IOPattern &iop) override
bool | write (iOstream &os, const IOPattern &iop) const override
| TypeInfoTemplateNV2 ("pointField", T, VectorType::memoerySpaceName())
| pointField (const pointStructure &pStruct, const T &defVal, bool subscribe=true)
| pointField (const pointStructure &pStruct, const T &val, const T &defVal, bool subscribe=true)
| pointField (const pointField &src, bool subscribe)
| pointField (const pointField &src)
| pointField (pointField &&src)=delete
pointField & | operator= (const pointField &rhs)
pointField & | operator= (pointField &&)=delete
uniquePtr< pointFieldType > | clone () const
pointFieldType * | clonePtr () const
const pointStructure & | pStruct () const
INLINE_FUNCTION_H bool | allActive () const
INLINE_FUNCTION_H bool | isActive (label i) const
const auto & | pointFlag () const
range | activeRange () const
bool | update (const eventMessage &msg)
bool | readPointField (iIstream &is)
bool | writePointField (iOstream &os) const
bool | read (iIstream &is)
bool | write (iOstream &os) const
Public Member Functions inherited from IOobject
virtual word | typeName () const =0
| IOobject (const objectFile &objf, const IOPattern &iop, repository *owner)
| ~IOobject () override
| IOobject (const IOobject &src)=delete
| IOobject (IOobject &&src)=delete
const IOPattern & | ioPattern () const
const repository * | owner () const override
repository * | owner ()
repository * | releaseOwner (bool fromOwner=false)
bool | isIncluded (const word &objName) const override
bool | isExcluded (const word &objName) const override
bool | readObject (bool rdHdr=true)
bool | writeObject () const
bool | readObject (iIstream &is, bool rdHdr=true)
bool | writeObject (iOstream &os) const
Public Member Functions inherited from IOfileHeader
| IOfileHeader (const objectFile &objf)
const word & | objectName () const
const word & | objectType () const
fileSystem | path () const
bool | outFileBinary () const
bool | inFileBinary () const
bool | headerOk (bool silent=false)
bool | implyRead () const
| Imply read. More...
bool | implyWrite () const
| Imply write. More...
bool | fileExist () const
| Check if file exists. More...
bool | readIfPresent () const
| Check read if present. More...
bool | writeHeader () const
| Check if the header should be written to file True: on master + implyWrite + readWriteHeader = true False: otherwise. More...
bool | writeHeader (iOstream &os, const word &typeName, bool forceWrite=false) const
| Write the header to the file , typeName comes from caller. More...
bool | writeHeader (iOstream &os, bool forceWrite=false) const
| Write the header to the file, typeName comes from the one read from file. More...
bool | readHeader () const
| Check if header should be read from file. More...
bool | readHeader (iIstream &is, bool silent=false)
| Read the header in the file. More...
bool | writeBanner (iOstream &os) const
| write the banner More...
bool | writeSeparator (iOstream &os) const
| wirte a separator line More...
Public Member Functions inherited from objectFile
| objectFile (const word &name)
| objectFile (const word &name, const fileSystem &localPath, const readFlag &rf=readFlag::READ_NEVER, const writeFlag &wf=writeFlag::WRITE_NEVER, bool rwHeader=true)
| objectFile (const objectFile &src)=default
| objectFile (objectFile &&src)=default
objectFile & | operator= (const objectFile &rhs)=default
objectFile & | operator= (objectFile &&rhs)=default
virtual | ~objectFile ()=default
virtual const fileSystem & | localPath () const
readFlag | rFlag () const
writeFlag | wFlag () const
bool | isReadAlways () const
bool | isReadNever () const
bool | isReadIfPresent () const
bool | isWriteAlways () const
bool | isWriteNever () const
bool | readWriteHeader () const
Public Member Functions inherited from internalField< T, void >
| internalField (const word &name, const internalPoints &internal, const T &defVal)
| internalField (const word &name, const internalPoints &internal, const T &defVal, const T &val)
const auto & | deviceViewAll () const
auto | deviceView () const
auto | hostView () const
const FieldType & | field () const
FieldType & | field ()
const pFlagTypeDevice & | activePointsMaskDevice () const
const pFlagTypeHost & | activePointsMaskHost () const
FieldTypeHost | activeValuesHost () const
auto | size () const
auto | capacity () const
word | name () const
word | fieldKey () const
const T & | defaultValue () const
rangeU32 | activeRange () const
auto | isAllActive () const
void | fillInternal (const T &val)
bool | insertSetElement (uint32IndexContainer indices, const T &val)
const Time & | time () const
bool | hearChanges (real t, real dt, uint32 iter, const message &msg, const anyList &varList) override
bool | write (iOstream &os, const IOPattern &iop) const
| TypeInfoTemplateNV2 ("pointField", T, VectorType::memoerySpaceName())
| pointField (const objectFile &objf, pointStructure &pStruct, const T &defVal)
Public Member Functions inherited from observer
| observer (message msg)
| observer (const subscriber *subscrbr, message msg)
virtual | ~observer ()
void | subscribe (const subscriber *subscrbr, message msg)
observer & | addEvent (message::EVENT event)
bool | subscribed () const
void | addToSubscriber (const subscriber *subscrbr, message msg)
bool | addToSubscriber (const subscriber &subscriber)

## Protected Attributes

T | defaultValue_
Protected Attributes inherited from IOfileHeader
word | objectName_
word | objectType_
word | fileFormat_ = "ASCII"
| file format read from file More...
Protected Attributes inherited from internalField< T, void >
FieldType | field_
| Field. More...
T | defaultValue_
| value when a new item is added to field More...
const internalPoints & | internalPoints_
| const ref to internal points More...
boundaryFieldListType | boundaryFieldList_
| list of boundaries More...
const pointStructure & | pStruct_
| refrence to point structure More...

## Private Attributes

boundaryFieldListType | boundaryFieldList_
| list of boundaries More...
const pointStructure & | pStruct_
| refrence to point structure More...

## Additional Inherited Members

Static Public Member Functions inherited from observer
static constexpr auto | numEvents ()
Protected Member Functions inherited from IOfileHeader
uniquePtr< iFstream > | inStream () const
uniquePtr< oFstream > | outStream () const
uniquePtr< oFstream > | dummyOutStream () const
Protected Member Functions inherited from internalField< T, void >
bool | insert (const anyList &varList)
bool | rearrange (const anyList &varList)
Static Protected Attributes inherited from internalField< T, void >
static const message | defaultMessage_

## Detailed Description

### template<class T, class MemorySpace = void>
class pFlow::pointField< T, MemorySpace >

Definition at line 33 of file pointField.hpp.

## Member Typedef Documentation

## PointFieldType

using PointFieldType = pointField<T, MemorySpace>

Definition at line 40 of file pointField.hpp.

## InternalFieldType

using InternalFieldType = internalField<T, MemorySpace>

Definition at line 42 of file pointField.hpp.

## boundaryFieldListType

using boundaryFieldListType = boundaryFieldList<T, MemorySpace>

Definition at line 44 of file pointField.hpp.

## FieldType [1/2]

using FieldType = typename InternalFieldType::FieldType

Definition at line 46 of file pointField.hpp.

## VectorType [1/2]

using VectorType = typename InternalFieldType::VectorType

Definition at line 48 of file pointField.hpp.

## memory_space

using memory_space = typename InternalFieldType::memory_space

Definition at line 50 of file pointField.hpp.

## execution_space

using execution_space = typename InternalFieldType::execution_space

Definition at line 52 of file pointField.hpp.

## pointFieldType

using pointFieldType = pointField<VectorField, T, MemorySpace>

Definition at line 42 of file pointField_old.hpp.

## FieldType [2/2]

using FieldType = Field<VectorField, T, MemorySpace>

Definition at line 44 of file pointField_old.hpp.

## VectorType [2/2]

using VectorType = typename FieldType::VectorType

Definition at line 46 of file pointField_old.hpp.

## iterator

using iterator = typename FieldType::iterator

Definition at line 48 of file pointField_old.hpp.

## constIterator

using constIterator = typename FieldType::constIterator

Definition at line 50 of file pointField_old.hpp.

## reference

using reference = typename FieldType::reference

Definition at line 52 of file pointField_old.hpp.

## constReference

using constReference = typename FieldType::constReference

Definition at line 54 of file pointField_old.hpp.

## valueType

using valueType = typename FieldType::valueType

Definition at line 56 of file pointField_old.hpp.

## pointer

using pointer = typename FieldType::pointer

Definition at line 58 of file pointField_old.hpp.

## constPointer

using constPointer = typename FieldType::constPointer

Definition at line 60 of file pointField_old.hpp.

## Constructor & Destructor Documentation

## pointField() [1/8]

pointField | ( | const objectFile & | objf,
|  | pointStructure & | pStruct,
|  | const T & | defVal
| ) |  |

Definition at line 22 of file pointField.cpp.

## pointField() [2/8]

pointField | ( | const objectFile & | objf,
|  | repository * | owner,
|  | pointStructure & | pStruct,
|  | const T & | defVal
| ) |  |

Definition at line 64 of file pointField.cpp.

## pointField() [3/8]

pointField | ( | const objectFile & | objf,
|  | pointStructure & | pStruct,
|  | const T & | defVal,
|  | const T & | val
| ) |  |

Definition at line 105 of file pointField.cpp.

## pointField() [4/8]

pointField | ( | const pointStructure & | pStruct,
|  | const T & | defVal,
|  | bool | subscribe = `true`
| ) |  |

## pointField() [5/8]

pointField | ( | const pointStructure & | pStruct,
|  | const T & | val,
|  | const T & | defVal,
|  | bool | subscribe = `true`
| ) |  |

## pointField() [6/8]

pointField | ( | const pointField< T, MemorySpace > & | src,
|  | bool | subscribe
| ) |  |

## pointField() [7/8]

pointField | ( | const pointField< T, MemorySpace > & | src | ) |

## pointField() [8/8]

pointField | ( | pointField< T, MemorySpace > && | src | ) |

delete

## Member Function Documentation

## TypeInfoTemplate111()

TypeInfoTemplate111 | ( | "pointField< T, MemorySpace >" | ,
|  | T | ,
|  | VectorType::memoerySpaceName() |
| ) |  |

## name()

const word& name | ( |  | ) | const

inlinefinalvirtual

Reimplemented from objectFile.

Definition at line 96 of file pointField.hpp.

## internal()

const auto& internal | ( |  | ) | const

inline

Definition at line 101 of file pointField.hpp.

## updateBoundaries()

void updateBoundaries | ( | DataDirection | direction | ) | const

inline

Definition at line 106 of file pointField.hpp.

Referenced by pointField< pFlow::VectorSingle, pFlow::AB3History >::updateBoundariesSlaveToMasterIfRequested().

Here is the caller graph for this function:

## updateBoundariesSlaveToMasterIfRequested()

void updateBoundariesSlaveToMasterIfRequested | ( |  | ) |

inline

update boundaries if it is requested previousely (slave to master).

It only checks for SlaveToMaster direction.

Definition at line 115 of file pointField.hpp.

Referenced by dynamicPointStructure::beforeIteration(), and AdamsBashforth2::updateBoundariesSlaveToMasterIfRequested().

Here is the caller graph for this function:

## boundaryFields()

const auto& boundaryFields | ( |  | ) | const

inline

Definition at line 123 of file pointField.hpp.

## BoundaryField()

const auto& BoundaryField | ( | uint32 | i | ) | const

inline

Definition at line 128 of file pointField.hpp.

Referenced by boundaryReflective::afterIteration().

Here is the caller graph for this function:

## pStruct() [1/2]

const pointStructure& pStruct | ( |  | ) | const

inline

Definition at line 134 of file pointField.hpp.

## fill()

void fill | ( | const T & | val | ) |

inline

Definition at line 138 of file pointField.hpp.

Referenced by particles::zeroForce(), and particles::zeroTorque().

Here is the caller graph for this function:

## readPointField() [1/2]

bool readPointField | ( | iIstream & | is,
|  | const IOPattern & | iop
| ) |  |

Definition at line 236 of file pointField.cpp.

Referenced by pointField< pFlow::VectorSingle, pFlow::AB3History >::read().

Here is the caller graph for this function:

## writePointField() [1/2]

bool writePointField | ( | iOstream & | os,
|  | const IOPattern & | iop
| ) |  | const

Definition at line 283 of file pointField.cpp.

Referenced by pointField< pFlow::VectorSingle, pFlow::AB3History >::write().

Here is the caller graph for this function:

## read() [1/2]

bool read | ( | iIstream & | is,
|  | const IOPattern & | iop
| ) |  |

inlineoverridevirtual

Implements IOobject.

Definition at line 150 of file pointField.hpp.

## write() [1/2]

bool write | ( | iOstream & | os,
|  | const IOPattern & | iop
| ) |  | const

inlineoverridevirtual

Implements IOobject.

Definition at line 155 of file pointField.hpp.

Referenced by pFlow::operator<<().

Here is the caller graph for this function:

## TypeInfoTemplateNV2()

TypeInfoTemplateNV2 | ( | "pointField< T, MemorySpace >" | ,
|  | T | ,
|  | VectorType::memoerySpaceName() |
| ) |  |

## operator=() [1/2]

pointField& operator= | ( | const pointField< T, MemorySpace > & | rhs | ) |

## operator=() [2/2]

pointField& operator= | ( | pointField< T, MemorySpace > && |  | ) |

delete

## clone()

uniquePtr<pointFieldType> clone | ( |  | ) | const

inline

Definition at line 104 of file pointField_old.hpp.

## clonePtr()

pointFieldType* clonePtr | ( |  | ) | const

inline

Definition at line 109 of file pointField_old.hpp.

## pStruct() [2/2]

const pointStructure& pStruct | ( |  | ) | const

inline

Definition at line 117 of file pointField_old.hpp.

## allActive()

INLINE_FUNCTION_H bool allActive | ( |  | ) | const

inline

Definition at line 123 of file pointField_old.hpp.

Referenced by pFlow::maxActive().

Here is the caller graph for this function:

## isActive()

INLINE_FUNCTION_H bool isActive | ( | label | i | ) | const

inline

Definition at line 129 of file pointField_old.hpp.

## pointFlag()

const auto& pointFlag | ( |  | ) | const

inline

Definition at line 133 of file pointField_old.hpp.

Referenced by pFlow::maxActive().

Here is the caller graph for this function:

## activeRange()

range activeRange | ( |  | ) | const

inline

Definition at line 138 of file pointField_old.hpp.

Referenced by pFlow::intAllActive(), and pFlow::intScattered().

Here is the caller graph for this function:

## update()

bool update | ( | const eventMessage & | msg | ) |

## readPointField() [2/2]

bool readPointField | ( | iIstream & | is | ) |

## writePointField() [2/2]

bool writePointField | ( | iOstream & | os | ) | const

## read() [2/2]

bool read | ( | iIstream & | is | ) |

inline

Definition at line 154 of file pointField_old.hpp.

## write() [2/2]

bool write | ( | iOstream & | os | ) | const

inline

Definition at line 159 of file pointField_old.hpp.

## Member Data Documentation

## boundaryFieldList_

boundaryFieldListType boundaryFieldList_

private

list of boundaries

Definition at line 59 of file pointField.hpp.

Referenced by pointField< pFlow::VectorSingle, pFlow::AB3History >::BoundaryField(), pointField< pFlow::VectorSingle, pFlow::AB3History >::boundaryFields(), pointField< pFlow::VectorSingle, pFlow::AB3History >::fill(), pointField< pFlow::VectorSingle, pFlow::AB3History >::updateBoundaries(), and pointField< pFlow::VectorSingle, pFlow::AB3History >::updateBoundariesSlaveToMasterIfRequested().

## pStruct_

const pointStructure & pStruct_

private

refrence to point structure

Definition at line 62 of file pointField.hpp.

Referenced by pointField< pFlow::VectorSingle, pFlow::AB3History >::activeRange(), pointField< pFlow::VectorSingle, pFlow::AB3History >::allActive(), pointField< pFlow::VectorSingle, pFlow::AB3History >::isActive(), pointField< pFlow::VectorSingle, pFlow::AB3History >::pointFlag(), and pointField< pFlow::VectorSingle, pFlow::AB3History >::pStruct().

## defaultValue_

T defaultValue_

protected

Definition at line 68 of file pointField_old.hpp.

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

- src/phasicFlow/containers/pointField/pointField/pointField.hpp
- src/phasicFlow/containers/pointField/pointField/pointField_old.hpp
- src/phasicFlow/containers/pointField/pointField/pointField.cpp