Link to my case: https://www.dropbox.com/sh/s555kq1drmm0c2j/pgpJnsuMca
screenshot of kl: https://photos-4.dropbox.com/si/shg_...=1024x768,32bf Should there be a spike in kl as it's leaving the domain? nut shows similar behavior, but the kt and omega fields seem to be fine. The only reason I'm questioning these results is because the lift coefficient is lower than published. The flow fields behave similarly at 11 and 9 degrees angle of attack, but the lift coefficient is much closer. All information is in the case folder I posted - Does anyone see where my error is? Thanks |
Quote:
|
I'm getting more convinced that something is wrong - having paraview smooth over the results was misleading. When I have paraview display the values for each volume, there are two cells at the extremities of the domain where nut and kl are significantly greater than anywhere else in the domain. Walters suggests boundary conditions for kl, kt, and omega in his paper, but no guidance on nut - so I set it to zeroGradient at the wall and inletOutlet at the farfield with inletValue equal to
CmuStd*kt/omega based on the cfd-online wiki article on farfield boundary conditions. I'm going to try fixedValue instead of inletOutlet. I'll update when the run finishes. |
Using the fixedValue boundary condition for nut seemed to fix things.
|
plz help me
Hi,Dear foamers. 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<incompressible::RASModel> 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::volScalarField> Foam::phaseChangeTwoPhaseMixtures::SchnerrSauer::p 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( <<k>> 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::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::phaseChangeTwoPhaseMixtures::SchnerrSauer::p 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. |
Hi, I think, maybe you need not add
#include "RASModel.H" However, maybe you need to make code find out k() by const volScalarField &k=U_.db().lookupObject<volScalarField>("k"); namely Foam::tmp<Foam::volScalarField> Foam::phaseChangeTwoPhaseMixtures::SchnerrSauer::p Coeff ( const volScalarField& p ) const { volScalarField limitedAlpha1(min(max(alpha1_, scalar(0)), scalar(1))); volScalarField rho ( limitedAlpha1*rho1() + (scalar(1) - limitedAlpha1)*rho2() ); return const volScalarField &k=U_.db().lookupObject<volScalarField>("k"); (3*rho1()*rho2())*sqrt(2/(3*rho1()))*k() *rRb(limitedAlpha1)/(rho*sqrt(mag(p - pSat()) + 0.01*pSat())); |
an other question
Hi Dear Sandy Lee.
Thanks alot for your answer.its wmake Successfully. but How can I Understand that this k is the same with k(kinetic turbulence energy)??? Because I replase another word in this : const volScalarField &M=U_.db().lookupObject<volScalarField>("M") but not error occured!!!!!!?????? |
Hi, I just give you an example, however, you still need to find what is the correct expression of kinetic turbulence energy in RASModel.H or RASModel.C ... :p
|
Thanks
Thanks for your answer sandy!!!your answer is true !!!:)
Thank you so much... |
Hi
Hi again dear Sandi.
If you Let me,I request you ,answer me an other question???:) I promise this is Final question:I want to add surface tension(sigma) in one solver,for this reason I added: #include ''fvCFD.H'' #include ''interfaceProperties.H'' because sigma defined in <interfaceProperties.H> . location this file(interfaceProperties) in directory:src->interfaceProperties . and then added next line for Definition this parameter: fvc::interpolate(interface.sigma()) but I seen again this error: 'interface' was not declared in this scope!!! Thank you very much:o |
Hi foamers
I wanna simulate flow over S809 airfoil using new turbulace model nominated "kklOmega" for 0 to 24 angles of attacks to predict stall and post stall. the solver that i used, is pimpleFoam, but the solution diverged despite i applied very low time step. would you please help me how to apply this transitoin model? Best/ Rasoul |
dear rasoul
Hi, my dear friend.
Courant Number=c.delta(t)/delta(x) and it must be < 1. Sometimes apply very low time step is not true. I guess if you Get larger mesh your solution is Convergent.:) Good Luck |
hello dear vahid
1-it is abvious that C Number must be below 1 even 0.2. this is applied by default. 2-time step is controlled using adjustableRunTime utility. 3-if the coarse mesh has been used then must be expected that the result is'nt accurate. also i think that need to supply fine mesh to predict low-frequency velocity fluctuations in the boundary layer. BTW i used neither coarse nor fine mesh and also several meshes are applied for this subject. but the convergency of the solution is still a challenge!!! tnx/Rasoul |
Hallo Foamers,
i have exactely the same vahid's problem: Quote:
I have done a lot of trials without any sucssefull compiling! Can anyone help me?? Best Regards Marco |
I think probably I can answer this question. Whether it is gonna be bypass or natural transistion depends on the turbulence level (or turbulence intensity to be more precise) of the free stream flow. When the turbulence intensity is low, the laminar flow goes through the Tollmien-Schlichting waves and eventually developes into fully turbulent flow, and this is the natural transition. When the turbulence level is high, the TS stage will be bypassed before the flow becomes fully turbulent, and the so-called bypass transistion. This is the understanding I gained when I did flow control to suppress transistion caused by free stream disturbance.
But please feel free to correct me if anyone has a more correct understanding. |
Dear all,
Thank you for all the suggestions. Very great thread. Can you please help me setup my first low-Re turbulence case? When I use kkLOmega model i get the following error: Quote:
None of the above links works. Thank you, Mojtaba |
Dear Titus,
Did you have good results for 3D transition simulation with kklomega model? I am also doing 3D blades simulation with this model, but have converged problem. laminar kinematic energy always crashed. Can you give me some hint ? Best regards, Ye |
Dear wei,
I know this is quite old thread, but currently I am also using this kkLOmega transition model and hope maybe you can give me some help based on your experience. Now I am using steady solver 'simpleFoam' to simulate. I have tried this model for external flow simulation for 2D airfoil and it works good, I would say. When I turn to 3D twisted blade, the solution always diverges after several iterations. Firstly kl becomes quite large then kt have the same trend. I have tried several div Schemes but they do not help. Do you think is it to limit kl and kt between some ranges? for example use limitedVanLeer 0 1 for div scheme? I have tried that, but also failed. Anyway, any suggestions will be welcomed !! Thank you Best regards, Ye |
Best regards,
Ye |
Anyone,
could please share a simple test case about this turbulence model or could revise me test case? https://drive.google.com/folderview?...VE&usp=sharing I want to simulate a 2D airfoil using simpleFoam. The mesh is y+ around 1 so no wall functions are needed. U=50m/s TI=1% lenght scale=0.2m I have used GroovyBC to impose a fixedValue if flow comes in and zeroGradient if the flow goes out. Without turbulence of using SA, all works correctly but not with kklomega. k=kt=0.375 for internal Field k=kt=0.375 if inlet and zeroGradient if outlet k=kt=0 for wall kl=0 for internal Field, patches and wall omega=zeroGradient at wall omega=3 for inlet and zeroGradient for outlet Thank you very much UPDATED: Using upwind no problem it run ( not so good results), using a linear scheme, it cracks. |
Joe ferrari,
In your thesis, you stated that nut at wall should be zeroGradient. I also noticed that internal field is initialized to "zero". I am having a similar problem like you ( but using SimpleFoam) but I can not solve it changin nut to fixedValue. kl at the wake of the airfoil is very high and at the end, the solution diverges. |
Dear Mojtab,
Do you set the omega boundary condition at the wall the same as the komega SST turbulence model? I also made this mistake. Change it to zeroGradient, and should be fine. Best regards Ye |
Quote:
Yes, that was the problem. :) Thank you for your kind response. With all the best wishes. Mojtaba |
which airfoil
Quote:
Hi, I was wondering if you can provide me some more information on the airfoil test case you were running referred in this post. What was the geometry?, Inlet conditions. Thanks in advanced |
New model
After 8 years, there is a new version (or new model) of the k-kl-omega model.
There are a few problems with the k-kl-omega model in the farfield. One of them is the growth of Laminar Kinetic energy when separation occurs. Lopez and Walters have a paper (have not been published yet) correcting this issue: Maurin Lopez. D. K. Walters. “A recommended correction to the k-kl-omega transition sensitive eddy-viscosity model”. Journal of Fluid Engineering. This correction has to be made to the 2008 k-kl-omega model from now on. Now, Lopez and Walters also developed a new transitional model (k-omega-v2) as an alternative to the k-kl-omega one. This new model has more capabilities (it is more reliable) than the k-kl-omega model, especially in the farfield computations. Fortunately the paper for this new model is already publish. Maurin Lopez. D. K. Walters. “Prediction of transitional and fully turbulent free shear flows using an alternative to the laminar kinetic energy approach”. Journal of Turbulence, Vol 17, Iss. 3, 2016. If you see the papers, you will immediately see how the k-kl-omega model is not good for free shear flows, and how the new model corrects all those issues. From now on, k-kl-omega users have to start using the new k-omega-v2 model. Hope this helps |
All times are GMT -4. The time now is 22:02. |