unsteady LES pisoFoam questions

 User Name Remember Me Password
 Register Blogs Members List Search Today's Posts Mark Forums Read

 April 21, 2012, 08:03 unsteady LES pisoFoam questions #1 New Member   Garrison, Liang Join Date: Feb 2012 Posts: 15 Rep Power: 14 Hi everyone! I am a graduate in CFD with little experience... I use pisoFoam to do a DES(LES). It's certainly an unsteady three dimension case. I try to use simpleFoam to get a initial state of the flow and then change the simulation to a LES one. When running LES, I find the Initial residual of Ux and Uz is quite small and it didn't iterate at all, I don't think that's right, but the p still interate. does that mean I get a steady flow? Or is that because the grid I use is too coarse? My deltaT=1e-6, Uref=8m/s, and Re=2e5. One more question.. how do people usually do to check if the grid is good enough for LES? I paste some detail of my scheme blow, maybe someone can tell me whether the scheme I'm using is to dissipate for LES. and I also put what the monitor show... ddtSchemes { default backward; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; } divSchemes { default none; div(phi,U) Gauss filteredLinear; div(phi,B) Gauss limitedLinear 1; div(phi,R) Gauss limitedLinear 1; div(phi,nuTilda) Gauss limitedLinear 1; div(B) Gauss linear; div(R) Gauss linear; div((nuEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; laplacian(nuEff,U) Gauss linear corrected; laplacian((1|A(U)),p) Gauss linear corrected; laplacian(DBEff,B) Gauss linear corrected; laplacian(DnuTildaEff,nuTilda) Gauss linear corrected; } interpolationSchemes { default linear; interpolate(U) linear; } snGradSchemes { default corrected; } fluxRequired { default no; p ; } Time = 0.030544 Courant Number mean: 0.000694429 max: 1.20379 DILUPBiCG: Solving for Ux, Initial residual = 2.18816e-07, Final residual = 2.18816e-07, No Iterations 0 DILUPBiCG: Solving for Uy, Initial residual = 1.07832e-06, Final residual = 1.05828e-11, No Iterations 1 DILUPBiCG: Solving for Uz, Initial residual = 7.56565e-07, Final residual = 7.56565e-07, No Iterations 0 GAMGPCG: Solving for p, Initial residual = 0.000125884, Final residual = 5.7209e-06, No Iterations 3 time step continuity errors : sum local = 7.56596e-15, global = -2.91722e-16, cumulative = -5.83468e-13 GAMGPCG: Solving for p, Initial residual = 3.95052e-05, Final residual = 2.33747e-06, No Iterations 1 time step continuity errors : sum local = 3.09128e-15, global = -3.06279e-18, cumulative = -5.83471e-13 smoothSolver: Solving for nuTilda, Initial residual = 5.36636e-07, Final residual = 1.36181e-08, No Iterations 1 ExecutionTime = 15477.9 s ClockTime = 15525 s Calculating averages forceCoeffs output: Cd = 0.0651411 Cl = 0.488558 Cm = -0.382946 Thanks in advance. Best Regards Garrison

April 22, 2012, 02:13
#2
Senior Member

Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,912
Rep Power: 36
Quote:
 Originally Posted by garrison Hi everyone! I am a graduate in CFD with little experience... I use pisoFoam to do a DES(LES). It's certainly an unsteady three dimension case. I try to use simpleFoam to get a initial state of the flow and then change the simulation to a LES one.
I would recommend to start from a perturbed solution, rather than from a steady-state solution, or it will take an extremely long time for structures to develop (assuming they will).

Quote:
 One more question.. how do people usually do to check if the grid is good enough for LES?
The idea is that the filter size should be in the inertial subrange of the spectrum, so that you can make the assumption SGS viscosity. In other words, you have to resolve all the non-isotropic scales. If you check the literature (S. Pope book for example), there are formulae to obtain estimates.

The numerics looks fine.

Best,
__________________
Alberto Passalacqua

GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541)
OpenQBMM - An open-source implementation of quadrature-based moment methods.

To obtain more accurate answers, please specify the version of OpenFOAM you are using.

April 22, 2012, 06:24
#3
New Member

Garrison, Liang
Join Date: Feb 2012
Posts: 15
Rep Power: 14
Thank you Alberto!

Quote:
 I would recommend to start from a perturbed solution, rather than from a steady-state solution, or it will take an extremely long time for structures to develop (assuming they will).
"a perturbed solution", can you tell me which solver shall I use to get a initial state?
and if I start with a steady-state solution, you mean the LES/DES will take an extremely long time to develop the structures?

