/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v1912                                 |
|   \\  /    A nd           | Website:  www.openfoam.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      topoSetDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

actions
(
    {
        name    bgr0;       // all around bgr
        type    cellSet;
        action  new;
        source  zoneToCell;
        zone    background;
    }
    {
        name    hullBox0;       // all around bgr
        type    cellSet;
        action  new;
        source  zoneToCell;
        zone    hullBox;
    }
    {
        name    propeller0;       // all around bgr
        type    cellSet;
        action  new;
        source  zoneToCell;
        zone    propeller;
    }
    {
        name    rudder0;       // all around bgr
        type    cellSet;
        action  new;
        source  zoneToCell;
        zone    rudder;
    }

    {
        name    box;   //all cells
        type    cellSet;
        action  new;
        source  cellToCell;
        set     hullBox0;
    }

    {
        name    box;   // hole in mesh
        type    cellSet;
        action  subset;
        source  boxToCell;
        boxes
        (
            (0.12 -0.082 -0.1)(0.52 0.052 0.1) //hullBox
        );
    }

    {
        name    box;
        type    cellSet;
        action  invert;
    }
    {
        name    keepBox;   //all cells
        type    cellSet;
        action  new;
        source  cellToCell;
        set     box;
    }
    {
        name    keepBox;   //all cells
        type    cellSet;
        action  add;
        source  cellToCell;
        set     propeller0;
    }
    {
        name    keepBox;   //all cells
        type    cellSet;
        action  add;
        source  cellToCell;
        set     rudder0;
    }
    {
        name    keepBox;   //all cells
        type    cellSet;
        action  add;
        source  cellToCell;
        set     bgr0;
    }
);

// ************************************************************************* //
