|
[Sponsors] |
Cavitation around NACA hydrofoil using interPhaseChangeFoam |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
March 6, 2015, 06:30 |
Cavitation around NACA hydrofoil using interPhaseChangeFoam
|
#1 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hello!
I would like to simulate cavitation around NACA hydrofoil using interPhaseChangeFoam and realizable k-eps model of turbulence. Unfortunately, experiment and numerical results does not match. In case of the numerical results, the cavitation cloud is much more longer than in reality. The volume of the cloud is transient, on the other hand there is no significant separation during the period of the cavitation cloud development. I'm still quite new in openFoam and this is my first multiphase simulation, therefore I'm not very familiar with numerical schemes. The dictionaries are attached to the message. I will appriciate any advices. Thank you very much fvSolution Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.2 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { alphawater { maxUnboundedness 1; CoCoeff 0.2; maxIter 100; minIter 3; nLimiterIter 10; solver PBiCG; preconditioner DILU; tolerance 1e-8; relTol 0; }; "(U|k|epsilon)" { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; }; "(U|k|epsilon)Final" { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; }; p_rgh { solver GAMG; tolerance 1e-8; relTol 0.1; smoother DICGaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; maxIter 100; minIter 5; }; pcorr { $p_rgh; relTol 0; }; p_rghFinal { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-6; relTol 0; nVcycles 2; smoother DICGaussSeidel; nPreSweeps 0; nPostSweeps 2; nFinestSweeps 2; cacheAgglomeration false; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; }; tolerance 1e-7; relTol 0; maxIter 50; }; } PIMPLE { momentumPredictor yes; nOuterCorrectors 2; nCorrectors 3; nNonOrthogonalCorrectors 0; cAlpha 0; nAlphaCorr 1; nAlphaSubCycles 1; } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default Gauss linear; grad(U) cellLimited Gauss linear 1; } divSchemes { default none; div(phi,U) Gauss linearUpwind grad(U); div(phi,k) Gauss linearUpwind grad(k); //div(phi,omega) Gauss limitedLinear 1; div(phi,epsilon) Gauss upwind; div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss interfaceCompression; div(phi,R) Gauss linear; div(R) Gauss linear; div(phi,nuTilda) Gauss linear; div(rhoPhi,U) Gauss linearUpwind grad(U); div((muEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { laplacian(Dp,p_rgh) Gauss linear limited corrected 0.33; laplacian(muEff,U) Gauss linear limited corrected 0.33; laplacian(rAUf,p) Gauss linear limited corrected 0.33; laplacian((1|A(U)),p) Gauss linear limited corrected 0.33; laplacian((1|A(U)),pcorr) Gauss linear limited corrected 0.33; laplacian(DkEff,k) Gauss linear limited corrected 0.33; laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.33; laplacian(DREff,R) Gauss linear limited corrected 0.33; laplacian(DnuTildaEff,nuTilda) Gauss linear limited corrected 0.33; } interpolationSchemes { default linear; } snGradSchemes { default limited corrected 0.5; } fluxRequired { default none; p_rgh; pcorr; alphawater; } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object transportProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // phases (water vapour); phaseChangeTwoPhaseMixture SchnerrSauer; pSat pSat [1 -1 -2 0 0] 2300; // saturation pressure sigma sigma [1 0 -2 0 0 0 0] 0.07; water { transportModel Newtonian; nu nu [0 2 -1 0 0 0 0] 1e-06; rho rho [1 -3 0 0 0 0 0] 1000; } vapour { transportModel Newtonian; nu nu [0 2 -1 0 0 0 0] 4.273e-04; rho rho [1 -3 0 0 0 0 0] 0.02308; } KunzCoeffs { UInf UInf [0 1 -1 0 0 0 0] 20.0; tInf tInf [0 0 1 0 0 0 0] 0.005; // L = 0.1 m Cc Cc [0 0 0 0 0 0 0] 1000; Cv Cv [0 0 0 0 0 0 0] 1000; } MerkleCoeffs { UInf UInf [0 1 -1 0 0 0 0] 20.0; tInf tInf [0 0 1 0 0 0 0] 0.005; // L = 0.1 m Cc Cc [0 0 0 0 0 0 0] 80; Cv Cv [0 0 0 0 0 0 0] 1e-03; } SchnerrSauerCoeffs { n n [0 -3 0 0 0 0 0] 1.6e+13; dNuc dNuc [0 1 0 0 0 0 0] 2.0e-06; Cc Cc [0 0 0 0 0 0 0] 1; Cv Cv [0 0 0 0 0 0 0] 1; } // ************************************************************************* // |
|
June 11, 2015, 05:07 |
|
#2 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Hi,
Have you solved your problem? I'm facing the same problem. I'm simulating NACA66 foil using interPhaseChangeFoam by LES. However, the resulting pressure is too low , which causes a cavitation cavity along the whole foil. Also, the pressure will increase to a value of about 10e7 Pa sometimes, while the pressure is about 2300Pa at most time |
|
June 11, 2015, 18:13 |
|
#3 |
Member
Alexander Bartel
Join Date: Feb 2015
Location: Germany
Posts: 97
Rep Power: 11 |
Hi you two,
although it seems to me pretty heuristically... have you tried different transport models, e.g. SchnerrSauer, Merkle, Kunz and tried different coefficients? regards Alex
__________________
Please note that I do not use the Friend-feature, so do not be offended, if I do not accept a request. |
|
June 11, 2015, 22:12 |
|
#4 | |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Quote:
Haven't yet. This is my first cavitation calculation in OF, so I just use almost the same setting in the cavitatingBullet tutorial, eg. boundary condition, fvscheme, fvsolution. It's strange that the pressure along the foil is around 2300Pa, the saturation pressure at most time, with some randomly large pressure value sometimes.Here is my understanding about interPhaseChangeFoam: 1\ the reference pressure is 0 by default, so that the pressure in the calculation is the absolute pressure 2\ if the gravity is not included, g should be set to (0 0 0) I think numerical schemes and solution methods should not affect the result so much, maybe the reason is somewhere else, for example , the boundary condition. As I look into the cavitatingBullet, the pressure condition on the wall is set to be fixedFluxPressure, and the velocity condition at outlet is set to be pressureInletOutletVelocity, however, the same phenomenen appears whether I use the above conditions or use the normal condition, zeroGradient. Could you please give me some advice? Xianbei |
||
June 13, 2015, 06:42 |
|
#5 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
p { margin-bottom: 0.25cm; line-height: 120%; } Hello,
I had a lot of other work, so I had to stop computations of the cavitation around the hydrofoil. I came back home from abroad two weeks ago and I start to simulate partial cavitation in the converging-diverging nozzle (venturi tube) considering realizable k-eps model of turbulence and kunz model of mass transfer. At the moment it seems much more promissing, but in fact I have noticed the same problem with severe pressure shocks. I'm trying to find some information about this issue and to make some database of computations capturing influence of the basic modifications of the simulation (i.e. temporal discretization 1e-6 s to 5e-6 s and mesh refinement) in the same time. I thing that there are two suspicious in this case. The first one is bounday reflexion and the second one was mentioned on this page by M.Dular few years ago (problem with the numerical speed of sound??... I'm not sure) Could we stay in touch? I can post some results during the next week, if you want. Have a nice weekend P.S. The same problem with the pressure shocks occures in the Fluent in case of the transient cavitation. |
|
June 13, 2015, 10:09 |
|
#6 | |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Quote:
The first thing I considered was the boundary conditions. So I ran a steadyState case with k-epsilon model using simpleFoam, with the same pressure and velocity conditions in the cavitating case. As can be seen, the pressure along the foil is resonable. Today, I use the steady result as the initial condition in the cavitating case, however, it's so strange that the pressure is almost not changed as in the noncavitating case with no cavitation occurs(PIMPLE is used with a residual control for p_rgh) I'll post my new findings as soon as there are. PS: by the way, could you please post your boundary conditions and fvSchemes and fvSolution? Or if convenient, you can send these through email, znhuang@163.com Xianbei Edit 1: I found that the algorithm used in the pressure-velocity coupling affect the result, leading to two different results. If the PIMPLE is used by setting nOuterCorrectors to 10 or else with a residual control, then the cavitation will disappear after certain time, while if PISO mode is turned on (nOuterCorrectors =1), the cavitation is everywhere along the foil ! Edit 2: Another thing I found is that the time scheme used will significantly affect the result. it seems that the first order Euler scheme performs much more reasonable than backward and CrankNicholson, additionally, CrankNicholson crashed after a short time. I'm confused and wondering whether interPhaseChangeFoam is suitable Also, no matter how large the pressure is given at outlet, if the second order time scheme is used, the pressure along the foil are all around the saturation pressure Last edited by huangxianbei; June 15, 2015 at 09:27. |
||
June 15, 2015, 10:14 |
|
#7 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hi,
I will post some results and dictionaries tomorrow. I'm not at the university today . If you want, you can download some animation of the cavitation in the nozzle using following link: (Kunz) http://leteckaposta.cz/538378633 I'm really glad that I found somebody to share the experinces with OpenFoam in both dorections, thanks Have a nice day Jiří. P.S. I noticed the same problem with the higher order of the temporal discretization when I was trying to simulate cavitation around hydrofoil. Last edited by Kozan; June 15, 2015 at 10:21. Reason: additional information |
|
June 15, 2015, 11:11 |
|
#8 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Hi, glad again to receive your reply.
In fact, I have spent a terrible day in trying different pressure values at outlet and the numerical schemes I have changed my geometry to 2D with k-epsilon model to quickly know all the changes' influence on the result. As I have mentioned, the time scheme affect the result so much. This makes me more confused. I have performed lots of simulations using single phase solver in OF and didn't experience such a strange fact. I'll keep on working tomorrow. Edit: I start a thread to describe my problem more clearly http://www.cfd-online.com/Forums/ope...tml#post550422, you can take a look at it and see if there is anyone who can give us some suggestions |
|
June 16, 2015, 10:20 |
|
#9 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hello,
I started with multiphase simulations in OpenFoam right after I managed to make some tutorials, so I'm not very experineced at all. I'm really sorry but there was some problem with my simulations, so I had to start again yesterday. I'm trying to do transient simulation of the cavitating flow in the full 3D geometry, so it is quite time consuming process. I can share some result from last week at the moment. In the following charts you can see comparison of the pressure fluctuations using two different time steps (1e-6 and 5e-6 s) You can see severe pressure shocks in the downstream pipe, but the shock are quite damped in the difusser. In case of higher cavitation number, where the cavitation in the diffuser is not so significant the shocks have higher amplitude. I'm using quite simmilar dictionaries as I post at the beginning of this thread. controlDict: Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object controlDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // application interPhaseChangeFoam; startFrom latestTime; startTime 0; stopAt endTime; endTime 10; deltaT 0.000001; writeControl timeStep; writeInterval 200; purgeWrite 0; writeFormat ascii; writePrecision 6; writeCompression uncompressed; timeFormat general; timePrecision 10; runTimeModifiable false; adjustTimeStep no; maxCo 0.1; maxAcousticCo 50; functions{ fieldAverage1{ type fieldAverage; functionObjectLibs ("libfieldFunctionObjects.so"); outputControl timeStep; outputInterval 200; fields ( U { mean on; prime2Mean off; base time; } p { mean on; prime2Mean off; base time; } alphawater { mean on; prime2Mean off; base time; } ); } probes{ type probes; functionObjectLibs ("libsampling.so"); enabled true; outputControl timeStep; outputInterval 10; fields ( p ); probeLocations ( (0.34 0.016 0) (0.40 0.025 0) ); } } Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; location "system"; object fvSchemes; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // ddtSchemes { default Euler; } gradSchemes { default Gauss linear; grad(U) cellLimited Gauss linear 1; } divSchemes { default none; div(phi,U) Gauss linearUpwind grad(U); div(phi,k) Gauss linearUpwind grad(k); //div(phi,omega) Gauss limitedLinear 1; div(phi,epsilon) Gauss upwind; div(phi,alpha) Gauss vanLeer; div(phirb,alpha) Gauss interfaceCompression; div(phi,R) Gauss linear; div(R) Gauss linear; div(phi,nuTilda) Gauss linear; div(rhoPhi,U) Gauss linearUpwind grad(U); div((muEff*dev(T(grad(U))))) Gauss linear; } laplacianSchemes { laplacian(Dp,p_rgh) Gauss linear limited corrected 0.33; laplacian(muEff,U) Gauss linear limited corrected 0.33; laplacian(rAUf,p) Gauss linear limited corrected 0.33; laplacian((1|A(U)),p) Gauss linear limited corrected 0.33; laplacian((1|A(U)),pcorr) Gauss linear limited corrected 0.33; laplacian(DkEff,k) Gauss linear limited corrected 0.33; laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.33; laplacian(DREff,R) Gauss linear limited corrected 0.33; laplacian(DnuTildaEff,nuTilda) Gauss linear limited corrected 0.33; } interpolationSchemes { default linear; } snGradSchemes { default limited corrected 0.5; } fluxRequired { default none; p_rgh; pcorr; alphawater; } // ************************************************************************* // Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.2.2 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object fvSolution; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // solvers { alphawater { maxUnboundedness 1; CoCoeff 0.2; maxIter 100; nLimiterIter 10; solver PBiCG; preconditioner DILU; tolerance 1e-6; relTol 0; }; "(U|k|epsilon)" { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; }; "(U|k|epsilon)Final" { solver PBiCG; preconditioner DILU; tolerance 1e-08; relTol 0; }; p_rgh { solver GAMG; tolerance 1e-8; relTol 0.1; smoother DICGaussSeidel; nPreSweeps 0; nPostSweeps 2; cacheAgglomeration true; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; maxIter 100; minIter 5; }; pcorr { $p_rgh; relTol 0; }; p_rghFinal { solver PCG; preconditioner { preconditioner GAMG; tolerance 1e-6; relTol 0; nVcycles 2; smoother DICGaussSeidel; nPreSweeps 0; nPostSweeps 2; nFinestSweeps 2; cacheAgglomeration false; nCellsInCoarsestLevel 10; agglomerator faceAreaPair; mergeLevels 1; }; tolerance 1e-7; relTol 0; maxIter 50; }; } PIMPLE { momentumPredictor yes; nOuterCorrectors 4; nCorrectors 3; nNonOrthogonalCorrectors 0; cAlpha 0; nAlphaCorr 1; nAlphaSubCycles 1; Code:
/*--------------------------------*- C++ -*----------------------------------*\ | ========= | | | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | | \\ / O peration | Version: 2.3.0 | | \\ / A nd | Web: www.OpenFOAM.org | | \\/ M anipulation | | \*---------------------------------------------------------------------------*/ FoamFile { version 2.0; format ascii; class dictionary; object transportProperties; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // phases (water vapour); phaseChangeTwoPhaseMixture Kunz; pSat pSat [1 -1 -2 0 0] 2400; // saturation pressure sigma sigma [1 0 -2 0 0 0 0] 0.07; water { transportModel Newtonian; nu nu [0 2 -1 0 0 0 0] 1e-06; rho rho [1 -3 0 0 0 0 0] 1000; } vapour { transportModel Newtonian; nu nu [0 2 -1 0 0 0 0] 4.273e-04; rho rho [1 -3 0 0 0 0 0] 0.02308; } KunzCoeffs { UInf UInf [0 1 -1 0 0 0 0] 3.173; tInf tInf [0 0 1 0 0 0 0] 0.017; // L = 0.1 m Cc Cc [0 0 0 0 0 0 0] 1000; Cv Cv [0 0 0 0 0 0 0] 10000; } MerkleCoeffs { UInf UInf [0 1 -1 0 0 0 0] 20.0; tInf tInf [0 0 1 0 0 0 0] 0.005; // L = 0.1 m Cc Cc [0 0 0 0 0 0 0] 80; Cv Cv [0 0 0 0 0 0 0] 1e-03; } SchnerrSauerCoeffs { n n [0 -3 0 0 0 0 0] 1e+14; dNuc dNuc [0 1 0 0 0 0 0] 2.0e-06; Cc Cc [0 0 0 0 0 0 0] 1; Cv Cv [0 0 0 0 0 0 0] 1; } |
|
June 16, 2015, 12:18 |
|
#10 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
well, it seems that the timestep size will affect the result. As seen, the pressure shock tends to reduce with the increasing time step size.
Have you checked the Courant number? Is it resonable if large time step size is used? Another point I'd like to figure out is the Code:
momentumPredictor yes; Anyway, I would try your settings to restart my simulation. I'll try different time step size by using PIMPLE instead of PISO. Good luck to our simulations |
|
June 17, 2015, 04:59 |
|
#11 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
I have figured out why PIMPLE and PISO get different performance. The reason is that in the origin code (OF-2.3.0), interPhaseChangeFoam.C
Code:
if (pimple.firstIter() || alphaOuterCorrectors) { twoPhaseProperties->correct(); #include "alphaEqnSubCycle.H" interface.correct(); } So I recompile this by commenting the if condition You can see the bug fix here: https://github.com/OpenFOAM/OpenFOAM...c7396809f308ef Now they performs similar, but the performance is still not good at noncavitating condition, the pressure at the leading edge is too low. |
|
June 24, 2015, 09:49 |
|
#12 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Hi,jiri:
Have you solve the excessive pressure during the calculation? Recently, I got acceptable results in cavitating flow ,while the excessive pressure still occurs. As I said in the previous post, I found some bugs in OF-2.3.0 which made me thought that the official version maybe not suitable for cavitating flow calculation. So I turned to the extend version. I installed openfoam-extend-3.1 and tested my 2D case under noncavitating condition. The results are very good. So I ran my 3D case using LES also in noncavitating condition and got good results too (no excessive pressure occurs). However, if I ran it in cavitating condition, it occured again I'm thinking this to be caused by the instability of the solver rather than anything else, just like the noise signal detected in the experiment. Therefore, I'd rather regard it as a noise. So I deleted the pressure signals which are 2 times larger than the average and did a smothing operation. The result seems reasonable. In conclusion, the pressure signal may include noise, and we should do some filtering operations to it to analysis the phenomenen better . |
|
June 25, 2015, 13:35 |
|
#13 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hello Huang,
I'm in Berlin right now. So I will send you my results next Tuesday. I can say that in case of higher cavitation number the frequency of vortex rings separation was quite reasonable. With the lower cavitation number the frequency was significantly higher compared to the experimental data. Unfortunately I did not solve the problem with pressure shocks. What about some chat or skype session next week? I'm really sorry that I can't give you more useful information at the moment. Have a nice day. Best regards, Jiří |
|
June 25, 2015, 22:20 |
|
#14 | |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Quote:
That's the same problem with me. I'm not sure if skype works well in China, I'll try it. I'm going to travelling for a few days and come back next week See you next week. Xianbei |
||
July 7, 2015, 15:30 |
|
#15 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hi!
I'm really sorry, but I had no time last week. I have finished a set of simulations considering constant discharge 7 l/s and 3E-5 s length of timestep. Value of the pressure was recorded using three probes, all of them were near the wall (apx. 0.3 mm) of the domain. First one was located in the midle of the difusser, second one 3 mm behind the diffuser and third one 130 mm behind the difusser. Value of the pressure was captured every timestep. I tried to compare the results of simulations with experimental measurement and high speed video analysys (figure). Sorry, text in picture is in czech language. So: Yellow = experiment, red = video analysis, blue = openFoam. You can see that there is significant difference between experimental and numerical results in case of lower cavitation numbers. On the other hand the numerical results match quite accuratively the experimental data in the region of higher cavitation number. What about you? Best regards, Jiř Last edited by Kozan; July 8, 2015 at 03:29. |
|
July 8, 2015, 05:52 |
|
#16 | |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Quote:
In fact, the problem is the same. As seen, this is the pressure coefficient along the suction side of the hydrofoil under low cavitation number, significant discrepancy can be seen. In your result, the frequency is smaller than the exp, which is contrary to my case, because the cavity sheading frequency in my case tends to be larger than the exp, as shown following: This is a comparison of the pressure fluctuation at x/c=0.4 on the suction side. If we look at this result, it seems more or less that OpenFOAM's result is reasonable, and the discrepancy may be attributed to the cavitation model or turbulence model, or the mixture assumption in the two-phase modeling. What's your opinion? PS: I used the Kunz model and found that some coefficients should be set according to the case to be modeled. ie. UInf and tInf, I'm running a case which adopts the new coefficients, the result should come out in two days and I will study it to see if there is any influence. Xianbei |
||
July 8, 2015, 08:01 |
|
#17 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hi,
Yep, I downloaded the article written by Kunz. Change of the coefficients t_inf and U_inf had quite significant influence on the results. Another problem was that there was negative pressure in domain (which is nonsense due to absolute formulation of p in case of interPhaseChangeFoam). I had to increase value of the Cv coefficient, but I didn't found any further information about that so I think that this is pure empiric problem. The original value was 1000 (I think), new value is 10000 and the lowest in the domain is about 1500Pa, which is still too low. The value of p_sat is 2400 Pa (20 °C), I think that it should be nearly the lowest pressure (at least it was when I did some computations using Fluent an incompressible solver). The second picture is capturing the whole computation, or only its part? I think, that you shoud wait litle bit more longer. I have tried to use finer mesh, but in my case the results were worse (more noisy FFT) so I decided to use coarser mesh (0.9 vs 1.5 M of hexahedral cells) By the way, the pressure fluctuations depicted in my previous post were obtained using the first probe (in the diffusser), results from the second one were much more noisy and the third one was completely useless. Have a nice day, Jiří P.S. Could you share your dictionaries? I have got some experimental data of NACA profile which were done in our department, so we can make some comparison. |
|
July 8, 2015, 09:08 |
|
#18 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
Hi, so quick reply!
1\Another problem was that there was negative pressure in domain (which is nonsense due to absolute formulation of p in case of interPhaseChangeFoam) Hmm, your problem seems strange, the lowest pressure should be around the saturation pressure if cavitation model is applied. I have no idea about that. 2\ I had to increase value of the Cv coefficient, but I didn't found any further information about that so I think that this is pure empiric problem. Yes, this is an emperical constant and hard to decide, so I didn't change it (1000), while I remember that in Kunz's paper, the two are set to 100 3\ Change of the coefficients t_inf and U_inf had quite significant influence on the results. This is case dependent. U_inf is the free stream velocity and t_inf=L/U_inf, L is the chord length in my case. 4\The second picture is capturing the whole computation, or only its part? It's the pressure pulsation at 1 point at x/c=0.4, the calculation shows significant periodicity, so at this stage, it's enough for me, while for further research, longer time is required. 5\I have tried to use finer mesh, but in my case the results were worse I use 0.5 million elements in my case, which is mesh converged. 6\Could you share your dictionaries? Which "dictionaries" do you mean? the fvSolution or something else? Xianbei |
|
July 16, 2015, 05:02 |
|
#19 |
New Member
jiri kozak
Join Date: Jan 2013
Posts: 21
Rep Power: 13 |
Hi!
1\ Yes, I know, that it is really strange. 2\ Sorry for my formulation, I mean set up of reference case which I found, not the original coefficients from the article. 3\ - 4\ Ok, but are you sure, that the solution is converged, in my case it lasts few periods until the frequency of vortex rings separation become more or less constant. 5\- 6\ Yes, I meant fvSolution, fvSchemes and condrolDictionary plus the whole constant folder. Question: I want to make singlephase simulation for the comparison of the additional vorticity which is produced in the phases interface region. It is possible to turn off mass transfer using interphaseChangeFoam (like in fluent, you can turn off mass transfer equation and get fully wetted solution) or it is necessary to use another solver (pimpleFoam)? Thanks. Have a nice day. Best regards, Jiří |
|
July 16, 2015, 05:28 |
|
#20 |
Senior Member
Huang Xianbei
Join Date: Sep 2013
Location: Yangzhou,China
Posts: 302
Rep Power: 14 |
4/ That's a question, in fact, the first two cycles show some differences from the following. So I have to run for longer time
constant.zip system.zip Here is the files. The Kunz model is modified according to"Cavitating flow around a 2D hydrofoil using a user modified version of interPhaseChangeFoam" I think you can just run a case under noncavitating condition because the volume fraction of water is always equal to 1. Xianbei |
|
Tags |
cavitation, hydrofoil, interphasechangefoam, numerical scheme, openfoam |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Hydrofoil Cavitation | Richy | STAR-CCM+ | 1 | July 9, 2014 19:58 |
How to select a cavitation model in interPhaseChangeFoam | simon95 | OpenFOAM Running, Solving & CFD | 1 | December 5, 2013 00:42 |
Cavitating Flow around a hydrofoil | kimotbwb | CFX | 0 | October 7, 2012 11:05 |
Detecting Cavitation of a Hydrofoil | jacobjb | FloEFD, FloWorks & FloTHERM | 1 | September 1, 2010 03:48 |
[Validation: marine] Hydrofoil NACA 0024 | axpl | FLUENT | 3 | September 19, 2009 10:18 |