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

Drag coefficient of sphere & spherical bubble at Re = 1

Register Blogs Community New Posts Updated Threads Search

Like Tree3Likes
  • 1 Post By kriegman
  • 1 Post By nipinl
  • 1 Post By nipinl

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   October 27, 2023, 03:52
Smile Drag coefficient of sphere & spherical bubble at Re = 1
  #1
New Member
 
Na
Join Date: Feb 2022
Posts: 4
Rep Power: 4
MontelukastNa is on a distinguished road
Hello, CFDers & OpenFOAMers

Recently, i am trying to validate the drag coefficient of sphere & spherical bubble at Re=1 with OpenFoam

In my opinion, i think the difference between flow around sphere(fixed position) and spherical bubble(fixed position) is only depends on the boundary condition of the interface. In a word, if the boundary is no-slip, it's a sphere, otherwise, a spherical bubble has slip interface. this topic is derived from professor Duineveld's publication:
Bel Fdhila, R., Duineveld, P.C., 1996. The effect of surfactant on the rise of a spherical bubble at high Reynolds and Peclet numbers. Phys. Fluids 8, 310–321.


The result of pimpleFoam simulated the sphere show me an perfect result, when Re is 1, the drag coefficient is 27.6, it is consistent with Schiller-Newman equation(Cd=24/Re*(1+0.15*Re^0.687)).

But, when I change the boundary condition from no-slip to slip, the result is not consistent with H-R equation(Cd=16/Re), my Cd result of spherical bubble is approximately equal to 13. that shoud be 16!

