|
[Sponsors] |
port flow analysis in internal combustion engine , rhosimpleFoam NOT converging |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 3, 2017, 10:15 |
port flow analysis in internal combustion engine , rhosimpleFoam NOT converging
|
#1 |
Member
giovanni
Join Date: Sep 2017
Posts: 50
Rep Power: 9 |
Hi guys.
I'm a student and i' m new in open foam simulation.. I' m trying to evaluate the flow coefficient through a poppet valve of an internal comb. engine . I have modeled my geometry by solidworks providing a semi sphere as a rest chamber before the main inlet duct and then a another "plenum" behind the cylinder and then a another "plenum" behind the cylinder displacement (having cylindrical shape too). the solver that i must use is rhosimpleFoam since my case is stationary , compressible. I' ve made two type of simulation. 1) First of all i' ve tried to impose a pressure drop between inlet (semi sphere) and outlet 2) then i change the bc by imposing a mass flow rate instead of a pressure drop . In both case i cannot reach convergence . it seems that some heavy unsteady phenomena arouse (especially around the poppet valve) that prevent the case to reach a convergent solution. CheckMesh seems ok and not give me any warning... I' ve try a lot of configuration : only laminar flow (instead of k-omega turbulence model) , larger cell of blockMesh ecc, larger plenum chamber at outlet .. but nothing seems work. i' ve stayed on ths project for weeks and weeks but i didn't managed to reach any type of solution. Could anyone help me by take a look on the case? i' ve uploaded the case via google drive at this link. https://drive.google.com/file/d/0B_R...ew?usp=sharing here instead i give checkMesh log: Create time Create polyMesh for time = 0 Time = 0 Mesh stats points: 4272659 faces: 12025709 internal faces: 11751182 cells: 3903207 faces per cell: 6.09163 boundary patches: 10 point zones: 1 face zones: 3 cell zones: 0 Overall number of cells of each type: hexahedra: 3512127 prisms: 47047 wedges: 0 pyramids: 0 tet wedges: 752 tetrahedra: 3 polyhedra: 343278 Breakdown of polyhedra by number of faces: faces number of cells 4 51944 5 28009 6 29925 7 113169 8 53725 9 38062 10 970 11 298 12 15864 13 53 14 61 15 10827 16 6 17 1 18 363 21 1 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 inlet 56952 71836 ok (non-closed singly connected) piatto 9949 11307 ok (non-closed singly connected) condotto 79887 104802 ok (non-closed singly connected) guida 4326 5685 ok (non-closed singly connected) valvole 57033 64591 ok (non-closed singly connected) sedi 11158 15191 ok (non-closed singly connected) testa 26416 29430 ok (non-closed singly connected) outlet 1581 1613 ok (non-closed singly connected) cilindro 17224 18461 ok (non-closed singly connected) plenum 10001 10123 ok (non-closed singly connected) Checking geometry... Overall domain bounding box (0.0367242 -0.18 0.346475) (0.236754 0.323378 0.628011) Mesh has 3 geometric (non-empty/wedge) directions (1 1 1) Mesh has 3 solution (non-empty) directions (1 1 1) Boundary openness (-3.22993e-16 -1.18435e-16 4.97165e-16) OK. Max cell openness = 4.30493e-16 OK. Max aspect ratio = 13.9639 OK. Minimum face area = 2.01645e-09. Maximum face area = 6.50251e-06. Face area magnitudes OK. Min volume = 4.14004e-13. Max volume = 1.05867e-08. Total volume = 0.00404849. Cell volumes OK. Mesh non-orthogonality Max: 64.9158 average: 6.94015 Non-orthogonality check OK. Face pyramids OK. Max skewness = 3.80401 OK. Coupled point location match (average 0) OK. Mesh OK. End |
|
November 4, 2017, 04:36 |
|
#2 |
Member
giovanni
Join Date: Sep 2017
Posts: 50
Rep Power: 9 |
i post here some issue
i know that the case is very heavy.. control dict FoamFile { version 2.0; format ascii; class dictionary; location "system"; object controlDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // application rhoSimpleFoam; startFrom startTime; startTime 0; stopAt endTime; endTime 2500; deltaT 1; writeControl timeStep; writeInterval 100; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression off; timeFormat general; timePrecision 6; graphFormat raw; runTimeModifiable true; functions { #includeFunc "residuals" // #includeFunc "volFlowRateSurface" // #includeFunc "pressureDifferencePatch" //#includeFunc "staticPressure" //#includeFunc "totalPressureCompressible" #includeFunc "yPlus" } Fvschemes 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 linear; div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear; div(phi,e) bounded Gauss upwind; div(phi,h) bounded Gauss upwind; div(phi,epsilon) bounded Gauss upwind; div(phi,omega) bounded Gauss upwind; div(phi,k) bounded Gauss upwind; div(phid,p) Gauss upwind; div(phi,Ekp) bounded Gauss upwind; div((phi|interpolate(rho)),p) Gauss upwind; div(phi,K) bounded Gauss upwind; } laplacianSchemes { default Gauss linear corrected; //default Gauss linear uncorrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } wallDist { method meshWave; } FvSolution FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { p { solver GAMG; tolerance 1e-08; relTol 0.1; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; nFinestSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 20; agglomerator faceAreaPair; mergeLevels 1; } U { solver PBiCGStab; preconditioner DILU; nSweeps 2; tolerance 1e-06; relTol 0.1; } "(e|h)" { solver PBiCGStab; preconditioner DILU; tolerance 1e-06; relTol 0.1; } "(k|epsilon|omega)" { $U; tolerance 1e-07; relTol 0.1; } } SIMPLE { nNonOrthogonalCorrectors 0; rhoMin 0.1; rhoMax 1.5; pRefCell 0; pRefValue 0; residualControl { p 1e-4; U 1e-4; e 1e-4; // possibly check turbulence fields "(k|epsilon|omega)" 1e-3; } } relaxationFactors { fields { p 0.5; rho 0.05; } equations { U 0.7; "(k|epsilon|omega)" 0.7; "(e|h)" 0.5; } } |
|
November 4, 2017, 04:38 |
|
#3 |
Member
giovanni
Join Date: Sep 2017
Posts: 50
Rep Power: 9 |
here instead the boundary conditionv(only P and U for the case with imposed pressure difference)
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 5.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class volScalarField; location "0"; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [1 -1 -2 0 0 0 0]; internalField uniform 101500; boundaryField { inlet { type totalPressure; U U; gamma 1.4; p0 uniform 101500; value uniform 101500; } piatto { type zeroGradient; } condotto { type zeroGradient; } guida { type zeroGradient; } valvole { type zeroGradient; } sedi { type zeroGradient; } testa { type zeroGradient; } outlet { type uniformFixedValue; uniformValue table ( (0 101500) (50 101000) (100 100500) (150 100000) (200 99500) //(50 99000) //(60 98500) //(70 98000) //(80 97500) //(90 97000) //(100 96500) //(110 96000) //(120 (90000)) //(130 (85000)) //(140 (81500)) ); } cilindro { type zeroGradient; } plenum { type zeroGradient; } } // ************************************************** *********************** // /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 5.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 (0 0 0); boundaryField { inlet { type pressureInletOutletVelocity; value uniform (0 0 0); U U; } piatto { type noSlip; } condotto { type noSlip; } guida { type noSlip; } valvole { type noSlip; } sedi { type noSlip; } testa { type noSlip; } outlet { type pressureNormalInletOutletVelocity; value uniform (0 0 0); phi phi; } cilindro { type noSlip; } plenum { type noSlip; } } // ************************************************** *********************** // |
|
November 7, 2017, 03:55 |
|
#4 |
Member
giovanni
Join Date: Sep 2017
Posts: 50
Rep Power: 9 |
hi!
could anyone help me? should i use a unsteady solver? maybe you can give me some input. thanks. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Error msg: In Analysis 'Flow Analysis 1': No domains have been defined. | spwater | CFX | 9 | October 11, 2022 23:00 |
compressible flow calculation error using rhoSimpleFoam solver | student4326 | OpenFOAM Running, Solving & CFD | 7 | November 2, 2015 12:34 |
Difference in flow distribution of single phase and multiphase analysis | shivasluzz | CFX | 0 | April 22, 2015 23:54 |
Compressible flow analysis | Sonu | Siemens | 3 | December 5, 2007 08:25 |
fluid flow fundas | ram | Main CFD Forum | 5 | June 17, 2000 22:31 |