67 procOffsets_[proci+1]-procOffsets_[proci],
75 else if constexpr (is_contiguous_v<Type>)
98 else if constexpr (is_contiguous_v<Type>)
129 procOffsets_[proci+1]-procOffsets_[proci],
133 if (procSlot.
empty())
137 else if constexpr (is_contiguous_v<Type>)
160 else if constexpr (is_contiguous_v<Type>)
189 const UList<Type>& source
192 auto tx = tmp<Field<Type>>
::New(m());
194 solve(tx.ref(), source);
void solve(List< Type > &x, const UList< Type > &source) const
Solve the linear system with the given source.
void resize(const label len)
Adjust allocated size of list.
static label nRequests() noexcept
Number of outstanding requests (on the internal list of requests)
bool empty() const noexcept
True if List is empty (ie, size() is zero)
static bool & parRun() noexcept
Test if this a parallel run.
tmp< DimensionedField< TypeR, GeoMesh > > New(const tmp< DimensionedField< TypeR, GeoMesh >> &tf1, const word &name, const dimensionSet &dimensions, const bool initCopy=false)
Global function forwards to reuseTmpDimensionedField::New.
static int & msgType() noexcept
Message tag of standard messages.
static std::streamsize read(const UPstream::commsTypes commsType, const int fromProcNo, Type *buffer, std::streamsize count, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm, UPstream::Request *req=nullptr)
Receive buffer contents (contiguous types) from given processor.
static void waitRequests()
Wait for all requests to finish.
static void recv(Type &value, const int fromProcNo, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm, IOstreamOption::streamFormat fmt=IOstreamOption::BINARY)
Receive and deserialize a value. Uses operator>> for de-serialization.
static constexpr int masterNo() noexcept
Relative rank for the master process - is always 0.
static bool write(const UPstream::commsTypes commsType, const int toProcNo, const Type *buffer, std::streamsize count, const int tag=UPstream::msgType(), const int communicator=UPstream::worldComm, UPstream::Request *req=nullptr, const UPstream::sendModes sendMode=UPstream::sendModes::normal)
Write buffer contents (contiguous types only) to given processor.
SolverPerformance< Type > solve(faMatrix< Type > &, const dictionary &solverControls)
Solve returning the solution statistics given convergence tolerance.
label m() const noexcept
The number of rows.
static bool master(const label communicator=worldComm)
True if process corresponds to the master rank in the communicator.
"nonBlocking" (immediate) : (MPI_Isend, MPI_Irecv)
static rangeType subProcs(const label communicator=worldComm)
Range of process indices for sub-processes.
A class for managing temporary objects.
bool send()
Send buffer contents now and not in destructor [advanced usage]. Returns true on success.
void LUBacksubstitute(const scalarSquareMatrix &luMmatrix, const labelList &pivotIndices, List< Type > &source)
LU back-substitution with given source, returning the solution in the source.