/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v1812                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "system";
    object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     wellReservoirFoam;

wellSolver      wellFoam;        // wellFoam / buoyantPimpleFoam / buoyantSimpleFoam
reservoirSolver buoyantHDF;  // buoyantHDF / buoyantPorousPimpleFoam

startFrom       startTime;

startTime       0;

stopAt          endTime;

endTime         3.1536e7;

deltaT          86400;

writeControl    adjustableRunTime;

writeInterval   1.5768e7;//3.1536e7;

purgeWrite      0;

writeFormat     ascii;

writePrecision  8;

writeCompression off;

timeFormat      general;

timePrecision   6;

runTimeModifiable yes;

maxCoWell       30000000;

maxCoReservoir  5000000;

maxDeltaT       864000;

adjustTimeStep  yes;

DebugSwitches
{

}

functions
{
    Qdot
    {
        type            surfaceFieldValue;
        libs ("libfieldFunctionObjects.so");
        enabled         true;

        //writeControl  outputTime;
        writeControl    timeStep;
        writeInterval   1;

        log             true;

        writeFields     false;

        regionType      patch;
        name            outlet;
        region          well0;

        scaleFactor     1.0;
        operation       sum;
        fields
        (
            Q_bpd
        );
    }
    Qdot2
    {
        type            surfaceFieldValue;
        libs ("libfieldFunctionObjects.so");
        enabled         true;

        //writeControl  outputTime;
        writeControl    timeStep;
        writeInterval   1;

        log             true;

        writeFields     false;

        regionType      patch;
        name            reservoir0_to_well0;
        region          reservoir0;

        scaleFactor     1.0;
        operation       sum;
        fields
        (
            Q_bpd
        );
    }
}
// ************************************************************************* //
