![]() |
rhoSimplecFoam Mach0.8 no pressure values
Hello together,
I'm trying to simulate a kind of rocket with rhoSimplecFoam and the following start-up conditions(it's laminar without any turbulence modell and a coarse mesh built with snappyhexmesh, the values are for standard atmosphere in 0km): Code:
p Code:
T Code:
U Code:
solvers Code:
ddtSchemes Code:
GAMG: Solving for Ux, Initial residual = 3.5620403e-05, Final residual = 1.145979e-07, No Iterations 1 Can anyone help me and tell me, where is the problem or failure? best regards, cfdnewbie147 |
That everybody knows what i mean:
When i look at my written solution file U i see: Code:
dimensions [0 1 -1 0 0 0 0]; But when I look at the written p file: Code:
dimensions [1 -1 -2 0 0 0 0]; Best regards, CFDNewbie147 |
Hi,
your pressure equation does not converge - 1000 Iterations! Under normal conditions, you should not fix p AND U anywhere. Same is true for zeroGradient. Try setting the pressure at the outlet and zeroGradient it at the inlet. Henrik |
I changed as you said to: Code:
/*--------------------------------*- C++ -*----------------------------------*\ But it doesn't work either. Output is: Code:
/*---------------------------------------------------------------------------*\ Sorry for my incompetence...:/ |
When I try some different Solver for p like this:
Code:
/*--------------------------------*- C++ -*----------------------------------*\ Code:
GAMG: Solving for Ux, Initial residual = 4.922311e-10, Final residual = 4.922311e-10, No Iterations 0 |
Greetings to all!
@CFDnewbie147:
Best regards, Bruno |
Dear Bruno,
first of all, thank you for your detailed answer. 3. I understand your example but that's not right at all. I'm working more than one year with CFD(TAU- Code) and now, for my bachelor thesis, I'm trying to solve the described problem with openfoam. With openfoam I don't have so much experience, only some simple work at university. I made some tutorials before trying to simulate my real problem and tried to transfer my problem to the tutorial. 2. I thought, in comparison to the rhoSImplecFoam tutorial, I'm trying to solve the equations with more underrelaxation, so lower coefficients. I do not really have a feeling for this numbers, but i thought that for beginning, lower is better, but apparently not? 3.Yes that's true, i fix the pressure and velocity at the inlet (like in TAU). So do I have to fix only velocity at inlet and pressure at outlet? I hope you will carry on guiding me to a solution. Best regards, CFDNewbie147 |
Hi CFDnewbie147,
Quote:
But still, I'm guessing that TAU is a lot more user friendly than OpenFOAM, so consider this a whole other level of a spaceship ;)
Quote:
Quote:
In addition, check with the tutorials of OpenFOAM, to see the effect of reducing the relaxation parameters, so that you can get a better feel for them. Quote:
Best regards, Bruno |
Dear Bruno,
no, that's OK you're right, OpenFOAM is more complex than TAU. :rolleyes: First of all, I took the motorbike tutorial with simpleFoam to look if my mesh works, after that I went to the square bend tutorial and made it running with my mesh and my boundary file without changing the values of the start up conditions. Then I changed some parameters in the startup conditions and looked if it worked...going to mach 0.8 because I think that's easier with subsonic than supersonic start up conditions. I decreased the underrelaxtion values but still doesn't work...and now I'm here because time is running away... OK I will try underrelexation values near to 1 and I will fix velocity at inlet and pressure at outlet. rest of my boundary conditions are OK? is the freestream condition better then slip conditions for the wall? Any other improvements so far? Unfortunately I can change the values and run the case again at Tuesday... So far, thanks for helping me. Best regards, CFDNewbie147 |
Hi CFDNewbie147,
Well, from my experience, one should never be in a hurry when it comes to using OpenFOAM. The software is completely free, but it requires a lot more time in exchange. Although, once one has a full grasp of how to use, it can be as easy as running Allrun :D As for the questions at hand: have a look at the sonicFoam tutorials. For example, "compressible/sonicFoam/ras/prism" does impose pressure on the inlet as well, but on the outlet it uses the "waveTransmissive" boundary condition. On the walls, it uses "supersonicFreestream", so I'm guessing that for subsonic, you can use the one you're using. I would also advise you to check the code documentation: http://foam.sourceforge.net/docs/cpp/ - for example, the "freestream" page is this one: http://foam.sourceforge.net/docs/cpp...5.html#details I don't have experience on this, so I have no idea if either one is suitable for your case :(. Good luck! Best regards, Bruno edit: I forgot about the under-relaxation details... my guess is that you should use the ones from the tutorial "squareBend" as a reference, not to just start using "1.0" is all equations and fields! |
You are right,
if anything is known, you can make a Allrun script, but the way to knowing everything in OpenFOAM is long and hard... I thougth that the waveTransmissive condition is only for supersonic speed? But I don't know exactly, I've to look it up....or does anybody know this? The unterrelaxation values I will use as reference and adapt to my case when it's running... Do you know if rhoSimplecFoam can be used for mach numbers above 1? Or is this not possible because rhoSimplecFoam cannot solve the equations with the appearing shock waves? I'm not sure about this... Thank you for your help, and if anybody can answer some other questions I would be happy. Best regards, CFDNewbie147 |
I checked my error file and found the following:
Code:
Duplicate entry Duplicate entry alphatJayatillekeWallFunction in runtime selection table fvPatchField And what's the duplicate entry error? Does anybody know? Best regards, CFDNewbie147 |
Hi CFDNewbie147,
If my memory doesn't fail me, that bug was corrected soon after OpenFOAM 2.2.1 was released. It means that there is a collision of object names, because "alphatJayatillekeWallFunction" exists for both compressible and incompressible and object-wise this is bad, since it can lead to the crash you have witnessed. If possible, upgrade to OpenFOAM 2.2.2. Otherwise, you'll have to patch the code manually to correct the problem and then rebuild the affected OpenFOAM libraries. Best regards, Bruno |
Thank's a lot for answering this.
That means, perhabs al my simulations where this error occurs could be false and the results are not good/realistic? Updating to OpenFOAM-2.2 is no opinion...but how to fix this bug manually? Where do I find this specific patch and how to update the OF libraries? Can anybody explain this to me? Best regards, CFDNewbie147 |
2 Attachment(s)
Dear Bruno and CFDnewbie147,
I add myself in your conversation because I think I have a relevant problem. I introduce first the case. To understand the geometry, I attached a slice, but the problem is 3D. The flow moves from the right to the left side. The inlet BCs are applied on the inlet of the channel on the left; the outlet BCs on the outlet of the channel on the right. The air comes also from on high, from the external domain. I'm using rhoSimplecFoam as solver, and kOmegaSST as turbulence model. I got yet a first result, using the minimum flow rate for my problem; and everything seems good. I obtained the right value (I mean, as calculated) for the maximum velocity, and in general the behaviour of the flow field seems reasonable. Now, I'm trying to increase the flow rate, but without success... Using the same parameters from the previous simulation, the solution diverges after few iterations. I tried to change some of these parameters, in particular the under-relaxation factors. I can obtain a converging simulation if I use a relaxation factor for p (0.9), but the solution is wrong: 1) it is veeeeery slow (but this isn't a real problem); 2) at the beginning, the velocity profile (with the new velocity) seems to move in the right direction, toward the nozzle; 3) then, it seems to come back! The flow doesn't reach the nozzle, but comes back! Considering the nozzle, downstream (on the right) nothing changes (p, rho, U....nothing!) Instead, if I don't use any relaxation factor for p (so, I put just 1, as in the working case with minimum flow rate), it diverges after few iterations! What I'm asking you is: there is some parameter I'm using in the wrong way?! Thare is something I can do to obtain a converging simulation, physically correct?! The fvSolution file: Code:
solvers Code:
ddtSchemes I hope some of you could help me, because I don't know what I'm doing wrong... Thank you in advance! Best regards, Claudio |
Greetings to all!
@CFDnewbie147: Quote:
Bruno |
@Claudio:
Quote:
Bruno |
All times are GMT -4. The time now is 14:04. |