Hi everybody, I have a prob
I have a problem with the solver I'm writting and I must admit I have no idea how to solve it.
The pressure seems to computed in a write way (I can see it by printing some information on the screen during the computation for each time step), however the pressure file present in each time directory is not writen in the right way.
Indeed, the maximum value of the pressure (that I print on the screen to look at the evolution) is increasing, but in each time directory I only find the pressure file that I had at the begining in time directory "O". Then, of course, when I use paraview, I cannot see my pressure or qat least I only see the initial field!
Does someone have an idea how to solve this kind of problem?
Hi, I've got a similar pro
I've got a similar problem with the pressure field. When I solve for the flow around a 3D moving object, the velocity and vorticity field are correct. The pressure field only gives me the initial solution or some strange linear behavior. Since the velocity field is correct the equations are solve appropriately, but apparently the pressure field is wrongly written to file. When I use tecplot the same error is present.
Anyone any ideas?
Hi Frank, Your explanation
Your explanation is more clear than mine but it's exactly the same problem. The wired thing is that, if I look to the file Udisp of the structure region, the pressure is well written on the boundary.
Did you find a way to avoid this problem? (force writting or so?)
No, I did not solve the proble
No, I did not solve the problem nor did I investigate it in detail. At first I was worried about the solution from the equations, but looking at the vorticity (I mainly look at this quantity) the flow solution is correct. Off course this problem should be solved but at this time I am busy with other things (i.e. learning gridpro).
Has anyone solved this problem of wrong pressure writing?
It would be very very difficul
It would be very very difficult to break the file I/O system for only one class in OpenFOAM: all the code is produced from the same templated functions, i.e. it will either all work fine or all be broken.
I suspect the problem is in the code you've written yourself, rather than a standard application, right? There are two possibilities:
- you are taking a reference to a temporary field, which gets deleted by the time of writing and memory is re-used by something else (like yours truly, and only last week - goes to show some people never learn) :-)
- some other memory violation in the code is corrupting your data.
In order to find this, you should run you executable through valgrind and see if there are memory violations. An even better way of handling the problem would be to use a full debug build, which will check for all out-of-bounds array access while the code is running.
In any case, it is not the writing that messes things up: I am almost certain the problem is somewhere else.
Hi Hrv, I already tried my
I already tried my case using the standard icoDyMFoam in combination with your dynamicBodyFvMesh library. The result is that I can use the velocity field but the pressure field is constant or linearly varying (not at all what is expected). Could it be something with the set-up of the boundary conditions.
|All times are GMT -4. The time now is 16:24.|