37#ifndef calculatedProcessorGAMGInterfaceField_H
38#define calculatedProcessorGAMGInterfaceField_H
73 mutable label outstandingSendRequest_;
76 mutable label outstandingRecvRequest_;
133 return procInterface_.
size();
169 virtual label
comm()
const
171 return procInterface_.
comm();
199 virtual int rank()
const
Abstract base class for GAMG agglomerated interface fields.
Abstract base class for GAMG agglomerated interfaces.
virtual label size() const
Return size.
commsTypes
Types of communications.
GAMG agglomerated processor interface field.
virtual bool doTransform() const
Does the interface field perform the transformation.
virtual void initInterfaceMatrixUpdate(solveScalarField &result, const bool add, const lduAddressing &lduAddr, const label patchId, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const
Initialise neighbour matrix update.
virtual int rank() const
Return rank of component for transform.
virtual void updateInterfaceMatrix(solveScalarField &result, const bool add, const lduAddressing &lduAddr, const label patchId, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const
Update result field based on interface functionality.
virtual int myProcNo() const
Return processor number.
virtual label comm() const
Processor interface functions.
label size() const
Return size.
TypeName("calculatedProcessor")
Runtime type information.
virtual ~calculatedProcessorGAMGInterfaceField()=default
Destructor.
virtual int neighbProcNo() const
Return neighbour processor number.
virtual const tensorField & forwardT() const
Return face transformation tensor.
GAMG agglomerated processor interface.
virtual int myProcNo() const
Return processor number (rank in communicator)
virtual label comm() const
Return communicator used for sending.
virtual int neighbProcNo() const
Return neighbour processor number (rank in communicator)
virtual const tensorField & forwardT() const
Return face transformation tensor.
The class contains the addressing required by the lduMatrix: upper, lower and losort.
An abstract base class for implicitly-coupled interface fields e.g. processor and cyclic patch fields...
Abstract base class for processor coupled interfaces.
void add(FieldField< Field1, typename typeOfSum< Type1, Type2 >::type > &f, const FieldField< Field1, Type1 > &f1, const FieldField< Field2, Type2 > &f2)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.