/*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 12 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { format ascii; class dictionary; object createPatchDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // // This application/dictionary does the following: // - Creates new patches from boundary faces, either specified as a set of // existing patches or as a faceSet. // - Orders faces on coupled patches such that they are opposite. This is done // for all coupled faces, not just for any patches created. // - Optional: Synchronises points on coupled patches. // - Removes any zero-sized non-coupled patches that were not added. // Optional: Do a synchronisation of coupled points after creation of any // patches; defaults to false. Note: this does not work with points that are on // multiple coupled patches with transformations (i.e. cyclics). pointSync false; // Optional: Write cyclic matches into .obj format; defaults to false. writeCyclicMatch false; // Patches to create patches ( { // Name of new patch name cyc_half0; // Dictionary to construct new patch from patchInfo { type cyclic; neighbourPatch cyc_half1; // Optional: Explicitly set the transformation. transformType rotational; rotationAxis (1 0 0); rotationCentre (0 0 0); // transformType translational; // separation (1 0 0); // Optional: Non-default tolerance to prevent ordering failure // errors on poor meshes // matchTolerance 1e-2; } // How to construct: either from 'patches' or 'set' constructFrom patches; // If constructFrom = patches : names of patches. Wildcards allowed. patches (periodic1); // If constructFrom = set : name of faceSet set f0; } { // Name of new patch name cyc_half1; // Dictionary to construct new patch from patchInfo { type cyclic; neighbourPatch cyc_half0; // Optional: Explicitly set the transformation. transformType rotational; rotationAxis (1 0 0); rotationCentre (0 0 0); // transformType translational; // separation (-1 0 0); } // How to construct: either from 'patches' or 'set' constructFrom patches; // If constructFrom = patches : names of patches. Wildcards allowed. patches (periodic2); // If constructFrom = set : name of faceSet set f0; } ); // ************************************************************************* //