33 template<
class Type,
class DType,
class LUType>
44 Pstream::defaultCommsType == Pstream::commsTypes::blocking
45 || Pstream::defaultCommsType == Pstream::commsTypes::nonBlocking
48 forAll(interfaces_, interfacei)
50 if (interfaces_.set(interfacei))
52 interfaces_[interfacei].initInterfaceMatrixUpdate
57 interfaceCoeffs[interfacei],
59 Pstream::defaultCommsType
64 else if (Pstream::defaultCommsType == Pstream::commsTypes::scheduled)
66 const lduSchedule& patchSchedule = this->patchSchedule();
72 label interfacei=patchSchedule.size()/2;
73 interfacei<interfaces_.size();
77 if (interfaces_.set(interfacei))
79 interfaces_[interfacei].initInterfaceMatrixUpdate
84 interfaceCoeffs[interfacei],
86 Pstream::commsTypes::blocking
94 <<
"Unsupported communications type "
95 << Pstream::commsTypeNames[Pstream::defaultCommsType]
101 template<
class Type,
class DType,
class LUType>
112 Pstream::defaultCommsType == Pstream::commsTypes::blocking
113 || Pstream::defaultCommsType == Pstream::commsTypes::nonBlocking
117 if (Pstream::defaultCommsType == Pstream::commsTypes::nonBlocking)
119 IPstream::waitRequests();
120 OPstream::waitRequests();
123 forAll(interfaces_, interfacei)
125 if (interfaces_.set(interfacei))
127 interfaces_[interfacei].updateInterfaceMatrix
132 interfaceCoeffs[interfacei],
134 Pstream::defaultCommsType
139 else if (Pstream::defaultCommsType == Pstream::commsTypes::scheduled)
141 const lduSchedule& patchSchedule = this->patchSchedule();
146 label interfacei = patchSchedule[i].patch;
148 if (interfaces_.set(interfacei))
150 if (patchSchedule[i].
init)
152 interfaces_[interfacei].initInterfaceMatrixUpdate
157 interfaceCoeffs[interfacei],
159 Pstream::commsTypes::scheduled
164 interfaces_[interfacei].updateInterfaceMatrix
169 interfaceCoeffs[interfacei],
171 Pstream::commsTypes::scheduled
181 label interfacei=patchSchedule.size()/2;
182 interfacei<interfaces_.size();
186 if (interfaces_.set(interfacei))
188 interfaces_[interfacei].updateInterfaceMatrix
193 interfaceCoeffs[interfacei],
195 Pstream::commsTypes::blocking
203 <<
"Unsupported communications type "
204 << Pstream::commsTypeNames[Pstream::defaultCommsType]