|
[Sponsors] |
April 14, 2015, 10:31 |
Wrong boundary layer with movingWallVelocity
|
#1 |
Member
daniel fernex
Join Date: Oct 2014
Location: Braunschweig, Germany
Posts: 36
Rep Power: 12 |
Dear all,
I'm currently doing unsteady simulations of a vertical axis wind turbine (VAWT) with sliding meshes, cyclicAMI interface and imposed motion (solidBodyMotionFvMesh solver). And I'm going crazy trying to match my results with experimental data. I think my problems have mainly to do with the velocity and the boundary layer. I'm using the spalart-allmaras turbulent model, and the nutUSpaldingWallFunction wall function. The problem is that the velocity on the blade boundary is not zero... I've proceeded in two steps.
The problems I'm facing with the 'movingWallVelocity' are:
So the question is: does anyone know where could this come from ? Am I doing something wrong ? How could I get a better BL ? Any help would be greatly appreciated ! Regards, Daniel P.S.: here are my configuration files: * Solver: pimpleDyMFoam * OF 2.1 *0/U Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volVectorField; location "0"; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (9 0 0); boundaryField { AMI_FS { type cyclicAMI; } AMI_SF { type cyclicAMI; } Inlet { type fixedValue; value uniform (9 0 0); } Outlet { type inletOutlet; inletValue uniform (0 0 0); value uniform (0 0 0); } lowerSym { type symmetryPlane; } upperSym { type symmetryPlane; } back { type empty; } front { type empty; } paddle0 { type movingWallVelocity; value uniform (0 0 0); } paddle1 { type movingWallVelocity; value uniform (0 0 0); } paddle2 { type movingWallVelocity; value uniform (0 0 0); } } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform 0; boundaryField { AMI_FS { type cyclicAMI; value uniform 0; } AMI_SF { type cyclicAMI; value uniform 0; } Inlet { type zeroGradient; } Outlet { type fixedValue; value uniform 0; } lowerSym { type symmetryPlane; } upperSym { type symmetryPlane; } back { type empty; } front { type empty; } paddle0 { type zeroGradient; } paddle1 { type zeroGradient; } paddle2 { type zeroGradient; } } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default fourth; //grad(nuTilda) cellLimited leastSquares 1.0; } divSchemes { default none; div(phi,U) Gauss linearUpwindV grad(U); div(phi,nuTilda) Gauss linearUpwind default; div((nuEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { default none; laplacian(rAU,p) Gauss linear limited 0.5; laplacian(DnuTildaEff,nuTilda) Gauss linear limited 0.5; laplacian(nuEff,U) Gauss linear limited 0.5; //for pimple : laplacian(rAUf,p) Gauss linear limited 0.5; laplacian((1|A(U)),p) Gauss linear limited 0.5; } interpolationSchemes { interpolate(U) linear; interpolate(HbyA) linear; interpolate(((1|deltaT)*rAU)) linear; //for pimple : interpolate(U_0) linear; interpolate((1|A(U))) linear; interpolate(((1|deltaT)*(1|A(U)))) linear; } snGradSchemes { default limited 0.5; } fluxRequired { default no; p ; } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { pcorr { solver GAMG; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration off; agglomerator faceAreaPair; nCellsInCoarsestLevel 10; mergeLevels 1; tolerance 1e-7; relTol 0; //tolerance 0; //relTol 0; //maxIter 1000; } p { solver GAMG; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration off; agglomerator faceAreaPair; nCellsInCoarsestLevel 10; mergeLevels 1; tolerance 1e-7; relTol 0; } pFinal { solver GAMG; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration off; agglomerator faceAreaPair; nCellsInCoarsestLevel 10; mergeLevels 1; tolerance 1e-8; relTol 0; } nuTilda { solver smoothSolver; smoother GaussSeidel; tolerance 1e-7; relTol 0; } nuTildaFinal { solver smoothSolver; smoother GaussSeidel; tolerance 1e-8; relTol 0; } U { solver smoothSolver; smoother GaussSeidel; tolerance 1e-7; relTol 0; } UFinal { solver smoothSolver; smoother GaussSeidel; tolerance 1e-8; relTol 0; } } relaxationFactors { fields { p 0.4; pFinal 1; } equations { U 0.7; UFinal 1; nuTilda 0.5; } } PIMPLE { correctPhi yes; nOuterCorrectors 1; nCorrectors 3; nNonOrthogonalCorrectors 0; pRefCell 0; pRefValue 0; } PISO { nCorrectors 2; nNonOrthogonalCorrectors 0; pRefCell 0; pRefValue 0; } SIMPLE { nNonOrthogonalCorrectors 1; nCorrectors 2; pRefCell 0; pRefValue 0; residualControl { p 1e-5; U 1e-5; nuTilda 1e-5; } } potentialFlow { nNonOrthogonalCorrectors 3; } // ************************************************************************* // |
|
April 17, 2015, 13:14 |
|
#2 |
Member
daniel fernex
Join Date: Oct 2014
Location: Braunschweig, Germany
Posts: 36
Rep Power: 12 |
Dear all,
I've found the answer to my question: the velocity filed is given in absolute and not in relative value. So a velocity different from zero on the paddle is totally normal, since the paddle is moving. The fluid velocity on the paddle is equal to the paddle velocity. And the fluid has no relative velocity to the paddle. So everything is logical and in order ! Regards, Daniel |
|
September 5, 2015, 20:27 |
|
#3 |
New Member
abuabdellah
Join Date: Jan 2012
Posts: 23
Rep Power: 13 |
you are good
but i have problem in verfication the results ... all my results are different ... i did the mesh in the ansys mesh to fluent .. can you tell me what is the variables in the meshing first and then in fluent for solving the case ? thanks in advance ... best wishes |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Domain Imbalance | HMR | CFX | 5 | October 10, 2016 06:57 |
Question about heat transfer coefficient setting for CFX | Anna Tian | CFX | 1 | June 16, 2013 07:28 |
[snappyHexMesh] Boundary layer in a pipe | Clementhuon | OpenFOAM Meshing & Mesh Conversion | 6 | March 12, 2012 13:41 |
A question on "Specifying Boundary Layer Deformation Smoothing" | didiean | FLUENT | 2 | January 16, 2012 22:39 |
Boundary layer flow goes the wrong way | andimb | OpenFOAM Running, Solving & CFD | 2 | March 20, 2006 09:51 |