Here are my case code:
constant/transportProperties
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
transportModel  Newtonian;
nu              [0 2 -1 0 0 0 0] 2;
0.orig/p
Code:
/*--------------------------------*- 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       volScalarField;
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    inlet
    {
        type            zeroGradient;
    }
    outlet
    {
        type            fixedValue;
        value           uniform 0;
    }

    bubbleInterface
    {
        type            slip;
        //type            fixedFluxPressure;
        //value           $internalField;
    }

    symmetry
    {
        type            symmetry;
    }
    
    front
    {
        type            wedge;
    }
    back
    {
        type            wedge;
    }
}
0.orig/U
Code:
/*--------------------------------*- 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       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (1 0 0);

boundaryField
{
    inlet
    {
        type            fixedValue;
        value           uniform (1 0 0);
    }
    outlet
    {
        type            zeroGradient;
    }

    bubbleInterface
    {
        type            slip;
    }

    symmetry
    {
        type            symmetry;
    }
    
    front
    {
        type            wedge;
    }
    back
    {
        type            wedge;
    }
}
system/fvSchemes
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default         backward;
}

gradSchemes
{
    default 	     cellLimited leastSquares 1;
}

divSchemes
{
    default         none;
    div(phi,U)      Gauss upwind;
    div((nuEff*dev2(T(grad(U)))))	Gauss linear;
}

laplacianSchemes
{
    default         Gauss linear limited 1;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         limited 1;
}

system/fvSolution
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    p
    {
        solver           GAMG;
        tolerance        1e-6;
        relTol           0;
        smoother         GaussSeidel;
        nPreSweeps       0;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator     faceAreaPair;
        nCellsInCoarsestLevel 100;
        mergeLevels      1;
	minIter 	2;
    }

    pFinal
    {
        $p;
        relTol          0;
	minIter 	2;
    }

    "(U|UFinal)"
    {
        solver          PBiCGStab;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }
}

PIMPLE
{
    momentumPredictor yes;
    consistent 		yes;   
    nOuterCorrectors 2;
    nCorrectors 2;
    nNonOrthogonalCorrectors 1;

    //pRefCell        0;
    //pRefValue       0;
}

relaxationFactors
{
    fields
    {
        ".*"   0.9;
    }
    equations
    {
        ".*"   0.9;
    }
}

system/controlDict
Code:
/*--------------------------------*- 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     pimpleFoam;
startFrom       latestTime;
startTime       0;
stopAt          endTime;
endTime         50;
deltaT          1;
writeControl    adjustableRunTime;
writeInterval   1;
purgeWrite      0;
writeFormat     ascii;
writePrecision  8;
writeCompression off;
timeFormat      general;
timePrecision   6;
runTimeModifiable yes;
adjustTimeStep  yes;
maxCo           1;
maxDeltaT       0.01;

functions

{
     Forces
     {
         type forces;
         libs ("libforces.so");
         patches (bubbleNoSlipWall bubbleSlipWall);
         log false;
         rho rhoInf;
         rhoInf 1;
         CofR (0 0 0);
         liftDir (0 1 0); 
         dragDir (1 0 0); 
         writeControl    adjustableRunTime;
         writeInterval   1;
     }

     forceCoeffs
     {
         type forceCoeffs;
         libs ("libforces.so");
         patches (bubbleNoSlipWall bubbleSlipWall); 
         log true; 
         rho rhoInf; 
         rhoInf 1; 
         CofR (0 0 0);
         liftDir (0 1 0); 
         dragDir (1 0 0); 
         pitchAxis (0 0 1);
         magUInf 1; // the velocity of flow at far field is 1/ms, then, Re=U*D/nu=1*2/2=1;
         lRef 2; //Diameter is 2, radiu is 1
         Aref 0.04363323129985824;  //5°Wedge Mesh, the project area is PI*1*1*5/360;
         writeControl    adjustableRunTime; 
         writeInterval   1; 
     }
};
Could you give me some suggestions or help me to debug the drag coefficient of spherical Bubble, thanks!

Thanks!

All Best,
Na
Attached Images
File Type: png Cd_of_Sphere.png (87.1 KB, 35 views)
File Type: png Cd_of_sphericalBubble.png (100.9 KB, 33 views)
File Type: jpg Mesh.jpg (197.0 KB, 35 views)
File Type: jpg WedgeMesh.jpg (132.0 KB, 26 views)
File Type: png Computational_domain.png (20.4 KB, 26 views)
MontelukastNa is offline   Reply With Quote

Old   December 8, 2023, 14:04
Default
  #2
Senior Member
 
Join Date: Dec 2019
Location: Cologne, Germany
Posts: 355
Rep Power: 8
geth03 is on a distinguished road
that is a cool project!

first of all, a bubble has lower drag bc of internal circulation, if you model it like a solid sphere and just apply a slip BC, that is not enough. you do not resolve the inner circulation!

the Hadamard–Rybczynski correction has viscosity terms! if you do not resolve the bubble, where is your viscosity then?

the better approach to validate this would be VoF simulation (interFoam)
geth03 is offline   Reply With Quote

Old   January 30, 2024, 13:44
Default Unable to validate Cd for rigid sphere
  #3
New Member
 
Jayabrata Dhar
Join Date: Nov 2018
Posts: 17
Rep Power: 7
jd87 is on a distinguished road
Hi Foamers,

I am new to pimpleFoam and was trying to validate the overall drag on a sphere due to a flow past it. I used the entries as stated above with the given geometry, I am not getting the drag coefficient of 27.6, I am getting something around 40. I have attached my case, it would be helpful if anyone could spot where I am going wrong or share any comment that would help me validate the same. Also, is there a 3D version for such validation in OF?

PS: To run the case, one has to convert the .geo file in constant to .msh using GMSH and then use the two following commands:
Code:
gmshToFoam constant/sphere.msh
pimpleFoam
In case GMSH is not available, kindly drop a reply, and I will share the files over a link.

Thanks in anticipation,
JD
Attached Files
File Type: zip case.zip (5.4 KB, 4 views)
jd87 is offline   Reply With Quote

Old   February 1, 2024, 20:01
Default
  #4
New Member
 
Maoqiang Jiang
Join Date: Jun 2021
Posts: 2
Rep Power: 0
jmqmyllife is on a distinguished road
Quote:
Originally Posted by MontelukastNa View Post
Hello, CFDers & OpenFOAMers

Recently, i am trying to validate the drag coefficient of sphere & spherical bubble at Re=1 with OpenFoam

In my opinion, i think the difference between flow around sphere(fixed position) and spherical bubble(fixed position) is only depends on the boundary condition of the interface. In a word, if the boundary is no-slip, it's a sphere, otherwise, a spherical bubble has slip interface. this topic is derived from professor Duineveld's publication:
Bel Fdhila, R., Duineveld, P.C., 1996. The effect of surfactant on the rise of a spherical bubble at high Reynolds and Peclet numbers. Phys. Fluids 8, 310–321.


The result of pimpleFoam simulated the sphere show me an perfect result, when Re is 1, the drag coefficient is 27.6, it is consistent with Schiller-Newman equation(Cd=24/Re*(1+0.15*Re^0.687)).

But, when I change the boundary condition from no-slip to slip, the result is not consistent with H-R equation(Cd=16/Re), my Cd result of spherical bubble is approximately equal to 13. that shoud be 16!

Here are my case code:
constant/transportProperties
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    location    "constant";
    object      transportProperties;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
transportModel  Newtonian;
nu              [0 2 -1 0 0 0 0] 2;
0.orig/p
Code:
/*--------------------------------*- 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       volScalarField;
    object      p;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform 0;

boundaryField
{
    inlet
    {
        type            zeroGradient;
    }
    outlet
    {
        type            fixedValue;
        value           uniform 0;
    }

    bubbleInterface
    {
        type            slip;
        //type            fixedFluxPressure;
        //value           $internalField;
    }

    symmetry
    {
        type            symmetry;
    }
    
    front
    {
        type            wedge;
    }
    back
    {
        type            wedge;
    }
}
0.orig/U
Code:
/*--------------------------------*- 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       volVectorField;
    location    "0";
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

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

internalField   uniform (1 0 0);

boundaryField
{
    inlet
    {
        type            fixedValue;
        value           uniform (1 0 0);
    }
    outlet
    {
        type            zeroGradient;
    }

    bubbleInterface
    {
        type            slip;
    }

    symmetry
    {
        type            symmetry;
    }
    
    front
    {
        type            wedge;
    }
    back
    {
        type            wedge;
    }
}
system/fvSchemes
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSchemes;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

ddtSchemes
{
    default         backward;
}

gradSchemes
{
    default 	     cellLimited leastSquares 1;
}

divSchemes
{
    default         none;
    div(phi,U)      Gauss upwind;
    div((nuEff*dev2(T(grad(U)))))	Gauss linear;
}

laplacianSchemes
{
    default         Gauss linear limited 1;
}

interpolationSchemes
{
    default         linear;
}

snGradSchemes
{
    default         limited 1;
}

system/fvSolution
Code:
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      fvSolution;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

solvers
{
    p
    {
        solver           GAMG;
        tolerance        1e-6;
        relTol           0;
        smoother         GaussSeidel;
        nPreSweeps       0;
        nPostSweeps      2;
        cacheAgglomeration on;
        agglomerator     faceAreaPair;
        nCellsInCoarsestLevel 100;
        mergeLevels      1;
	minIter 	2;
    }

    pFinal
    {
        $p;
        relTol          0;
	minIter 	2;
    }

    "(U|UFinal)"
    {
        solver          PBiCGStab;
        preconditioner  DILU;
        tolerance       1e-08;
        relTol          0;
    }
}

PIMPLE
{
    momentumPredictor yes;
    consistent 		yes;   
    nOuterCorrectors 2;
    nCorrectors 2;
    nNonOrthogonalCorrectors 1;

    //pRefCell        0;
    //pRefValue       0;
}

relaxationFactors
{
    fields
    {
        ".*"   0.9;
    }
    equations
    {
        ".*"   0.9;
    }
}

system/controlDict
Code:
/*--------------------------------*- 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     pimpleFoam;
startFrom       latestTime;
startTime       0;
stopAt          endTime;
endTime         50;
deltaT          1;
writeControl    adjustableRunTime;
writeInterval   1;
purgeWrite      0;
writeFormat     ascii;
writePrecision  8;
writeCompression off;
timeFormat      general;
timePrecision   6;
runTimeModifiable yes;
adjustTimeStep  yes;
maxCo           1;
maxDeltaT       0.01;

functions

{
     Forces
     {
         type forces;
         libs ("libforces.so");
         patches (bubbleNoSlipWall bubbleSlipWall);
         log false;
         rho rhoInf;
         rhoInf 1;
         CofR (0 0 0);
         liftDir (0 1 0); 
         dragDir (1 0 0); 
         writeControl    adjustableRunTime;
         writeInterval   1;
     }

     forceCoeffs
     {
         type forceCoeffs;
         libs ("libforces.so");
         patches (bubbleNoSlipWall bubbleSlipWall); 
         log true; 
         rho rhoInf; 
         rhoInf 1; 
         CofR (0 0 0);
         liftDir (0 1 0); 
         dragDir (1 0 0); 
         pitchAxis (0 0 1);
         magUInf 1; // the velocity of flow at far field is 1/ms, then, Re=U*D/nu=1*2/2=1;
         lRef 2; //Diameter is 2, radiu is 1
         Aref 0.04363323129985824;  //5°Wedge Mesh, the project area is PI*1*1*5/360;
         writeControl    adjustableRunTime; 
         writeInterval   1; 
     }
};
Could you give me some suggestions or help me to debug the drag coefficient of spherical Bubble, thanks!

Thanks!

All Best,
Na
Have you solved the problem? I have the same problem with you when I just set the boundary condition as slip on the sphere surface for the bubble. The drag coefficient is also 13.74 at Re=1. Could you tell me how to solve it? Thanks in advance.
jmqmyllife is offline   Reply With Quote

Old   February 2, 2024, 12:03
Default
  #5
New Member
 
Join Date: Feb 2023
Location: Lyon, France
Posts: 2
Rep Power: 0
kriegman is on a distinguished road
Hello Foamers,

So I'm also investigating a similar problem with an implementation of the Navier slip for the modeling of flow around bubbles with different "surface contamination" level.

While trying to validate an implementation of the Navier Slip BC, I Noticed that the solution (for the case where the slip length tends to infinity, which means the free slip condition) doesn't fit the analytical one. And I have similar results to MontelukastNa. i.e for Re = 1, C_D \approx 24.7 for the no-slip condition (case of a solid sphere) and C_D \approx 12 for the slip (case of a clean bubble). Looking at the tangential velocity at the bubble's surface, it reaches a maximum of u_t \approx 0.75 U_\infty instead of the analytical solution of u_t = 0.5U_\infty

Some investigation. I found this bug report dating from 2016 where the author claims that he has a better solution when using the symmetry (geometry) condition on the surface of the sphere. I tried it, and it does work and provides the correct value for the drag coefficient, i.e C_D \approx 16 for Re << 1.

Looking at the code, both the the slip condition and the symmetry patch type are implemented by inheriting basicSymmetryFvPatch so the two are equivalent. (reference)

The symmetry condition is a geometrical one, and the only difference is that the symmetry condition ensures that the basicSymmetry condition is applied to ALL the fields. As Mr Henry Weller put it in his response.
Quote:
'slip' is a BC choice and for a vector field is equivalent to 'symmetry' but is only applied to that field not to associated fields e.g. 'H/A'.
.
I haven't had an opportunity to investigate this further yet, and would be interested if you have any idea on why we have such a discrepancy?

I would be posting here some simple test cases when possible.

Note : this seems to be happening only with curved patches. AFAIK this discrepancy between the slip and symmetry conditions doesn't show for planar problems.


TLDR: Use the symmetry geometrical condition for curved patches. The slip boundary condition (although sharing the same implementation) seems to underpredict the drag force (and overpredict the max tangential slip velocity) for curved patches.


Kamel O.
jd87 likes this.
kriegman is offline   Reply With Quote

Old   February 3, 2024, 23:11
Default
  #6
New Member
 
Jayabrata Dhar
Join Date: Nov 2018
Posts: 17
Rep Power: 7
jd87 is on a distinguished road
Hi,

I have attempted to solve for Re=1 but cannot get the 24.7 value for Cd. I have attached my files two replies before in this thread, can you help me with the issue and where I am doing wrong, it would be of great help, thanks.

Jay
jd87 is offline   Reply With Quote

Old   February 5, 2024, 04:12
Default
  #7
New Member
 
Join Date: Feb 2023
Location: Lyon, France
Posts: 2
Rep Power: 0
kriegman is on a distinguished road
Quote:
Originally Posted by jd87 View Post
Hi,

I have attempted to solve for Re=1 but cannot get the 24.7 value for Cd. I have attached my files two replies before in this thread, can you help me with the issue and where I am doing wrong, it would be of great help, thanks.

Jay
Hi,
I have no problem for the case of the solid sphere. Are you sure you're setting the noSlip condition on the velocity and zeroGradient on the pressure ?
can you provide the mesh for your case as I dont have Gmsh available.



Kamel
kriegman is offline   Reply With Quote

Old   February 6, 2024, 01:52
Default
  #8
New Member
 
Jayabrata Dhar
Join Date: Nov 2018
Posts: 17
Rep Power: 7
jd87 is on a distinguished road
Quote:
Originally Posted by kriegman View Post
Hi,
I have no problem for the case of the solid sphere. Are you sure you're setting the noSlip condition on the velocity and zeroGradient on the pressure ?
can you provide the mesh for your case as I dont have Gmsh available.



Kamel

Hi,


Yes, I have essentially used noSlip, I have used a zero velocity boundary condition, you may view that in my zip file previously attached. For pressure, I am also using zeroGradient, I don't know where I am missing something. You can find my constant folder with the .msh file as well as the compiled mesh in this link:
https://drive.google.com/file/d/1TPD...ew?usp=sharing



You can also email me at
jayabratadhar03@gmail.com
in case if you wish to share some files.


Thanks a lot for your kind reply.


Best Regards,
Jay
jd87 is offline   Reply With Quote

Old   February 9, 2024, 09:58
Default Cd found to be 40 instead of 27.6
  #9
New Member
 
Nipin L
Join Date: Nov 2012
Location: India
Posts: 17
Rep Power: 13
nipinl is on a distinguished road
Hi,

I too get Cd ~40 for sphere, with Re=1 in axi-symmetric case. Could you sort out the issue?
jd87 likes this.
nipinl is offline   Reply With Quote

Old   February 9, 2024, 22:54
Default
  #10
New Member
 
Jayabrata Dhar
Join Date: Nov 2018
Posts: 17
Rep Power: 7
jd87 is on a distinguished road
Hi,

Let me know if you have solved the issue with Cd~40 and not ~27 (which is right) for Re=1.

Thanks,
jd87 is offline   Reply With Quote

Old   February 10, 2024, 09:31
Default Solved. Got the value 27.538
  #11
New Member
 
Nipin L
Join Date: Nov 2012
Location: India
Posts: 17
Rep Power: 13
nipinl is on a distinguished road
Finer mesh (specially near to boundary)solved the problem. For those who are interested, please find the attached case file and gmsh script.
Attached Files
File Type: gz flowOverSphere.tar.gz (6.1 KB, 3 views)
jd87 likes this.
nipinl is offline   Reply With Quote

Old   February 11, 2024, 11:03
Default
  #12
New Member
 
Jayabrata Dhar
Join Date: Nov 2018
Posts: 17
Rep Power: 7
jd87 is on a distinguished road
Thanks a lot, Nipin L for the files. I have made some changes in the run.sh and controlDict file since it was not running properly (maybe due to compatible issues) and re-attaching the files for further help to new Foamers. The present file is checked to run with OpenFOAM v8 and v10.

Preferably, install Gmsh v2.16 (a later version would work, then export the mesh in version 2 format).

hope it helps!

Thanks.
Attached Files
File Type: zip flowOverSphereValidation.zip (12.1 KB, 2 views)
jd87 is offline   Reply With Quote

Old   February 19, 2024, 01:05
Default
  #13
New Member
 
Maoqiang Jiang
Join Date: Jun 2021
Posts: 2
Rep Power: 0
jmqmyllife is on a distinguished road
Quote:
Originally Posted by kriegman View Post
Hello Foamers,

So I'm also investigating a similar problem with an implementation of the Navier slip for the modeling of flow around bubbles with different "surface contamination" level.

While trying to validate an implementation of the Navier Slip BC, I Noticed that the solution (for the case where the slip length tends to infinity, which means the free slip condition) doesn't fit the analytical one. And I have similar results to MontelukastNa. i.e for Re = 1, C_D \approx 24.7 for the no-slip condition (case of a solid sphere) and C_D \approx 12 for the slip (case of a clean bubble). Looking at the tangential velocity at the bubble's surface, it reaches a maximum of u_t \approx 0.75 U_\infty instead of the analytical solution of u_t = 0.5U_\infty

Some investigation. I found this bug report dating from 2016 where the author claims that he has a better solution when using the symmetry (geometry) condition on the surface of the sphere. I tried it, and it does work and provides the correct value for the drag coefficient, i.e C_D \approx 16 for Re << 1.

Looking at the code, both the the slip condition and the symmetry patch type are implemented by inheriting basicSymmetryFvPatch so the two are equivalent. (reference)

The symmetry condition is a geometrical one, and the only difference is that the symmetry condition ensures that the basicSymmetry condition is applied to ALL the fields. As Mr Henry Weller put it in his response.
.
I haven't had an opportunity to investigate this further yet, and would be interested if you have any idea on why we have such a discrepancy?

I would be posting here some simple test cases when possible.

Note : this seems to be happening only with curved patches. AFAIK this discrepancy between the slip and symmetry conditions doesn't show for planar problems.


TLDR: Use the symmetry geometrical condition for curved patches. The slip boundary condition (although sharing the same implementation) seems to underpredict the drag force (and overpredict the max tangential slip velocity) for curved patches.


Kamel O.
Hi kriegman,

Could you share the case files for the flow past a bubble?
I used symmetry boundary conditions on bubble's surface, but still did not get satisfactory drag force.

Thanks in advance
jmqmyllife is offline   Reply With Quote

Reply

Tags
bubble velocity, drag coefficient, stokes flow


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
Calculation of lift and drag coefficients on airfoil CoolHersheys OpenFOAM Post-Processing 5 September 27, 2021 06:04
PimpleFoam - oscillating forces and drag coefficient crizpi21 OpenFOAM Running, Solving & CFD 3 July 2, 2018 11:53
Thrust Coefficient vs. Drag Coefficient m_ridzon Main CFD Forum 7 April 24, 2018 12:01
Drag coefficient CEL expression sarrazs CFX 2 September 28, 2017 10:21
Water subcooled boiling Attesz CFX 7 January 5, 2013 03:32


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