CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

DPMFoam - Periodic boundary condition

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 11, 2020, 09:27
Default DPMFoam - Periodic boundary condition
  #1
New Member
 
Rodrigo
Join Date: Oct 2020
Posts: 1
Rep Power: 0
P4tr1ck_St4r is on a distinguished road
I am new in OpenFoam and I need to track a cloud of particles in a channel with periodic boundary conditions. I have two main problems:

1. The cyclic boundary condition looks not working for particles. They stick on the outlet boundary.

2. The particle's flow slowing down over time. I have read that this can be solved by adding fvOptions, but I don't know how to do that.

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

scale   1;  

vertices
(
    (0 0 0)
    (10 0 0)
    (10 1 0)
    (0 1 0)
    (0 0 2)
    (10 0 2)
    (10 1 2)
    (0 1 2)
);

blocks
(
    hex (0 1 2 3 4 5 6 7) (90 50 1) simpleGrading (1 1 1)
);

edges
(
);

boundary
(
    inlet
    {   
        type cyclic;
        neighbourPatch outlet;
        transform translational;
        separationVector (10 0 0);    
        faces
        (
            (4 7 3 0)
        );
     }   


    outlet
    {
        type cyclic;
        neighbourPatch inlet;
        transform translational;
        separationVector (-10 0 0);
        faces
        (
            (5 1 2 6)
        );
    }

    top
    {
        type wall;
        faces
        (
            (7 6 2 3)
        );
    }

    bottom
    {
        type wall;
        faces
        (
            (0 1 5 4)
        );
    }

    walls
    {
        type wall;
        faces
        (
            (4 5 6 7)
            (0 3 2 1)
        );
    }
);

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

solution
{
    active          true;
    coupled         true;
    transient       yes;
    cellValueSourceCorrection off;

    interpolationSchemes
    {
        rho.air         cell;
        U.air           cellPoint;
        mu.air          cell;
    }

    integrationSchemes
    {
        U               Euler;
    }

    sourceTerms
    {
        schemes
        {
            U semiImplicit 1;
        }
    }
}

constantProperties
{
    parcelTypeId 1;

    rhoMin          2;
    minParcelMass   1.04e-6;

    rho0            2;
    youngsModulus   1e8;
    poissonsRatio   0.35;

    constantVolume  true;

    alphaMax        0.99;
}

subModels
{
    particleForces
    {
        ErgunWenYuDrag
        {
            alphac alpha.air;
        }
        gravity;
    }

    injectionModels
    {
        model1
        {
            type            manualInjection;
            massTotal       0;
            parcelBasisType fixed;
            nParticle       1;
            SOI             0;
            positionsFile   "kinematicCloudPositions";
            U0              (0.5 0 0);
            sizeDistribution
            {
                type        fixedValue;
                fixedValueDistribution
                {
                    value   0.01;
                }
            }
        }
    }

    dispersionModel none;

    patchInteractionModel standardWallInteraction;

    StandardWallInteractionCoeffs
    {
        type rebound;
        e    0.97;
        mu   0.09;
    }

    heatTransferModel none;

    surfaceFilmModel none;

    collisionModel pairCollision;

    pairCollisionCoeffs
    {
        maxInteractionDistance  0.0025;

        writeReferredParticleCloud no;

        pairModel pairSpringSliderDashpot;

        pairSpringSliderDashpotCoeffs
        {
            useEquivalentSize   no;
            alpha               0.02;
            b                   1.5;
            mu                  0.10;
            cohesionEnergyDensity 0;
            collisionResolutionSteps 12;
        };

        wallModel wallSpringSliderDashpot;

        wallSpringSliderDashpotCoeffs
        {
            useEquivalentSize no;
            collisionResolutionSteps 12;
            youngsModulus   1e8;
            poissonsRatio   0.23;
            alpha           0.01;
            b               1.5;
            mu              0.09;
            cohesionEnergyDensity 0;
        };

        U     U.air;
    }

    stochasticCollisionModel none;

    radiation off;
}


cloudFunctions
{}


 // ************************************************************************* //
0/U.air

Code:
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v2006                                 |
|   \\  /    A nd           | Website:  www.openfoam.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      binary;
    class       volVectorField;
    location    "0";
    object      U.air;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (1 0 0);

boundaryField
{
    walls
    {
        type            noSlip;
    }

    top
    {
        type         noSlip;
    }

    bottom
    {
        type        noSlip;
    }

    outlet
    {
        type            cyclic;
    }

    inlet
    {
        type            cyclic;
    }
}


// ************************************************************************* //
0/p

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

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

internalField   uniform 0;

boundaryField
{
    walls
    {
        type            fixedFluxPressure;
        phi             phi.air;
        value           $internalField;
    }

    inlet
    {   
        type            cyclic;
    }   

    outlet
    {   
        type            cyclic;
    }

    top
    {   
        type            fixedFluxPressure;
        phi             phi.air;
        value           $internalField;
    }

    bottom
    {   
        type            fixedFluxPressure;
        phi             phi.air;
        value           $internalField;
    }
}

// ************************************************************************* //
Hope that helps!
P4tr1ck_St4r is offline   Reply With Quote

Old   October 14, 2020, 02:33
Default
  #2
Member
 
Join Date: Sep 2010
Location: Leipzig, Germany
Posts: 93
Rep Power: 15
oswald is on a distinguished road
1) One guess: I don't know what happens because you specified both, a patchInteractionModel and a collisionModel? Maybe you should switch one of them off.



2) As you have no boundary condition that keeps pressure/velocity constant at some patch, the coupling of the parcels with the flow's momentum in combination with their energy loss due to collisions should slowly decelerate the flow. You can try turning off "coupled" in kinematicCloudProperties and see if there is a change.
oswald is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
sliding mesh problem in CFX Saima CFX 46 September 11, 2021 07:38
Turbomachinery Mass imbalance sheaker CFX 12 September 5, 2019 08:09
Problem in setting Boundary Condition Madhatter92 CFX 12 January 12, 2016 04:39
Unsteady Periodic Boundary Condition EMolina SU2 0 July 24, 2014 16:16
Error finding variable "THERMX" sunilpatil CFX 8 April 26, 2013 07:00


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