41 Pstream::defaultCommsType == Pstream::blocking
42 || Pstream::defaultCommsType == Pstream::nonBlocking
45 forAll(interfaces, interfaceI)
47 if (interfaces.
set(interfaceI))
49 interfaces[interfaceI].initInterfaceMatrixUpdate
53 coupleCoeffs[interfaceI],
55 Pstream::defaultCommsType
60 else if (Pstream::defaultCommsType == Pstream::scheduled)
62 const lduSchedule& patchSchedule = this->patchSchedule();
69 interfaceI<interfaces.
size();
73 if (interfaces.
set(interfaceI))
75 interfaces[interfaceI].initInterfaceMatrixUpdate
79 coupleCoeffs[interfaceI],
89 <<
"Unsuported communications type "
90 << Pstream::commsTypeNames[Pstream::defaultCommsType]
105 if (Pstream::defaultCommsType == Pstream::blocking)
107 forAll(interfaces, interfaceI)
109 if (interfaces.
set(interfaceI))
111 interfaces[interfaceI].updateInterfaceMatrix
115 coupleCoeffs[interfaceI],
117 Pstream::defaultCommsType
122 else if (Pstream::defaultCommsType == Pstream::nonBlocking)
125 bool allUpdated =
false;
127 for (
label i = 0; i < UPstream::nPollProcInterfaces; i++)
131 forAll(interfaces, interfaceI)
133 if (interfaces.
set(interfaceI))
135 if (!interfaces[interfaceI].updatedMatrix())
137 if (interfaces[interfaceI].ready())
139 interfaces[interfaceI].updateInterfaceMatrix
143 coupleCoeffs[interfaceI],
145 Pstream::defaultCommsType
163 if (Pstream::parRun())
172 UPstream::resetRequests(0);
177 UPstream::waitRequests();
182 forAll(interfaces, interfaceI)
186 interfaces.
set(interfaceI)
187 && !interfaces[interfaceI].updatedMatrix()
190 interfaces[interfaceI].updateInterfaceMatrix
194 coupleCoeffs[interfaceI],
196 Pstream::defaultCommsType
201 else if (Pstream::defaultCommsType == Pstream::scheduled)
203 const lduSchedule& patchSchedule = this->patchSchedule();
208 label interfaceI = patchSchedule[i].patch;
210 if (interfaces.
set(interfaceI))
212 if (patchSchedule[i].init)
214 interfaces[interfaceI].initInterfaceMatrixUpdate
218 coupleCoeffs[interfaceI],
225 interfaces[interfaceI].updateInterfaceMatrix
229 coupleCoeffs[interfaceI],
242 interfaceI<interfaces.
size();
246 if (interfaces.
set(interfaceI))
248 interfaces[interfaceI].updateInterfaceMatrix
252 coupleCoeffs[interfaceI],
262 <<
"Unsuported communications type "
263 << Pstream::commsTypeNames[Pstream::defaultCommsType]