A lduProcessorField type bypassing coupledFvPatchField. More...
#include <lduCalculatedProcessorField.H>


Public Member Functions | |
| ClassName ("lduCalculatedProcessorField") | |
| Runtime type information. | |
| lduCalculatedProcessorField (const lduInterface &interface) | |
| Construct from ldu interface. | |
| lduCalculatedProcessorField (const lduCalculatedProcessorField< Type > &) | |
| Copy construct. | |
| virtual | ~lduCalculatedProcessorField ()=default |
| Destructor. | |
| virtual bool | ready () const |
| Are all (receive) data available? | |
| 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 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 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. | |
| 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. | |
| virtual label | comm () const |
| Return communicator used for communication. | |
| virtual int | myProcNo () const |
| Return processor number. | |
| virtual int | neighbProcNo () const |
| Return neighbour processor number. | |
| virtual bool | doTransform () const |
| Is the transform required. | |
| virtual const tensorField & | forwardT () const |
| Return face transformation tensor. | |
| virtual int | rank () const |
| Return rank of component for transform. | |
| Public Member Functions inherited from LduInterfaceField< Type > | |
| TypeName ("LduInterfaceField") | |
| Runtime type information. | |
| LduInterfaceField (const lduInterface &patch) | |
| Construct given coupled patch. | |
| virtual | ~LduInterfaceField ()=default |
| Destructor. | |
| 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. | |
| 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. | |
| 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. | |
| 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. | |
| Public Member Functions inherited from lduInterfaceField | |
| TypeName ("lduInterfaceField") | |
| Runtime type information. | |
| lduInterfaceField (const lduInterfaceField &)=delete | |
| No copy construct. | |
| void | operator= (const lduInterfaceField &)=delete |
| No copy assignment. | |
| lduInterfaceField (const lduInterface &patch) | |
| Construct given coupled patch. | |
| virtual | ~lduInterfaceField ()=default |
| Destructor. | |
| const lduInterface & | interface () const noexcept |
| Return the interface. | |
| virtual const word & | interfaceFieldType () const |
| Return the interface type. | |
| bool | updatedMatrix () const noexcept |
| Whether matrix has been updated. | |
| bool | updatedMatrix (bool flag) const noexcept |
| Set matrix as update-to-date, return the previous value. | |
| 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. | |
| bool & | updatedMatrix () noexcept |
| Adjust whether matrix has been updated. | |
| Public Member Functions inherited from processorLduInterfaceField | |
| TypeName ("processorLduInterfaceField") | |
| Runtime type information. | |
| processorLduInterfaceField ()=default | |
| Default construct. | |
| virtual | ~processorLduInterfaceField ()=default |
| Destructor. | |
| template<class Type> | |
| void | transformCoupleField (Field< Type > &f) const |
| Transform given patch field. | |
| void | transformCoupleField (solveScalarField &f, const direction cmpt) const |
| Transform given patch component field. | |
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. | |
Protected Attributes | |
| const lduPrimitiveProcessorInterface & | procInterface_ |
| Local reference cast into the interface. | |
| label | sendRequest_ |
| Current (non-blocking) send request. | |
| label | recvRequest_ |
| Current (non-blocking) recv request. | |
| Field< Type > | sendBuf_ |
| Send buffer. | |
| Field< Type > | recvBuf_ |
| Receive buffer. | |
| solveScalarField | scalarSendBuf_ |
| Scalar send buffer. | |
| solveScalarField | scalarRecvBuf_ |
| Scalar recv buffer. | |
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 26 of file lduCalculatedProcessorField.C.
References lduInterfaceField::interface(), procInterface_, recvRequest_, Foam::refCast(), and sendRequest_.
Referenced by ClassName(), and lduCalculatedProcessorField().


| lduCalculatedProcessorField | ( | const lduCalculatedProcessorField< Type > & | ptf | ) |
Copy construct.
Definition at line 39 of file lduCalculatedProcessorField.C.
References lduCalculatedProcessorField(), procInterface_, recvRequest_, Foam::refCast(), and sendRequest_.

