|
[Sponsors] |
ERCOFTAC Centrifugal Pump with kOmegaSST Model |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 7, 2012, 09:48 |
ERCOFTAC Centrifugal Pump with kOmegaSST Model
|
#1 |
New Member
Marcel Günter
Join Date: Mar 2012
Location: Stuttgart, Germany
Posts: 20
Rep Power: 14 |
Hi everyone,
I recently got the ERCOFTAC Centrifugal Pump Validation Test Case to run in OF 2.1.0. Originally this Case uses MRFSimpleFoam and the kEpsilon Turbulence Model. More Info on the Case here. Now I want to run the same Case using the kOmegaSST Model. Unfortunately I did not yet succeed. The Computation always crashes pretty quickly after about 4 or 5 Iterations. With the Help of http://turbmodels.larc.nasa.gov/sst.html I assembled the following Boundary Conditions: (though I'm not really sure if they're correct) INLET: k: fixedValue 0.48735 ... , with and ) nut: calculated 0 omega: fixedValue 4873.5 ... with and p: zeroGradient U: surfaceNormalFixedValue -11.4 m/s OUTLET: k: zeroGradient nut: calculated 0 omega: zeroGradient p: fixedValue 0 U: zeroGradient ROTOR and STATOR: k: kqRWallFunction 0 ... at Wall (right?) nut: nutkWallFunction 0 omega: omegaWallFunction 12500 ... with . (I'm not really sure what is supposed to be. But since I've seen pretty small values being used for it, I assumed it to be the width of the celllayer next to the wall, which would be around in my case. Please correct me if I'm wrong!!!) p: zeroGradient U: fixedValue 0 INTERNAL FIELD: k: 3e-7 nut: 0 omega: 100 p: 0 U: 0 FVSCHEMES: Code:
ddtSchemes { default steadyState; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; } divSchemes { default none; div(phi,U) Gauss linearUpwind Gauss; div(phi,k) Gauss upwind; div(phi,omega) Gauss upwind; div((nuEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; interpolate(U) linear; } snGradSchemes { default corrected; } fluxRequired { default no; p ; } Code:
solvers { p { solver GAMG; tolerance 1e-7; relTol 0.1; smoother GaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration on; agglomerator faceAreaPair; nCellsInCoarsestLevel 10; mergeLevels 1; } "(U|k|omega)" { solver smoothSolver; smoother GaussSeidel; nSweeps 1; tolerance 1e-08; relTol 0.1; } } SIMPLE { nNonOrthogonalCorrectors 0; } } relaxationFactors { fields { p 0.3; } equations { U 0.7; k 0.7; "omega.*" 0.7; } } cache { grad(U); } I already tried playing around with the Relaxation Factors, BCs, etc. No Success yet, any ideas? Any Help would be appreciated! |
|
November 9, 2012, 10:09 |
|
#2 |
New Member
Marcel Günter
Join Date: Mar 2012
Location: Stuttgart, Germany
Posts: 20
Rep Power: 14 |
Well, I guess that was a lesson I won't forget so soon...
if you look closely at my fvSolutions you see that I have an extra closed curly bracket after the SIMPLE-dictionary. This caused OpenFOAM to ignore the Relaxation Factors completely! OF can be a real bitch sometimes! I hope this thread can help someone and prevent him from going crazy about why his simulations won't work. ^^ Regards, Marcel |
|
November 26, 2012, 11:42 |
|
#3 |
Member
Dogan
Join Date: Nov 2012
Location: Bochum/Germany
Posts: 42
Rep Power: 14 |
Hello Marcel,
in your previous post, you wrote that you are using OpenFOAM 2.1.0., and you wanted to run ERCOFTAC centrifugal pump test case. I would like to ask you whether you managed to run it with this version of O.F.. Since i know (if i am not wrong), the ERCOFTAC centrifugal pump test case requires GGI algorithm, and only O.F. extended version has this algorithm. I am new in using O.F., and i am also trying to run ERCOFTAC test case, but until now, i am unable to do it, because i don't have the extended version of O.F. so if you managed to run it in any case, can you please let me know how you did it? thank you very much Dogan |
|
November 26, 2012, 12:57 |
|
#4 |
New Member
Marcel Günter
Join Date: Mar 2012
Location: Stuttgart, Germany
Posts: 20
Rep Power: 14 |
openfoam 2.1.x has the AMI interface implemented which does pretty much the same as the GGI interface. so no need for a dev- or ext-version. look at the mixervesselAMI2D pimpleDyMFoam-tutorial or here for details.
here are my settings for the steady-state case: PolyMesh / Boundary File Code:
7 ( INLET { type patch; nFaces 434; startFace 184170; } BLADE_ROT { type wall; nFaces 1743; startFace 184604; } HUB_SHROUD { type empty; nFaces 187772; startFace 186347; } AMI_INT { type cyclicAMI; nFaces 707; startFace 374119; matchTolerance 0.0001; neighbourPatch AMI_EXT; transform noOrdering; } AMI_EXT { type cyclicAMI; nFaces 756; startFace 374826; matchTolerance 0.0001; neighbourPatch AMI_INT; transform noOrdering; } OUTLET { type patch; nFaces 804; startFace 375582; } BLADE_STAT { type wall; nFaces 2760; startFace 376386; } ) epsilon: Code:
internalField uniform 0.1; boundaryField { INLET { type fixedValue; value uniform 138.342; } BLADE_ROT { type epsilonWallFunction; value uniform 0; } HUB_SHROUD { type empty; } OUTLET { type zeroGradient; } BLADE_STAT { type epsilonWallFunction; value uniform 0; } AMI_INT { type cyclicAMI; value $internalField; } AMI_EXT { type cyclicAMI; value $internalField; } } Code:
internalField uniform 0.1; boundaryField { INLET { type fixedValue; value uniform 0.48735; } BLADE_ROT { type kqRWallFunction; value uniform 0; } HUB_SHROUD { type empty; } OUTLET { type zeroGradient; } BLADE_STAT { type kqRWallFunction; value uniform 0; } AMI_INT { type cyclicAMI; value $internalField; } AMI_EXT { type cyclicAMI; value $internalField; } } Code:
internalField uniform 0; boundaryField { INLET { type calculated; value uniform 0; } BLADE_ROT { type nutkWallFunction; value uniform 0; } HUB_SHROUD { type empty; } OUTLET { type calculated; value uniform 0; } BLADE_STAT { type nutkWallFunction; value uniform 0; } AMI_INT { type cyclicAMI; value $internalField; } AMI_EXT { type cyclicAMI; value $internalField; } } Code:
internalField uniform 0; boundaryField { INLET { type zeroGradient; } OUTLET { type fixedValue; value uniform 0; } BLADE_ROT { type zeroGradient; } BLADE_STAT { type zeroGradient; } HUB_SHROUD { type empty; } AMI_INT { type cyclicAMI; value $internalField; } AMI_EXT { type cyclicAMI; value $internalField; } } Code:
internalField uniform (0 0 0); boundaryField { INLET { type surfaceNormalFixedValue; refValue uniform -11.4; } OUTLET { type zeroGradient; } BLADE_ROT { type fixedValue; value uniform (0 0 0); } BLADE_STAT { type fixedValue; value uniform (0 0 0); } HUB_SHROUD { type empty; } AMI_INT { type cyclicAMI; value $internalField; } AMI_EXT { type cyclicAMI; value $internalField; } } Code:
ddtSchemes { default steadyState; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; } divSchemes { default none; div(phi,U) Gauss linearUpwind Gauss; div(phi,k) Gauss upwind; div(phi,epsilon) Gauss upwind; div(phi,R) Gauss upwind; div(R) Gauss linear; div(phi,nuTilda) Gauss linear; div((nuEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { default none; laplacian(nuEff,U) Gauss linear corrected; laplacian((1|A(U)),p) Gauss linear corrected; laplacian(DkEff,k) Gauss linear corrected; laplacian(DepsilonEff,epsilon) Gauss linear corrected; laplacian(DREff,R) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; } interpolationSchemes { default linear; interpolate(U) linear; } snGradSchemes { default corrected; } fluxRequired { default no; p ; } Code:
solvers { p { solver GAMG; smoother GaussSeidel; cacheAgglomeration true; nCellsInCoarsestLevel 20; agglomerator faceAreaPair; mergeLevels 1; tolerance 1e-08; relTol 0.05; } "(U|k|epsilon)" { solver smoothSolver; smoother GaussSeidel; nSweeps 2; tolerance 1e-07; relTol 0.1; } } SIMPLE { nNonOrthogonalCorrectors 0; } relaxationFactors { fields { p 0.3; } equations { U 0.7; k 0.7; "epsilon.*" 0.7; } } cache { grad(U); } - marcel |
|
March 13, 2013, 11:49 |
Centrifugal pump with MRFSimpleFoam
|
#5 |
New Member
Join Date: Mar 2013
Posts: 2
Rep Power: 0 |
Hello everybody,
I´m new using OpenFOAM and I´m really looking forward to study a case of a centrifugal pump solved with MRFSimpleFoam. Does anybody have a case already done where I can learn how to run the simulation? Thank you very much. Remo |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Use of k-epsilon and k-omega Models | Jade M | Main CFD Forum | 40 | January 27, 2023 08:18 |
Blood Damage Modelling via Particle Tracking in a Centrifugal Heart Pump | scatman | CFX | 7 | January 8, 2018 01:59 |
flatplate Turbulent BL flow, OF, kOmegaSST model | nikesh | OpenFOAM Post-Processing | 0 | October 16, 2012 05:43 |
centrifugal pump, advice required | amir00251 | Main CFD Forum | 1 | August 20, 2012 13:34 |
stator-rotor interaction in the centrifugal pump | G.H.Lee | Main CFD Forum | 4 | May 25, 1999 08:33 |