A lduProcessorField type bypassing coupledFvPatchField. More...
Public Member Functions | |
ClassName ("lduCalculatedProcessorField") | |
Runtime type information. More... | |
lduCalculatedProcessorField (const lduInterface &interface) | |
Construct from ldu interface. More... | |
lduCalculatedProcessorField (const lduCalculatedProcessorField< Type > &) | |
Copy construct. More... | |
virtual | ~lduCalculatedProcessorField ()=default |
Destructor. More... | |
virtual bool | ready () const |
Are all (receive) data available? More... | |
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. More... | |
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. More... | |
virtual void | initInterfaceMatrixUpdate (Field< scalar > &result, const bool add, const lduAddressing &lduAddr, const label patchId, const Field< scalar > &psiInternal, const scalarField &coeffs, const Pstream::commsTypes commsType) const |
Initialise neighbour matrix update. More... | |
virtual void | updateInterfaceMatrix (Field< scalar > &result, const bool add, const lduAddressing &lduAddr, const label patchId, const Field< scalar > &psiInternal, const scalarField &coeffs, const Pstream::commsTypes commsType) const |
Update result field based on interface functionality. More... | |
virtual label | comm () const |
Return communicator used for communication. More... | |
virtual int | myProcNo () const |
Return processor number. More... | |
virtual int | neighbProcNo () const |
Return neighbour processor number. More... | |
virtual bool | doTransform () const |
Is the transform required. More... | |
virtual const tensorField & | forwardT () const |
Return face transformation tensor. More... | |
virtual int | rank () const |
Return rank of component for transform. More... | |
Public Member Functions inherited from LduInterfaceField< Type > | |
TypeName ("LduInterfaceField") | |
Runtime type information. More... | |
LduInterfaceField (const lduInterface &patch) | |
Construct given coupled patch. More... | |
virtual | ~LduInterfaceField ()=default |
Destructor. More... | |
virtual void | initInterfaceMatrixUpdate (Field< Type > &, const bool add, const lduAddressing &, const label interfacei, const Field< Type > &, const scalarField &, const Pstream::commsTypes commsType) const |
Initialise neighbour matrix update. More... | |
virtual void | updateInterfaceMatrix (Field< Type > &, const bool add, const lduAddressing &, const label interfacei, const Field< Type > &, const scalarField &, const Pstream::commsTypes commsType) const =0 |
Update result field based on interface functionality. More... | |
virtual void | initInterfaceMatrixUpdate (solveScalarField &result, const bool add, const lduAddressing &, const label interfacei, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const |
Inherit initInterfaceMatrixUpdate from lduInterfaceField. More... | |
virtual void | updateInterfaceMatrix (solveScalarField &result, const bool add, const lduAddressing &, const label interfacei, const solveScalarField &psiInternal, const scalarField &coeffs, const direction cmpt, const Pstream::commsTypes commsType) const=0 |
Inherit updateInterfaceMatrix from lduInterfaceField. More... | |
Public Member Functions inherited from lduInterfaceField | |
TypeName ("lduInterfaceField") | |
Runtime type information. More... | |
lduInterfaceField (const lduInterfaceField &)=delete | |
No copy construct. More... | |
void | operator= (const lduInterfaceField &)=delete |
No copy assignment. More... | |
lduInterfaceField (const lduInterface &patch) | |
Construct given coupled patch. More... | |
virtual | ~lduInterfaceField ()=default |
Destructor. More... | |
const lduInterface & | interface () const noexcept |
Return the interface. More... | |
virtual const word & | interfaceFieldType () const |
Return the interface type. More... | |
bool | updatedMatrix () const noexcept |
Whether matrix has been updated. More... | |
bool | updatedMatrix (bool flag) const noexcept |
Set matrix as update-to-date, return the previous value. More... | |
template<class Type > | |
void | addToInternalField (Field< Type > &result, const bool add, const labelUList &faceCells, const scalarField &coeffs, const Field< Type > &vals) const |
Add/subtract weighted contributions to internal field. More... | |
bool & | updatedMatrix () noexcept |
Adjust whether matrix has been updated. More... | |
Public Member Functions inherited from processorLduInterfaceField | |
TypeName ("processorLduInterfaceField") | |
Runtime type information. More... | |
processorLduInterfaceField ()=default | |
Default construct. More... | |
virtual | ~processorLduInterfaceField ()=default |
Destructor. More... | |
template<class Type > | |
void | transformCoupleField (Field< Type > &f) const |
Transform given patch field. More... | |
void | transformCoupleField (solveScalarField &f, const direction cmpt) const |
Transform given patch component field. More... | |
Protected Member Functions | |
void | addToInternalField (solveScalarField &result, const bool add, const scalarField &coeffs, const solveScalarField &vals) const |
virtual bool | all_ready () const |
Receive and send requests have both completed. More... | |
Protected Attributes | |
const lduPrimitiveProcessorInterface & | procInterface_ |
Local reference cast into the interface. More... | |
label | sendRequest_ |
Current (non-blocking) send request. More... | |
label | recvRequest_ |
Current (non-blocking) recv request. More... | |
Field< Type > | sendBuf_ |
Send buffer. More... | |
Field< Type > | recvBuf_ |
Receive buffer. More... | |
solveScalarField | scalarSendBuf_ |
Scalar send buffer. More... | |
solveScalarField | scalarRecvBuf_ |
Scalar recv buffer. More... | |
A lduProcessorField type bypassing coupledFvPatchField.
Used to add updateInterfaceMatrix capabilities to a lduMatrix which is fully uncoupled from the fvMesh.
Its functionality is purely to init and update the processor interfaces.
Definition at line 57 of file lduCalculatedProcessorField.H.
|
explicit |
Construct from ldu interface.
Definition at line 27 of file lduCalculatedProcessorField.C.
lduCalculatedProcessorField | ( | const lduCalculatedProcessorField< Type > & | ptf | ) |
Copy construct.
Definition at line 40 of file lduCalculatedProcessorField.C.
|
virtualdefault |
Destructor.
|
protected |
Definition at line 133 of file lduCalculatedProcessorField.C.
References Foam::add(), and forAll.
|
protectedvirtual |
Receive and send requests have both completed.
Definition at line 54 of file lduCalculatedProcessorField.C.
ClassName | ( | "lduCalculatedProcessorField< Type >" | ) |
Runtime type information.
|
virtual |
Are all (receive) data available?
Reimplemented from lduInterfaceField.
Definition at line 61 of file lduCalculatedProcessorField.C.
|
virtual |
Initialise neighbour matrix update.
Reimplemented from lduInterfaceField.
Definition at line 75 of file lduCalculatedProcessorField.C.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, lduAddressing::patchAddr(), patchId(), Foam::blockMeshTools::read(), List< T >::resize_nocopy(), UList< T >::size(), and Foam::vtk::write().
|
virtual |
Update result field based on interface functionality.
Implements lduInterfaceField.
Definition at line 161 of file lduCalculatedProcessorField.C.
References Foam::add().
|
inlinevirtual |
Initialise neighbour matrix update.
Definition at line 197 of file lduCalculatedProcessorField.H.
References NotImplemented.
|
inlinevirtual |
Update result field based on interface functionality.
Definition at line 214 of file lduCalculatedProcessorField.H.
References NotImplemented.
|
inlinevirtual |
Return communicator used for communication.
Implements processorLduInterfaceField.
Definition at line 233 of file lduCalculatedProcessorField.H.
References lduPrimitiveProcessorInterface::comm(), and lduCalculatedProcessorField< Type >::procInterface_.
|
inlinevirtual |
Return processor number.
Implements processorLduInterfaceField.
Definition at line 241 of file lduCalculatedProcessorField.H.
References lduPrimitiveProcessorInterface::myProcNo(), and lduCalculatedProcessorField< Type >::procInterface_.
|
inlinevirtual |
Return neighbour processor number.
Implements processorLduInterfaceField.
Definition at line 249 of file lduCalculatedProcessorField.H.
References lduPrimitiveProcessorInterface::myProcNo(), and lduCalculatedProcessorField< Type >::procInterface_.
|
inlinevirtual |
Is the transform required.
Implements processorLduInterfaceField.
Definition at line 257 of file lduCalculatedProcessorField.H.
|
inlinevirtual |
Return face transformation tensor.
Implements processorLduInterfaceField.
Definition at line 265 of file lduCalculatedProcessorField.H.
References lduPrimitiveProcessorInterface::forwardT(), and lduCalculatedProcessorField< Type >::procInterface_.
|
inlinevirtual |
Return rank of component for transform.
Implements processorLduInterfaceField.
Definition at line 273 of file lduCalculatedProcessorField.H.
|
protected |
Local reference cast into the interface.
Definition at line 69 of file lduCalculatedProcessorField.H.
Referenced by lduCalculatedProcessorField< Type >::comm(), lduCalculatedProcessorField< Type >::forwardT(), lduCalculatedProcessorField< Type >::myProcNo(), and lduCalculatedProcessorField< Type >::neighbProcNo().
|
mutableprotected |
Current (non-blocking) send request.
Definition at line 77 of file lduCalculatedProcessorField.H.
|
mutableprotected |
Current (non-blocking) recv request.
Definition at line 82 of file lduCalculatedProcessorField.H.
|
mutableprotected |
Send buffer.
Definition at line 87 of file lduCalculatedProcessorField.H.
|
mutableprotected |
Receive buffer.
Definition at line 92 of file lduCalculatedProcessorField.H.
|
mutableprotected |
Scalar send buffer.
Definition at line 97 of file lduCalculatedProcessorField.H.
|
mutableprotected |
Scalar recv buffer.
Definition at line 102 of file lduCalculatedProcessorField.H.