38#ifndef cyclicGAMGInterfaceField_H
39#define cyclicGAMGInterfaceField_H
54class cyclicGAMGInterfaceField
56 public GAMGInterfaceField,
74 cyclicGAMGInterfaceField(
const cyclicGAMGInterfaceField&) =
delete;
77 void operator=(
const cyclicGAMGInterfaceField&) =
delete;
89 cyclicGAMGInterfaceField
96 cyclicGAMGInterfaceField
104 cyclicGAMGInterfaceField
111 cyclicGAMGInterfaceField
127 new cyclicGAMGInterfaceField
148 return cyclicInterface_.size();
169 return cyclicInterface_.reverseT();
173 virtual int rank()
const
Abstract base class for GAMG agglomerated interfaces.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
commsTypes
Communications types.
A list of pointers to objects of type <T>, without allocation/deallocation management of the pointers...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
virtual ~cyclicGAMGInterfaceField()=default
Destructor.
virtual bool doTransform() const
Cyclic interface functions.
virtual int rank() const
Return rank of component for transform.
virtual autoPtr< GAMGInterfaceField > clone(const GAMGInterface &GAMGCp, const UPtrList< lduInterfaceField > &other) const
Construct by assembling and return a clone.
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 const tensorField & reverseT() const
Return neighbour-cell transformation tensor.
label size() const
Return size.
TypeName("cyclic")
Runtime type information.
virtual const tensorField & forwardT() const
Return face transformation tensor.
GAMG agglomerated cyclic interface.
virtual const tensorField & forwardT() const
Return face transformation tensor.
cyclicLduInterfaceField()=default
Construct null.
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...
Field< scalar > scalarField
Specialisation of Field<T> for scalar.
void add(DimensionedField< scalar, GeoMesh > &result, const dimensioned< scalar > &dt1, const DimensionedField< scalar, GeoMesh > &f2)
Field< solveScalar > solveScalarField
Field< tensor > tensorField
Specialisation of Field<T> for tensor.
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.