CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Pre-Processing (https://www.cfd-online.com/Forums/openfoam-pre-processing/)
-   -   Water level is raising as simulation progresses (https://www.cfd-online.com/Forums/openfoam-pre-processing/243137-water-level-raising-simulation-progresses.html)

enthusiast May 31, 2022 09:31

Water level is raising as simulation progresses
 
2 Attachment(s)
I am conducting two-phase flow simulations in a separator with 3 inlets and 2 outlets using twoPhaseEulerFoam in OF version 8.

The inlet velocity BC is specified at 2 inlets and pressure outlet BC is specified at the 2 outlets.

Initially, half of the separator volume is filled with water using setFieldDict.

I am expecting the water level to remain constant but strangely the water level increases.

I was expecting flow in = flow out, the velocity vector at the water outlet is not correctly calculating the water velocity at the outlet.

I have attached my BC for U, p_rgh, alpha fields below.

Code:

FoamFile
{
    version    2.0;
    format      ascii;
    class      volScalarField;
    location    "0";
    object      alpha.water;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 0 0 0 0 0 0];

internalField  uniform 0;

boundaryField
{       
        inlet1
    {
        type            fixedValue;
        value          uniform 0.698;
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform 0.698;
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform 0.698;
    }
       
        walls
    {
        type            zeroGradient;
    }

        baffle1
    {
        type            zeroGradient;
    }
       
        baffle2
    {
        type            zeroGradient;
    }
       
        baffle3
    {
        type            zeroGradient;
    }
       
    outlet1
    {
        type            inletOutlet;
        phi            phi.water;
        inletValue      uniform 1;
        value          uniform 1;
    }
       
        outlet2
    {
        type            inletOutlet;
        phi            phi.water;
        inletValue      uniform 0;
        value          uniform 0;
    }

}


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

Code:

FoamFile
{
    version    2.0;
    format      ascii;
    class      volScalarField;
    location    "0";
    object      alpha.oxygen;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 0 0 0 0 0 0];

internalField  uniform 1;

boundaryField
{       
        inlet1
    {
        type            fixedValue;
        value          uniform 0.302;
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform 0.302;
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform 0.302;
    }
       
        walls
    {
        type            zeroGradient;
    }
               
        baffle1
    {
        type            zeroGradient;
    }
       
        baffle2
    {
        type            zeroGradient;
    }
       
        baffle3
    {
        type            zeroGradient;
    }
       
    outlet1
    {
        type            inletOutlet;
        phi            phi.oxygen;
        inletValue      uniform 0;
        value          uniform 0;
    }
       
        outlet2
    {
        type            inletOutlet;
        phi            phi.oxygen;
        inletValue      uniform 1;
        value          uniform 1;
    }

}


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

Code:

FoamFile
{
    version    2.0;
    format      ascii;
    class      volScalarField;
    object      p_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions          [1 -1 -2 0 0 0 0];

internalField      uniform 4.01325e5;

boundaryField
{
    inlet1
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        inlet2
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        inlet3
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        walls
    {
        type              fixedFluxPressure;
        value              $internalField;
    }

        baffle1
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        baffle2
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        baffle3
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
    outlet1 //water outlet
    {
        type              prghPressure;
        p                  $internalField;
        value              $internalField;
    }
       
    outlet2 //oxygen outlet
    {
        type            fixedValue;
        value          $internalField;
    }
}

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

Code:

FoamFile
{
    version    2.0;
    format      binary;
    class      volVectorField;
    object      U.water;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    inlet1
    {
        type            fixedValue;
        value          uniform (0 0 3.83);
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform (0 0 -3.83);
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform (0 0 -3.83);
    }
       
        walls
    {
        type              noSlip;
       
    }

        baffle1
    {
        type              noSlip;
       
    }
       
        baffle2
    {
        type              noSlip;
       
    }
       
        baffle3
    {
        type              noSlip;
       
    }
       
    outlet1
    {
        type              pressureInletOutletVelocity;
        phi                phi.water;
        value              $internalField;
    }
       
    outlet2
    {
        type              pressureInletOutletVelocity;
        phi                phi.water;
        value              $internalField;
    }
}

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

Code:

FoamFile
{
    version    2.0;
    format      binary;
    class      volVectorField;
    object      U.oxygen;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    inlet1
    {
        type            fixedValue;
        value          uniform (0 0 1.66);
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform (0 0 -1.66);
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform (0 0 -1.66);
    }
       

    walls
    {
        type              fixedValue;
        value              uniform (0 0 0);
    }

        baffle1
    {
        type              fixedValue;
        value              uniform (0 0 0);
    }
       
        baffle2
    {
        type              fixedValue;
        value              uniform (0 0 0);
    }
       
        baffle3
    {
        type              fixedValue;
        value              uniform (0 0 0);
    }
       
    outlet1
    {
        type              pressureInletOutletVelocity;
        phi                phi.oxygen;
        value              $internalField;
    }
       
    outlet2
    {
        type              pressureInletOutletVelocity;
        phi                phi.oxygen;
        value              $internalField;
    }
}

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

I have also attached the water level at 0 sec and 20 sec simulation time.

Attachment 90079

Attachment 90080

Thank you.

enthusiast June 23, 2022 02:40

I have modifies the boundary conditions
 
It is really difficult to maintain a water level inside the separator, I am playing with certain boundary conditions. Please let me know if my present adopted boundary condition is good.

Code:

{
    version    2.0;
    format      binary;
    class      volVectorField;
    object      U.water;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    inlet1
    {
        type            fixedValue;
        value          uniform (0 0 3.83);
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform (0 0 -3.83);
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform (0 0 -3.83);
    }
       
        walls
    {
        type              noSlip;     
    }
       
        pipes
    {
        type              noSlip;       
    }

        baffle1
    {
        type              noSlip;   
    }
       
        baffle2
    {
        type              noSlip;       
    }
       
        baffle3
    {
        type              noSlip;     
    }
       
    outlet1
    {
        type            outletPhaseMeanVelocity;
        UnMean          3.07;
        alpha          alpha.water;
        value          uniform (0 0 0);
    }
       
    outlet2
    {
        type            zeroGradient;
    }
       
}

Code:

FoamFile
{
    version    2.0;
    format      binary;
    class      volVectorField;
    object      U.oxygen;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    inlet1
    {
        type            fixedValue;
        value          uniform (0 0 1.66);
    }
       
        inlet2
    {
        type            fixedValue;
        value          uniform (0 0 -1.66);
    }
       
        inlet3
    {
        type            fixedValue;
        value          uniform (0 0 -1.66);
    }
       
    walls
    {
        type              noSlip; 
    }
       
        pipes
    {
        type              noSlip; 
    }

        baffle1
    {
        type              noSlip; 
    }
       
        baffle2
    {
        type              noSlip; 
    }
       
        baffle3
    {
        type              noSlip; 
    }
       
    outlet1
    {
        type            zeroGradient;
    }
       
    outlet2
    {
        type              pressureInletOutletVelocity;
        phi                phi.oxygen;
        value              $internalField;
    }
}

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

Code:

FoamFile
{
    version    2.0;
    format      ascii;
    class      volScalarField;
    object      p_rgh;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions          [1 -1 -2 0 0 0 0];

internalField      uniform 4.01325e5;

boundaryField
{
    inlet1
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        inlet2
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        inlet3
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        walls
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        pipes
    {
        type              fixedFluxPressure;
        value              $internalField;
    }

        baffle1
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        baffle2
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
        baffle3
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
    outlet1
    {
        type              fixedFluxPressure;
        value              $internalField;
    }
       
    outlet2
       
        {
        type            fixedValue;
        value          $internalField;
    }
        /*
    {
                type            totalPressure;
                p0              $internalField;
                value          $internalField;

                // Optional entries
                U              U.oxygen;
                phi            phi;
                rho            rho;
        }
        */
}

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

My mesh quality is good, so I don't think it has some influence over my simulation results behavior

Code:

Mesh stats
    points:          188392
    faces:            539938
    internal faces:  516140
    cells:            176193
    faces per cell:  5.99387
    boundary patches: 10
    point zones:      0
    face zones:      7
    cell zones:      0

Overall number of cells of each type:
    hexahedra:    164588
    prisms:        7831
    wedges:        0
    pyramids:      0
    tet wedges:    67
    tetrahedra:    0
    polyhedra:    3707
    Breakdown of polyhedra by number of faces:
        faces  number of cells
            4  467
            5  413
            6  836
            7  45
            8  62
            9  1230
          10  15
          11  11
          12  475
          13  5
          14  4
          15  127
          16  3
          18  14

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces...
                  Patch    Faces  Points                  Surface topology
                baffle1    1686    1713  ok (non-closed singly connected)
                baffle2    1670    1702  ok (non-closed singly connected)
                baffle3    1684    1715  ok (non-closed singly connected)
                  inlet1      59      67  ok (non-closed singly connected)
                  inlet2      60      68  ok (non-closed singly connected)
                  inlet3      57      63  ok (non-closed singly connected)
                outlet1      218      232  ok (non-closed singly connected)
                outlet2      16      18  ok (non-closed singly connected)
                  pipes    1771    1985  ok (non-closed singly connected)
                  walls    16577    17438  ok (non-closed singly connected)

Checking geometry...
    Overall domain bounding box (-0.108 -0.348498 -0.4122) (2.8772 0.348494 0.4122)
    Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
    Mesh has 3 solution (non-empty) directions (1 1 1)
    Boundary openness (-2.41681e-17 5.65559e-16 3.60538e-16) OK.
    Max cell openness = 2.84095e-16 OK.
    Max aspect ratio = 6.71026 OK.
    Minimum face area = 6.42656e-07. Maximum face area = 0.000725531.  Face area magnitudes OK.
    Min volume = 5.69092e-08. Max volume = 1.11177e-05.  Total volume = 1.04276.  Cell volumes OK.
    Mesh non-orthogonality Max: 44.9781 average: 5.05001
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 1.95597 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

End



All times are GMT -4. The time now is 02:02.