adjusting fvSchemes and fvSolution to correct for drag discrepancy
I am running a 2D airfoil simulation of a NACA23012 section using simpleFoam as a solver.
The CL vs alpha seems to be in the ballpark with experimental results, but the drag is way too high. I understand that this is a common problem with turbulence model simulations. Right now I am using the native OpenFOAM SpalartAllmaras turbulence model with the default parameters. After browsing through several posts on the subject, I am led to believe that the adjustments to the drag solution can be made through the fvScheme and fvSolution files. However, I have no idea how to tweak them. Is there an online tutorial anywhere that can point me to a solution? If not, what is the best way to proceed in this situation? |
Hi,
did you solve the problem? |
im also stuck here :(
|
any chance for you all to share a minimal example or the full case, so that we can also try to test what is going on?
|
Files in the 0 folder
/*--------------------------------*- C++ -*----------------------------------*\
========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volVectorField; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (0 0 0); boundaryField { INLET { type fixedValue; value (50 0 0); } OUTLET { type freestreamVelocity; freestreamValue $internalField; } AIRFOIL { type noSlip; } TOP { type symmetry; } BOTTOM { type symmetry; } frontAndBack { type empty; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform 82714.29; boundaryField { INLET { type zeroGradient; } OUTLET { type freestreamPressure; freestreamValue $internalField; } AIRFOIL { type zeroGradient; } TOP { type symmetry; } BOTTOM { type symmetry; } frontAndBack { type empty; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object nut; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -1 0 0 0 0]; internalField uniform 0.14; boundaryField { INLET { type freestream; freestreamValue uniform 0.14; } OUTLET { type freestream; freestreamValue uniform 0.14; } AIRFOIL { type nutUSpaldingWallFunction; value uniform 0; } TOP { type symmetry; } BOTTOM { type symmetry; } frontAndBack { type empty; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; object nuTilda; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -1 0 0 0 0]; internalField uniform 0.14; boundaryField { INLET { type freestream; freestreamValue uniform 0.14; } OUTLET { type freestream; freestreamValue uniform 0.14; } AIRFOIL { type fixedValue; value uniform 0; } TOP { type symmetry; } BOTTOM { type symmetry; } frontAndBack { type empty; } } // ************************************************** *********************** // |
Files in the system folder
/*--------------------------------*- C++ -*----------------------------------*\
========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object controlDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // application simpleFoam; startFrom startTime; startTime 0; stopAt endTime; endTime 200000; deltaT 1; writeControl timeStep; writeInterval 5; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression off; timeFormat general; timePrecision 6; runTimeModifiable true; functions { forces { type forceCoeffs; libs ("libforces.so"); writeControl timeStep; writeInterval 1; patches ( AIRFOIL ); log true; rho rhoInf; rhoInf 1; CofR (0 0 0); liftDir (0 1 0); dragDir (1 0 0); pitchAxis (0 0 1); magUInf 50; lRef 1; Aref 1; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { p { solver GAMG; tolerance 1e-06; relTol 0.1; smoother GaussSeidel; } U { solver smoothSolver; smoother GaussSeidel; nSweeps 2; tolerance 1e-08; relTol 0.1; } nuTilda { solver smoothSolver; smoother GaussSeidel; nSweeps 2; tolerance 1e-08; relTol 0.1; } } SIMPLE { nNonOrthogonalCorrectors 0; residualControl { p 1e-5; U 1e-5; nuTilda 1e-5; } } relaxationFactors { fields { p 0.3; } equations { U 0.7; nuTilda 0.7; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | Website: https://openfoam.org \\ / A nd | Version: 8 \\/ M anipulation | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default steadyState; } gradSchemes { default Gauss linear; } divSchemes { default none; div(phi,U) bounded Gauss linearUpwind grad(U); div(phi,nuTilda) bounded Gauss linearUpwind grad(nuTilda); div((nuEff*dev2(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } wallDist { method meshWave; } // ************************************************** *********************** // |
no, I meant by a minimal example that could be downloadable and executable easily and effortlessly. thanks.
|
All times are GMT -4. The time now is 06:26. |