Best Regards

 April 23, 2012, 11:26 #4 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,912 Rep Power: 36 Hi Garrison, there are various approaches in the literature to generate a perturbed flow field that can be used as initial condition. Unfortunately these apply to relatively simple flows. If you have a complex geometry, the easy way is to initialize the velocity field with a random field based on your mean velocity and fluctuations (which change locally). Hopefully this will help the flow develop quickly. A more sophisticated alternative is to use synthetic turbulence at inlet BC's, if you have time to implement it into your code. About your second question: yes, generating a fully developed turbulent flow with LES can be very time consuming. That's why it is advisable to start from a flow already containing turbulent structures (you can use the flow field obtained from previous simulations). Best, __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541) OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 April 23, 2012, 22:42 #5 New Member   Garrison, Liang Join Date: Feb 2012 Posts: 15 Rep Power: 14 Once again thank you Alberto. So can I use the turbulentInlet as the inlet B.C., can it function as the synthetic turbulence B.C.? In turbulentInlet B.C., One can give the velocity a fluctuation I think, type turbulentInlet; fluctuationScale (0.01 0.01 0); referenceField uniform (8 0 0); value uniform (8 0 0); Best Regards

 April 23, 2012, 22:46 #6 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,912 Rep Power: 36 Unfortunately turbulentInlet only adds noise to the mean value. It might help (in other words, try), but it is not a true synthetic turbulence generator, where the procedure aims at reproducing at least some of the features of the turbulent flow. To my knowledge, there is no synthetic turbulent BC available in OpenFOAM, however some user on this forum implemented some of them. Maybe a search will give you more information. Best, __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541) OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 April 23, 2012, 22:52 #7 New Member   Garrison, Liang Join Date: Feb 2012 Posts: 15 Rep Power: 14 Thank you Alberto, you really helped me lot. I'll search more.

 July 24, 2012, 10:33 Albeto plz help me #8 Member   vahid Join Date: Feb 2012 Location: Mashhad-Iran Posts: 80 Rep Power: 13 Hi,Alberto. I'm working with openFoam 2.0.1,and have a problem with solver (interPhaseChangeFoam) in multiphase solvers. my friends tell me, you can help me. I have add (turbulence kinetic Energy or k ) in a part of this solver. first: added: -I\$(LIB_SRC)/turbulenceModels \ -I\$(LIB_SRC)/turbulenceModels/incompressible/RAS/RASModel \ in option. and then: added //.................................................. .....changed // Construct incompressible turbulence model autoPtr turbulence ( incompressible::RASModel::New(U, phi, twoPhaseProperties()) ); //.................................................. .....changed in creatField. and then: added #include "RASModel.H" and: //.................................................. ............. volScalarField turbKinEnergy = turbulence().k(); //turbKinEnergy = turbulence().k(); volScalarField turbDisEnergy = turbulence().epsilon(); in this and turbkinEnergy=k //.................................................. ............. in myinterPhaseChangeFoam.c and wmake is ok!!! but I want in this solver in directory: /run/myinterPhaseChangeFoam/phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.c I added #include "RASModel.H" in it and: Foam::tmp Foam:haseChangeTwoPhaseMixtures::SchnerrSauer: Coeff ( const volScalarField& p ) const { volScalarField limitedAlpha1(min(max(alpha1_, scalar(0)), scalar(1))); volScalarField rho ( limitedAlpha1*rho1() + (scalar(1) - limitedAlpha1)*rho2() ); return //......I want to change it( <> turbulence multiple in it): (3*rho1()*rho2())*sqrt(2/(3*rho1()))*k() *rRb(limitedAlpha1)/(rho*sqrt(mag(p - pSat()) + 0.01*pSat())); //.................................................. ...... } dont successful wmake, and seen(was not declared ): I/opt/openfoam201/src/OSspecific/POSIX/lnInclude -fPIC -c \$SOURCE -o Make/linux64GccDPOpt/SchnerrSauer.o phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.C: In member function â€کFoam::tmp > Foam:haseChangeTwoPhaseMixtures::SchnerrSauer: Coeff(const Foam::volScalarField&) constâ€™: phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.C:113: error: k() was not declared in this scope make: *** [Make/linux64GccDPOpt/SchnerrSauer.o] Error 1 please help me alberto.

 July 24, 2012, 22:45 #9 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,912 Rep Power: 36 The interphaseChangeFoam solver has generic turbulent implementation by itself in OpenFOAM 2.1.x. Use the latest version. P.S. Please do not send personal emails to ask technical questions you already posted on the forum. __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541) OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 July 25, 2012, 10:33 plz give me your interPhaseChangeFoam file #10 Member   vahid Join Date: Feb 2012 Location: Mashhad-Iran Posts: 80 Rep Power: 13 hi alberto.Thanks for your answer. I dont have good internet,please give me interPhaseChangeFoam file from your openFoam 2.1.x to me. Thanks a lot

 July 25, 2012, 11:26 #11 Senior Member   Alberto Passalacqua Join Date: Mar 2009 Location: Ames, Iowa, United States Posts: 1,912 Rep Power: 36 You need the whole OpenFOAM 2.1.x to be able to use the solver. Probably the best way for you to get it is to use the git repository. __________________ Alberto Passalacqua GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541) OpenQBMM - An open-source implementation of quadrature-based moment methods. To obtain more accurate answers, please specify the version of OpenFOAM you are using.

 July 28, 2012, 01:11 Plz help me!! #12 Member   vahid Join Date: Feb 2012 Location: Mashhad-Iran Posts: 80 Rep Power: 13 Hi Dear Alberto. I used openFoam 2.1.x for solver interPhaseChangeFoam but my problem is not ok!!! my prob is: I have add (turbulence kinetic Energy or k ) in a part of this solver. I want in this solver in directory: /run/myinterPhaseChangeFoam/phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.c I added #include "RASModel.H" in it and: Foam::tmp Foam:haseChangeTwoPhaseMixtures::SchnerrSauer: Coeff ( const volScalarField& p ) const { volScalarField limitedAlpha1(min(max(alpha1_, scalar(0)), scalar(1))); volScalarField rho ( limitedAlpha1*rho1() + (scalar(1) - limitedAlpha1)*rho2() ); return //......I want to change it( <> turbulence multiple in it): (3*rho1()*rho2())*sqrt(2/(3*rho1()))*k() *rRb(limitedAlpha1)/(rho*sqrt(mag(p - pSat()) + 0.01*pSat())); //.................................................. ...... } dont successful wmake, and seen(was not declared ): I/opt/openfoam201/src/OSspecific/POSIX/lnInclude -fPIC -c \$SOURCE -o Make/linux64GccDPOpt/SchnerrSauer.o phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.C: In member function â€کFoam::tmp > Foam:haseChangeTwoPhaseMixtures::SchnerrSauer: Coeff(const Foam::volScalarField&) constâ€™: phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.C:113: error: k() was not declared in this scope make: *** [Make/linux64GccDPOpt/SchnerrSauer.o] Error 1 please help me alberto.