|
virtualdefault |
|
protected |
Definition at line 132 of file lduCalculatedProcessorField.C.
References Foam::add(), forAll, and procInterface_.
Referenced by updateInterfaceMatrix().


|
protectedvirtual |
Receive and send requests have both completed.
Definition at line 54 of file lduCalculatedProcessorField.C.
References UPstream::finishedRequestPair(), recvRequest_, and sendRequest_.
Referenced by initInterfaceMatrixUpdate().


| ClassName | ( | "lduCalculatedProcessorField< Type >" | ) |
Runtime type information.
References lduInterfaceField::interface(), and lduCalculatedProcessorField().

|
virtual |
Are all (receive) data available?
Reimplemented from lduInterfaceField.
Definition at line 61 of file lduCalculatedProcessorField.C.
References UPstream::finishedRequest(), recvRequest_, and sendRequest_.

|
virtual |
Initialise neighbour matrix update.
Reimplemented from lduInterfaceField.
Definition at line 74 of file lduCalculatedProcessorField.C.
References Foam::abort(), Foam::add(), all_ready(), Foam::FatalError, FatalErrorInFunction, forAll, UPstream::nonBlocking, UPstream::nRequests(), lduAddressing::patchAddr(), patchId(), procInterface_, UIPstream::read(), recvRequest_, scalarRecvBuf_, scalarSendBuf_, sendRequest_, UList< T >::size(), lduInterfaceField::updatedMatrix(), and UOPstream::write().

|
virtual |
Update result field based on interface functionality.
Implements lduInterfaceField.
Definition at line 160 of file lduCalculatedProcessorField.C.
References Foam::add(), addToInternalField(), UPstream::finishedRequest(), patchId(), recvRequest_, scalarRecvBuf_, sendRequest_, lduInterfaceField::updatedMatrix(), and UPstream::waitRequest().

|
inlinevirtual |
Initialise neighbour matrix update.
Definition at line 196 of file lduCalculatedProcessorField.H.
References Foam::add(), NotImplemented, and patchId().

|
inlinevirtual |
Update result field based on interface functionality.
Definition at line 213 of file lduCalculatedProcessorField.H.
References Foam::add(), NotImplemented, and patchId().

|
inlinevirtual |
Return communicator used for communication.
Implements processorLduInterfaceField.
Definition at line 233 of file lduCalculatedProcessorField.H.
References procInterface_.
|
inlinevirtual |
Return processor number.
Implements processorLduInterfaceField.
Definition at line 241 of file lduCalculatedProcessorField.H.
References procInterface_.
|
inlinevirtual |
Return neighbour processor number.
Implements processorLduInterfaceField.
Definition at line 249 of file lduCalculatedProcessorField.H.
References 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 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 addToInternalField(), comm(), forwardT(), initInterfaceMatrixUpdate(), lduCalculatedProcessorField(), lduCalculatedProcessorField(), myProcNo(), and neighbProcNo().
|
mutableprotected |
Current (non-blocking) send request.
Definition at line 77 of file lduCalculatedProcessorField.H.
Referenced by all_ready(), initInterfaceMatrixUpdate(), lduCalculatedProcessorField(), lduCalculatedProcessorField(), ready(), and updateInterfaceMatrix().
|
mutableprotected |
Current (non-blocking) recv request.
Definition at line 82 of file lduCalculatedProcessorField.H.
Referenced by all_ready(), initInterfaceMatrixUpdate(), lduCalculatedProcessorField(), lduCalculatedProcessorField(), ready(), and updateInterfaceMatrix().
|
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.
Referenced by initInterfaceMatrixUpdate().
|
mutableprotected |
Scalar recv buffer.
Definition at line 102 of file lduCalculatedProcessorField.H.
Referenced by initInterfaceMatrixUpdate(), and updateInterfaceMatrix().