/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  4.x                                   |
|   \\  /    A nd           | Web:      www.OpenFOAM.org                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      dynamicMeshDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

//dynamicFvMeshLib   "libtopoChangerFvMesh.so";
dynamicFvMesh      dynamicRefineFvMesh;
//staticFvMesh;

mixerFvMeshCoeffs
{
    coordinateSystem
    {
        type            cylindrical;
        origin          (0 0 0);
        axis            (0 0 1);
        direction       (1 0 0);
    }

    rpm             10;

    slider
    {
        inside      insideSlider;
        outside     outsideSlider;
    }
}

// Refinement
dynamicRefineFvMeshCoeffs
{
    // Refine every refineInterval timesteps
    refineInterval 3;

    // Maximum refinement level (starts from 0)
    maxRefinement 2;

    // Maximum cell limit (approximate)
    maxCells 1000000;

    // volScalarField to base refinement on
    field gamma;

    // Which cells to un/refine: based on point values (simple averaging).
    // - refine pointCells of point value inbetween minLevel..maxLevel
    // - unrefine pointCells that are within nBufferLayers of points marked
    //   for refinement.
    minLevel 0.01;
    maxLevel 0.99;
    nBufferLayers 1;

    // Newly introduced patch points optionally get projected onto a surface
    //projectSurfaces ("fixedWalls4.stl");
    //projectPatches (fixedWalls);
    // Maximum project distance
    //projectDistance 1;

    // Fluxes to adapt. For newly created faces or split faces the flux
    // gets estimated from an interpolated volVectorField ('velocity')
    // First is name of the flux to adapt, second is velocity that will
    // be interpolated and inner-producted with the face area vector.
    correctFluxes ((phi U));
}

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