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

application     nonNewtonianIcoFoam;

startTime       0;
endTime         5;

deltaT          0.01;
adjustTimeStep  yes;
maxCo           0.3;

writeInterval   50;

purgeWrite      0;
writeFormat     ascii;
writePrecision  6;

runTimeModifiable yes;
functions
{
    solverInfo
{
    type            solverInfo;
    libs            ("libutilityFunctionObjects.so");

    writeControl    timeStep;
    writeInterval   1;
    fields (p U);
}
  inletAverage
    {
        type            surfaceFieldValue;	
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            inletZone;
        operation       areaAverage;
        fields (p U nu);
    }

    x20Average
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            x20Zone;
        operation       areaAverage;
        fields (p U nu);
    }

    x40Average
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            x40Zone;
        operation       areaAverage;
        fields (p U nu);
    }

    throatInAverage
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            throatInZone;
        operation       areaAverage;
        fields (p U nu);
    }

    throatOutAverage
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            throatOutZone;
        operation       areaAverage;
        fields (p U nu);
    }

    x110Average
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            x110Zone;
        operation       areaAverage;
        fields (p U nu);
    }

    outletAverage
    {
        type            surfaceFieldValue;
        libs            ("libfieldFunctionObjects.so");
        enabled         true;
        writeControl    writeTime;
        surfaceFormat   none;
        writeFields     false;
        regionType      faceZone;
        name            outletZone;
        operation       areaAverage;
        fields (p U nu);
    }
}