All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
processorLduInterface Class Referenceabstract

An abstract base class for processor coupled interfaces. More...

Inheritance diagram for processorLduInterface:

Public Member Functions

 TypeName ("processorLduInterface")
 Runtime type information. More...
 
 processorLduInterface ()
 Construct null. More...
 
virtual ~processorLduInterface ()
 Destructor. More...
 
virtual label comm () const =0
 Return communicator used for parallel communication. More...
 
virtual int myProcNo () const =0
 Return processor number (rank in communicator) More...
 
virtual int neighbProcNo () const =0
 Return neighbour processor number (rank in communicator) More...
 
virtual const transformertransform () const =0
 Return transformation between the coupled patches. More...
 
virtual int tag () const =0
 Return message tag used for sending. More...
 
template<class Type >
void send (const Pstream::commsTypes commsType, const UList< Type > &) const
 Raw send function. More...
 
template<class Type >
void receive (const Pstream::commsTypes commsType, UList< Type > &) const
 Raw field receive function. More...
 
template<class Type >
tmp< Field< Type > > receive (const Pstream::commsTypes commsType, const label size) const
 Raw field receive function returning field. More...
 
template<class Type >
void compressedSend (const Pstream::commsTypes commsType, const UList< Type > &) const
 Raw field send function with data compression. More...
 
template<class Type >
void compressedReceive (const Pstream::commsTypes commsType, UList< Type > &) const
 Raw field receive function with data compression. More...
 
template<class Type >
tmp< Field< Type > > compressedReceive (const Pstream::commsTypes commsType, const label size) const
 Raw field receive function with data compression returning field. More...
 
template<class Type >
Foam::tmp< Foam::Field< Type > > receive (const Pstream::commsTypes commsType, const label size) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > compressedReceive (const Pstream::commsTypes commsType, const label size) const
 

Detailed Description

An abstract base class for processor coupled interfaces.

Source files

Definition at line 51 of file processorLduInterface.H.

Constructor & Destructor Documentation

◆ processorLduInterface()

Construct null.

Definition at line 53 of file processorLduInterface.C.

◆ ~processorLduInterface()

~processorLduInterface ( )
virtual

Destructor.

Definition at line 62 of file processorLduInterface.C.

Member Function Documentation

◆ TypeName()

TypeName ( "processorLduInterface"  )

Runtime type information.

◆ comm()

virtual label comm ( ) const
pure virtual

Return communicator used for parallel communication.

Implemented in processorGAMGInterface, and processorFvPatch.

Referenced by Foam::operator<<(), and procLduInterface::procLduInterface().

Here is the caller graph for this function:

◆ myProcNo()

virtual int myProcNo ( ) const
pure virtual

Return processor number (rank in communicator)

Implemented in processorGAMGInterface, and processorFvPatch.

Referenced by lduPrimitiveMesh::lduPrimitiveMesh(), Foam::operator<<(), and procLduInterface::procLduInterface().

Here is the caller graph for this function:

◆ neighbProcNo()

virtual int neighbProcNo ( ) const
pure virtual

Return neighbour processor number (rank in communicator)

Implemented in processorGAMGInterface, and processorFvPatch.

Referenced by lduPrimitiveMesh::lduPrimitiveMesh(), Foam::operator<<(), and procLduInterface::procLduInterface().

Here is the caller graph for this function:

◆ transform()

virtual const transformer& transform ( ) const
pure virtual

Return transformation between the coupled patches.

Implemented in processorGAMGInterface, processorFvPatch, and processorCyclicFvPatch.

◆ tag()

virtual int tag ( ) const
pure virtual

Return message tag used for sending.

Implemented in processorGAMGInterface, processorFvPatch, and processorCyclicFvPatch.

Referenced by procLduInterface::procLduInterface().

Here is the caller graph for this function:

◆ send()

void send ( const Pstream::commsTypes  commsType,
const UList< Type > &  f 
) const

◆ receive() [1/3]

void receive ( const Pstream::commsTypes  commsType,
UList< Type > &  f 
) const

Raw field receive function.

Definition at line 95 of file processorLduInterfaceTemplates.C.

References UList< T >::begin(), UList< T >::byteSize(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::blockMeshTools::read().

Referenced by processorLduInterface::send().

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

◆ receive() [2/3]

tmp<Field<Type> > receive ( const Pstream::commsTypes  commsType,
const label  size 
) const

Raw field receive function returning field.

◆ compressedSend()

void compressedSend ( const Pstream::commsTypes  commsType,
const UList< Type > &  f 
) const

Raw field send function with data compression.

Definition at line 144 of file processorLduInterfaceTemplates.C.

References UList< T >::begin(), processorLduInterface::compressedReceive(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, UList< T >::last(), Foam::blockMeshTools::read(), UList< T >::size(), and Foam::vtkWriteOps::write().

Referenced by processorLduInterface::receive().

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

◆ compressedReceive() [1/3]

void compressedReceive ( const Pstream::commsTypes  commsType,
UList< Type > &  f 
) const

Raw field receive function with data compression.

Definition at line 224 of file processorLduInterfaceTemplates.C.

References UList< T >::begin(), Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, UList< T >::last(), Foam::blockMeshTools::read(), and UList< T >::size().

Referenced by processorLduInterface::compressedSend().

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

◆ compressedReceive() [2/3]

tmp<Field<Type> > compressedReceive ( const Pstream::commsTypes  commsType,
const label  size 
) const

Raw field receive function with data compression returning field.

◆ receive() [3/3]

Foam::tmp<Foam::Field<Type> > receive ( const Pstream::commsTypes  commsType,
const label  size 
) const

Definition at line 131 of file processorLduInterfaceTemplates.C.

References processorLduInterface::compressedSend(), tmp< T >::ref(), and tf.

Here is the call graph for this function:

◆ compressedReceive() [3/3]

Foam::tmp<Foam::Field<Type> > compressedReceive ( const Pstream::commsTypes  commsType,
const label  size 
) const

Definition at line 281 of file processorLduInterfaceTemplates.C.

References tmp< T >::ref(), and tf.

Here is the call graph for this function:

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