isoCutCell might go in a infinite loop
src/finiteVolume/fvMatrices/solvers/isoAdvection/isoCutCell/isoCutCell.C
in function vofCutCell
line 536 - 550:
while (L2 - L1 > 1)
{
L3 = round(0.5*(L1 + L2));
f3 = fvert[order[L3]];
calcSubCell(celli, f3);
a3 = volumeOfFluid();
if (a3 > alpha1)
{
L1 = L3; f1 = f3; a1 = a3;
}
else if (a3 < alpha1)
{
L2 = L3; f2 = f3; a2 = a3;
}
}
This may cause an infinite loop if a3 == alpha1 as L1 and L2 donot change with this condition.
suggestions:
while (L2 - L1 > 1)
{
L3 = round(0.5*(L1 + L2));
f3 = fvert[order[L3]];
calcSubCell(celli, f3);
a3 = volumeOfFluid();
if (a3 > alpha1)
{
L1 = L3; f1 = f3; a1 = a3;
}
else if (a3 < alpha1)
{
L2 = L3; f2 = f3; a2 = a3;
}
else
{
return calcSubCell(celli, f3);
}
}
## Reattaching the author to the issue ticket: @Henning86 ##