July 28, 2012, 01:15
#13
Senior Member

Alberto Passalacqua
Join Date: Mar 2009
Location: Ames, Iowa, United States
Posts: 1,912
Rep Power: 36
Quote:
 Originally Posted by vahid.najafi Hi Dear Alberto. I used openFoam 2.1.x for solver interPhaseChangeFoam but my problem is not ok!!! my prob is: I have add (turbulence kinetic Energy or k ) in a part of this solver.
You do not need to add the equation for the turbulent kinetic energy in the solver provided with OpenFOAM 2.1.x, since it is already there. Simply turn the turbulence model on in the turbulenceProperties dictionary, and configure the case as needed, adding k and epsilon fields to the 0 folder.

Note that #include "turbulenceModel.H" is already in the code :-)

Best,
__________________
Alberto Passalacqua

GeekoCFD - A free distribution based on openSUSE 64 bit with CFD tools, including OpenFOAM. Available as in both physical and virtual formats (current status: http://albertopassalacqua.com/?p=1541)
OpenQBMM - An open-source implementation of quadrature-based moment methods.

To obtain more accurate answers, please specify the version of OpenFOAM you are using.

Last edited by alberto; July 28, 2012 at 01:16. Reason: Added comment

 August 17, 2012, 20:12 #14 Member   Join Date: Jun 2011 Posts: 80 Rep Power: 14 Hi all!! I see you have a solid background in OpenFOAM and turbulent cases, so I hope you coulp hand me on. The point is I'm stucked with a flow past a bluff body (ahmed model) but I don't get an unsteady wake using pisoFoam. I have a structured mesh with a finer region in the near wake zone, CFL<0.5, keRNG model, etc... I'm running pisoFoam from a simpleFoam solution, is this the problem? What's the way to introduce a pertubartion to break the symmetry or something like that? I attach my fvSchemes... /*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 1.6 | | \\ / A nd | Web: http://www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default backward;//CrankNicholson 0.5;//steadyState; } gradSchemes { default Gauss linear; grad(p) Gauss linear; grad(U) Gauss linear; // grad(U) cellLimited Gauss linear 1; } divSchemes { default none; div(phi,U) Gauss limitedLinearV 1;//vanLeerV;//linearUpwindV Gauss linear; div(phi,k) Gauss limitedLinear 1;//upwind; div(phi,epsilon) Gauss limitedLinear 1;//upwind; div((nuEff*dev(grad(U).T()))) 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(DnuTildaEff) Gauss linear corrected; laplacian(1,p) Gauss linear corrected; // default Gauss linear corrected; // default Gauss linear limited 0.5; // default Gauss linear limited 0.333; } interpolationSchemes { default linear; interpolate(U) linear; } snGradSchemes { default corrected; } fluxRequired { default no; p; } Thanks!! Best,

 Thread Tools Search this Thread Search this Thread: Advanced Search Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are Off Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post dshawul Main CFD Forum 0 October 4, 2010 10:56 A.Devesa OpenFOAM Running, Solving & CFD 3 July 26, 2010 08:35 andi FLUENT 0 April 20, 2004 03:50 Bin Li Main CFD Forum 2 February 20, 2004 09:58 Flav FLUENT 5 December 13, 1999 03:11

All times are GMT -4. The time now is 05:25.

 Contact Us - CFD Online - Privacy Statement - Top