|
[Sponsors] | |||||
|
|
|
#1 |
|
Member
Hugh Ingham
Join Date: Aug 2012
Posts: 35
Rep Power: 2 ![]() |
Hello all,
I am trying to simulate a supersonic turbulent free jet but am struggling to get a stable case running. I think, as is often the case, the problem may lie in the boundary conditions. Has anyone done a similar simulation that could perhaps advise me on appropriate boundary conditions? My mesh is effectively a 1/8th section of a converging diverging nozzle surrounded by ambient fluid (atmospheric air) Here are some images of my mesh: meshpic.jpg Foam mesh.jpg inlet is the small leftmost face (nozzle inlet) inlet 2 is the leftward facing face nozzle wall is the horizontal face above inlet freestream1 is the horizontal face just above the nozzle wall freestream 2 is the large horizontal face on top outlet is the rightward facing face two side boundaries are cyclic AMI My main concern is the outlet. Initially I defined just inlet, nozzle wall, cyclic boundaries and all other faces were outlet (inlet2, freestream1, freestream2 and outlet) but was unsure if it could handle multiple outlets. I am using the rhoPimpleFoam solver and below are my 0 files: FoamFile { version 2.0; format ascii; class volVectorField; location "5e-05"; object U; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 1 -1 0 0 0 0]; internalField uniform (2 0 0); boundaryField { inlet { type uniformFixedValue; uniformValue table ( (0 (10 0 0)) (0.08 (50 0 0)) (0.1 (50 0 0)) (0.3 (400 0 0)) ); } inlet2 { type uniformFixedValue; uniformValue table ( (0 (2 0 0)) (0.1 (2 0 0)) (0.4 (0 0 0)) ); } outlet { type pressureInletOutletVelocity; value uniform (2 0 0); } nozzlewall { type fixedValue; value uniform (0 0 0); } face1 { type cyclicAMI; } freestream1 { type slip; value uniform (0 0 0); } freestream2 { type slip; value uniform (0 0 0); } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volScalarField; location "5e-05"; object T; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 0 0 1 0 0 0]; internalField uniform 300; boundaryField { inlet { type totalTemperature; gamma 1.338; phi phi; psi psi; T0 uniform 973; value uniform 973; } inlet2 { type zeroGradient;//totalTemperature //gamma 1.338; //phi phi; //psi psi; //T0 uniform 300; } outlet { type inletOutletTotalTemperature; gamma 1.4; T0 uniform 300; value uniform 300; } nozzlewall { type fixedValue; value uniform 300; } face1 { type cyclicAMI; } freestream1 { type zeroGradient; } freestream2 { type zeroGradient; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volScalarField; location "5e-05"; object p; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [1 -1 -2 0 0 0 0]; internalField uniform 101325; boundaryField { inlet { type zeroGradient; } inlet2 { type zeroGradient; } outlet { type totalPressure; rho rho; psi none; gamma 1.4; p0 uniform 101325; value uniform 101325; } nozzlewall { type zeroGradient; } face1 { type cyclicAMI; } freestream1 { type zeroGradient; } freestream2 { type zeroGradient; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volScalarField; location "5e-05"; object muSgs; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [1 -1 -1 0 0 0 0]; internalField uniform 0; boundaryField { inlet { type calculated; value uniform 0; } inlet2 { type calculated; value uniform 0; } outlet { type calculated; value uniform 0; } nozzlewall { type muSgsUSpaldingWallFunction; Cmu 0.09; kappa 0.41; E 9.8; value uniform 0; } face1 { type cyclicAMI; } freestream1 { type calculated; value uniform 0; } freestream2 { type calculated; value uniform 0; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volScalarField; location "5e-05"; object k; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform 2e-05; boundaryField { inlet { type fixedValue; value uniform 2e-05; } inlet2 { type zeroGradient; } outlet { type inletOutlet; inletValue uniform 2e-05; value uniform 2e-05; } nozzlewall { type compressible::kqRWallFunction; value uniform 2e-05; } face1 { type cyclicAMI; } freestream1 { type zeroGradient; } freestream2 { type zeroGradient; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volTensorField; location "5e-05"; object B; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [0 2 -2 0 0 0 0]; internalField uniform (0 0 0 0 0 0 0 0 0); boundaryField { inlet { type fixedValue; value uniform (0 0 0 0 0 0 0 0 0); } inlet2 { type fixedValue; value uniform (0 0 0 0 0 0 0 0 0); } outlet { type inletOutlet; inletValue uniform (0 0 0 0 0 0 0 0 0); value uniform (0 0 0 0 0 0 0 0 0); } nozzlewall { type zeroGradient; } face1 { type cyclicAMI; } freestream1 { type zeroGradient; } freestream2 { type zeroGradient; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // FoamFile { version 2.0; format ascii; class volScalarField; location "5e-05"; object alphaSgs; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // dimensions [1 -1 -1 0 0 0 0]; internalField uniform 0; boundaryField { inlet { type calculated; value uniform 0; } inlet2 { type calculated; value uniform 0; } outlet { type calculated; value uniform 0; } nozzlewall { type alphaSgsWallFunction; Cmu 0.09; kappa 0.41; E 9.8; value uniform 0; } face1 { type cyclicAMI; } freestream1 { type calculated; value uniform 0; } freestream2 { type calculated; value uniform 0; } FaceGroup8 { type cyclicAMI; } } // ************************************************** *********************** // Any help would be greatly appreciated. Thankyou in advance
|
|
|
|
|
|
|
|
|
#2 |
|
Member
Hugh Ingham
Join Date: Aug 2012
Posts: 35
Rep Power: 2 ![]() |
Could anyone please help me with this problem? I still can't get a stable simulation to run.
Thanks |
|
|
|
|
|
|
|
|
#3 |
|
Senior Member
Karl-Johan Nogenmyr
Join Date: Mar 2009
Location: Lund
Posts: 183
Rep Power: 9 ![]() |
First of all, these kind of flows are quite tricky to calculate accurately. Normally, literature would suggest a density based runge kutta solver for this case. There is no such solver in official openfoam distribution. The closest you get is the rhoCentralFoam solver, but it is to my knowledge too dissipative for LES.
The rhoPimpleFoam solver is OK at low Mach number, though it can be stable for your case as well. You should however not trust shock prediction too much. You have not posted your whole case so I cannot say what is wrong directly, but it looks a bit strange to have zeroGradient on T and k on the inlet. You might try changing that. Else, closely monitoring all fields timestep by timestep might point out what is going wrong. K |
|
|
|
|
|
|
|
|
#4 |
|
Member
ville vuorinen
Join Date: Mar 2009
Posts: 56
Rep Power: 6 ![]() |
Hi,
I wrote such a density based RK4 LES solver, a picture of a supersonic jet is found in http://users.tkk.fi/~vavuorin/ Best, Ville |
|
|
|
|
|
|
|
|
#5 |
|
New Member
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 23
Rep Power: 6 ![]() |
Ville,
That's a great picture of a supersonic jet. The picture shows shock waves, acoustic waves and turbulent structures all at once. Can you give more detail of your method? Is it described in your submitted paper? Also, on the subject of the original question, the solution will be sensitive to reflections from the boundaries. A non-reflective boundary condition will be required to prevent non-physical waves disturbing the flow field. I have developed one such suitable boundary condition. Please see 'Modelling shock wave phenomena in over-expanded jets using OpenFOAM--P. L. Garlick', available at http://www.opensourcecfd.com/conference2010/en/proceedings.html The method solves the one-dimensional Euler equations at each boundary cell, allowing waves to pass out of the domain but not to enter. Paul. Last edited by pg22; November 8, 2012 at 10:40. |
|
|
|
|
|
|
|
|
#6 |
|
Member
ville vuorinen
Join Date: Mar 2009
Posts: 56
Rep Power: 6 ![]() |
Hi,
Could you send me the paper via email ville.vuorinen at aalto.fi ? The method I'm using is the explicit density based RK4 method. The convection terms are discretized by a new method called "Scale-Selective Discretization" http://www.sciencedirect.com/science...45793012003799 which provides artificial dissipation in the spirit of ILES but by focusing the dissipative effects truly only to the small scales via a filtering procedure. The bulk viscosity by Cook and Cabot is applied in the OF code I implemented to stabilize weak shocks and gradients. Additionally, I'm using a simple shock sensor to detect the normal shocks (Mach disk). At the normal shocks an additional (local) low-pass filtering of the solution is carried out for numerical stability. I don't need any non-reflecting BC's because the domain is very large and the mesh is very coarse at the boundaries. Actually, the whole injection system is closed and there is no inflow or outflow either. Inflow is modeled by actually meshing a large pressurized "bottle" from which a converging nozzle starts and enters the chamber. This is quite nice since a) this extra stage takes only <1% of all the cells and no approximate bcs are required b) more realism. No outflow bc is needed either since the domain a) is closed in reality (cylinder of a combustion engine) b) is very large. I will post more details in couple of days.. Best, Ville |
|
|
|
|
|
|
|
|
#7 |
|
New Member
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 23
Rep Power: 6 ![]() |
Sure, the paper is on its way.
Paul. |
|
|
|
|
|
|
|
|
#8 |
|
New Member
maharba
Join Date: Jun 2011
Posts: 4
Rep Power: 3 ![]() |
Check this. You should use a open source code; it always works.
http://cfdosc.wordpress.com/2012/07/...upersonic-jet/ |
|
|
|
|
|
|
|
|
#9 |
|
Member
ville vuorinen
Join Date: Mar 2009
Posts: 56
Rep Power: 6 ![]() |
Hi,
as mentioned, I implemented the density based RK4 solver with OpenFOAM. Our paper (based on the OpenFOAM solver) on "Large-Eddy Simulation of Highly Underexpanded Transient Jets" will appear in Physics of Fluids soon. If you want a preprint please contact me ville.vuorinen@aalto.fi . Best, Ville |
|
|
|
|
|
|
|
|
#10 |
|
New Member
Arthur Piquet
Join Date: Mar 2013
Posts: 7
Rep Power: 2 ![]() |
hi everybody,
I'm trying to do a LES freestream Jet with rhoCentralFoam for my internship. I found some good results for RANS model compared to some PIV data and now I want to compare with LES simulation. I found some strange behavior with my first simulation... here's the contour plot for velocity for k-omega SST RANS ![]() and here's the contour plot for oneEq LES ![]() It's like there is no turbulent viscosity at all... The solution is static through the time, that's something we don't expect for LES case. My flow is controlled by pressure ratio between the inlet and the outlet, my Mach number is around 0.5 at the throat. Does anybody already try a LES case with rhoCentralFoam ? Does that come from the inlet BCs (maybe turbulentInlet instead of totalPressureInlet) ? ps : I put the 2 folder (LES/RANS) with the solution. https://drive.google.com/folderview?...0k&usp=sharing Thanks all |
|
|
|
|
|
![]() |
| Tags |
| boundary conditons, outlet boundary condition |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Supersonic turbulent free jet LES | martyn88 | OpenFOAM Running, Solving & CFD | 5 | March 18, 2013 02:17 |
| Re: supersonic free jet nonphysical solution?? | Patti | Phoenics | 0 | October 23, 2008 21:12 |
| Supersonic Jet Flows | Danny Tan | FLUENT | 0 | November 30, 2001 21:01 |
| Asymmetric water free jet study | Norberto Parreira | Main CFD Forum | 7 | June 25, 2001 08:23 |
| Turbulent model of supersonic free jet | GAZZAH Mohamed Hichem | Main CFD Forum | 2 | August 18, 2000 15:43 |