issue with refineHexMesh running in parallel with cyclic boundary conditions
Summary
When the domain is split among processors such that cells on cyclic patches are not on the same processor, refineHexMesh cannot be used.
Steps to reproduce
Use cyclic boundary conditions and set decomposeParDict such that the cells which are on cyclic boundaries are not on the same processor.
Run refineHexMesh on a cellset.
Observe the error of the form "Cannot find point in pts1 matching point ### coord:(## ## ##) in pts0 when using tolerance ##" in the refineHexMesh log file.
Example case
If your domain is a cube, and the patches perpendicular to the x axis are cyclic, then you cannot split the domain into sections along the x direction (e.g. (4 1 1) in decompseParDict). It seems like you can however split the domain along the y or z direction, since the cells with the cyclic faces will be on the same processor (e.g. (1 4 1) in decompseParDict).
What is the expected correct behavior?
It would be nice if there was either a usage warning in refineHexMesh with cyclic boundary conditions, or if the mesh splitting and cell face assignments could be worked out so that it was possible to use refineHexMesh in parallel with cyclic boundary conditions.
Relevant logs and/or images
Here is a sample of the refineHexMesh log file
[3] Cannot find point in pts1 matching point 131 coord:(0.015625 0.5 -0.0166667) in pts0 when using tolerance 2.28455e-06
[3] Searching started from:0 in pts1
[3] Compared coord: (0.015625 -0.5 -0.0166667) at index 0 with difference to point 1
[3] Cannot find point in pts1 matching point 132 coord:(0.046875 0.5 -0.0166667) in pts0 when using tolerance 2.28455e-06
[3] Searching started from:0 in pts1
[3] Compared coord: (0.015625 -0.5 -0.0166667) at index 0 with difference to point 1.00049
[3] Compared coord: (0.046875 -0.5 -0.0166667) at index 1 with difference to point 1
[3] Cannot find point in pts1 matching point 15 coord:(0.015625 0.5 -0.05) in pts0 when using tolerance 2.28455e-06
[3] Searching started from:1 in pts1
[3] Compared coord: (0.046875 -0.5 -0.0166667) at index 1 with difference to point 1.00104
[3] Compared coord: (0.015625 -0.5 -0.05) at index 2 with difference to point 1
[3] Cannot find point in pts1 matching point 133 coord:(0.046875 0.5 -0.05) in pts0 when using tolerance 2.28455e-06
[3] Searching started from:2 in pts1
[3] Compared coord: (0.015625 -0.5 -0.05) at index 2 with difference to point 1.00049
[3] Compared coord: (0.046875 -0.5 -0.05) at index 3 with difference to point 1
Environment information
OpenFOAM version : v1806
OS: centos
Possible fixes
For now, if you keep the cyclic cells on the same processor it seems to work.