Rotational averaging in a circular container/mesh
I have a little problem doing some calculations on geometric Fields. Since I'm very new to OpenFOAM I'm sure there's some very easy solution I'm just failing to figure out.
We have a circular mesh and simulate with LES the rotation and turbulence of a fluid inside. The walls are set to a certain rotation speed, heating temperature and so on...
What I try to accomplish is an averaging procedure, that circulary averages the temperatures (T) and fluid speeds (U) .. or any other geometric field we might need in the future. Best described as making slices every one degree and then average over the slices to get mean temperature and velocity distribution in a rotational sense in the fluid.
The idea I investigated last, was to create a copy of the mesh, rotate this and use the meshToMesh class to interpolate the rotated fields back on the original mesh. Reading the second mesh simply from disk would work, but is unwanted as I would have t make a save/read operation of the mesh with each timestep.
creating a mesh in this way:
and then using meshToMesh fails because he requires the patches to be set correctly
rotatingField = transform( Ten, rotatingField );
rotatedMesh.movePoints( rotatingField );
meshToMesh meshToMeshInterp( rotatedMesh, mesh );
Right now I'm working in reading the boundary from the disk but my question is: can't this be done in a much simpler way?
Thanks in advance!
I have not looked into your approach in detail. So I won't comment whether it will work or is a good idea.
However, I would go about this by calculating cylindrical coordinates
Now you can walk through the Phi and collect your statistics as needed. If this is too expensive, you may create addressing for each sector.
|All times are GMT -4. The time now is 06:03.|