how to get relative velocities in a rotating frame of reference?
Hi dear OpenFOAMers,
I am simulating the fluid flow in some centrifugal pump consisting of the rotor and the stator, using the OSIG TurboMachinery libraries with OpenFOAM-1.5-dev. In the results I am getting all the velocities (at least, by default) are in the absolute frame of reference. My questions are: 1. How to get the field of relative velocities, i.e., velocities in the rotating frame of reference? My idea is to extend the utility foamCalc to enable this transformation. But maybe some solution is already available? 2. How to get the circumferential and radial components of the velocity? Is some solution in OpenFOAM already available? Best regards, Alexey Kochevsky |
|
Hi!
I've compiled it with wmake successfull. But if I want to use it I get: --> FOAM FATAL ERROR: cannot find MRF faceZone ROTOR From function Foam::MRFZone::MRFZone(const fvMesh& , const dictionary&) in file MRFZone.C at line 71. FOAM exiting What is my mistake? Regards, Chris |
hi,Chris,
the error you encountered means that your model hasn't rotor part, and the Urel function i uploaded is for the rotating machinery, you can also see it from the Urel file. |
Well, I got a 2D turbomachine, with a rotating impeller and a diffusor. maybe the problem is, that I gave the rotor the name "Impeller" and not "ROTOR"?
I use OF 1.6 ext. |
Hi Renyun,
sorry for long silence, I have made some pause in my OpenFOAM activities. Thank you very much for your function, I have compiled it successfully. However, trying to apply it to my case, I get a similar error message as Christian. To Christian: as far as I understand, the faceZone name is taken from the constant\MRFZones file. It should be the same in the polyMesh\faceZones file, should be consistent with the data in the polyMesh\boundary file and with the corresponding file name in the polyMesh\sets directory. You may put the correct name everywhere manually. In my case, however, the interface consists of 2 independent patches that are separately specified also in the boundary file: one patch is disk-shaped and the other is cylinder-shaped (an impeller is inserted in a casing with a large gap between them). Thus, both patches cannot have the same name (like "rotor"). The same difficulty may be expected if simulating the flow in several stages of a multi-stage pump: each faceZone of the next impeller will have different name. How would you suggest to apply Urel function in this situation? Regards, Alexey Kochevskyy |
3 Attachment(s)
For the newer version of MRFZones which does not use faceZones and the "patches" keyword any more.
This is just quickly thrown together from the above code and I take no credit at all, but it still works with 1.6 and likely also above 1.6. |
Hi Niels,
does your tool also work for GGI ( mixerGgiFvMesh) or only for MRF-cases? Thanks in advance Ivan |
Urel
Quote:
i tried to compiled the Urel code but when i used the Urel command i got segmentation fault error i use openfoam 1.6ext i don't why that error especially that may memory is ok Thanks |
OF21x
Dear linnemann,
is this code working with 2.1.x? I'm still getting the "patches keyword missing" problem... Quote:
|
Sorry, I've already found this:
http://www.cfd-online.com/Forums/ope...implefoam.html And it works. Thank you for sharing it! Quote:
|
Any chance to get this working for 2.3.x? It didnt' compile
Urel.C:85:17: error: 'class Foam::IOMRFZoneList' has no member named 'relativeVelocity' |
Hi
just replace Code:
relativeVelocity Code:
makeRelative They changed it from 2.2 to 2.3 |
|
1 Attachment(s)
Hi,
i attached Urel to compile with OF v16.06. |
All times are GMT -4. The time now is 23:45. |