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 procLduInterface::procLduInterface(), and processorLduInterface::send().

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(), 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(), procLduInterface::procLduInterface(), and processorLduInterface::send().

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, processorCyclicFvPatch, and processorFvPatch.

◆ tag()

virtual int tag ( ) const
pure virtual

Return message tag used for sending.

Implemented in processorGAMGInterface, processorCyclicFvPatch, and processorFvPatch.

Referenced by procLduInterface::procLduInterface(), and processorLduInterface::send().

Here is the caller graph for this function:

◆ send()

◆ receive() [1/3]

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

Raw field receive function.

Definition at line 94 of file processorLduInterfaceTemplates.C.

References UList< T >::begin(), UPstream::blocking, UList< T >::byteSize(), Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, UPstream::nonBlocking, UIPstream::read(), and UPstream::scheduled.

Here is the call 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

◆ compressedReceive() [1/3]

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

Raw field receive function with data compression.

Definition at line 223 of file processorLduInterfaceTemplates.C.

References UList< T >::begin(), UPstream::blocking, Foam::exit(), f(), Foam::FatalError, FatalErrorInFunction, UPstream::floatTransfer, UList< T >::last(), UPstream::nonBlocking, UIPstream::read(), UPstream::scheduled, and List< T >::size().

Here is the call 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 130 of file processorLduInterfaceTemplates.C.

References tf.

◆ compressedReceive() [3/3]

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

Definition at line 280 of file processorLduInterfaceTemplates.C.

References tf.


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