You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In CDiscAdjMultizoneDriver::HandleDataTransfer we have the following code structure:
bool DeformMesh = false;
for (unsigned short jZone = 0; jZone < nZone; jZone++){
if (jZone != iZone && interface_container[jZone][iZone] != nullptr) {
DeformMesh = DeformMesh || Transfer_Data(jZone, iZone);
}
}
if (DeformMesh) DynamicMeshUpdate(iZone, ExtIter);
Transfer_Data returns true if and only if the interface type is BOUNDARY_DISPLACEMENTS. If this happens once, no further call to Transfer_Data will occur for this particular iZone because of short-circuit evaluation of the ||.
Though I'm new to the adjoint driver, I can hardly imagine that this is intended. Maybe the order of the arguments of || should be swapped, or it should be coded as in CMultizoneDriver::Update?
The text was updated successfully, but these errors were encountered:
In
CDiscAdjMultizoneDriver::HandleDataTransfer
we have the following code structure:Transfer_Data
returnstrue
if and only if the interface type isBOUNDARY_DISPLACEMENTS
. If this happens once, no further call toTransfer_Data
will occur for this particulariZone
because of short-circuit evaluation of the||
.Though I'm new to the adjoint driver, I can hardly imagine that this is intended. Maybe the order of the arguments of
||
should be swapped, or it should be coded as inCMultizoneDriver::Update
?The text was updated successfully, but these errors were encountered: