decomposePar preservePatches does not handle cyclicA(C)MI
Functionality to add/problem to solve
Currently preservePatches only works for cyclics, not for cyclicAMI. Also it will not handle cells having faces on multiple cyclics since it does not loop.
Target audience
E.g. implicit AMI handling requires the faces on both sides to be on the same processor. This ideally would be done by preservePatches constraint.
Proposal
Attached version. preservePatchesConstraint.C