Discontinuous fields when running in parallel
OpenLB – Open Source Lattice Boltzmann Code › Forums › on OpenLB › General Topics › Discontinuous fields when running in parallel
- This topic has 5 replies, 3 voices, and was last updated 3 years ago by ramirofreile.
-
AuthorPosts
-
September 22, 2021 at 8:27 pm #6018ramirofreileParticipant
Hello everyone,
I am noticing that when I run in parallel and the cuboid geometry is split into N subblocks, the fields at the interface of these mini blocks are discontinuous. Despite this, the physical solution is not affected, but the outputted results do not look right. I attach a picture that references the problem. https://ibb.co/bXJBhH9.
Could anyone help me solve this problem?
Thank you in advance for your time,Ramiro Freile
- This topic was modified 3 years ago by ramirofreile.
- This topic was modified 3 years ago by ramirofreile.
September 23, 2021 at 10:45 am #6021NicolasParticipantHello Ramiro,
I assume, you did not implement any custom treatment of specific fields and your are simply referring to the output of the macroscopic velocity. Furthermore I am assuming that you are using Paraview to generate your images. In this case, you might be dealing with some harmless visualization artifacts. Please make sure, to use the most recent Paraview version. In order to check the output correctness, you can use the “Extract Block” filter in Paraview to check individual blocks. If your are only interested in obtaining a continuous surface or volume representation, please use Paraview’s “Resample To Image” Filter.
Best,
Nicolas
September 23, 2021 at 5:07 pm #6023ramirofreileParticipantHello Nicolas,
Thank you for your answer.
The image of the previous post is the temperature in a Poiseuille flow, and the way I am outputting the temperature is the following :SuperLatticeField3D<T, TDESCRIPTOR, TEMPERATURE> temperature(ADlattice); temperature.getName() = "temperature"; vtmWriter.addFunctor( temperature );
To add clarity to the issue, I ran a case that is only divided into two subblocks. https://ibb.co/sqC8Jpc
https://ibb.co/RbdgF1z
https://ibb.co/Jy0wHLhIn one figure, a slice of the pipe is shown. You can see that at the midlength of the pipe, the temperature has a strange output, so does the enthalpy. The velocity field and pressure do not have any issue. In the remaining two figures I show each of the subblocks separately. You can still see the issue in each block at the merging point.
I tried doing Resample to Image but I still have issues when I do line plots at the centerline of the pipe and on the slices.
Thank you in advance,Ramiro Freile
September 24, 2021 at 5:45 pm #6027ramirofreileParticipantHello,
Just to add more evidence about the issue.
Here I attach an image of “rayleighbernard2d” sample case.
I also have the issue while viewing the results in Paraview. It feels as if two contiguous blocks overlap a distance of deltax.
https://ibb.co/wCGrRPWThank you,
Ramiro Freile
October 4, 2021 at 9:35 pm #6043AdrianKeymasterThanks for letting us know! This is indeed a communication issue w.r.t. the VTK output (the inter-block communication for the actual simulation is correct, luckily).
You can fix the Rayleigh Bernard example by adding a call to
sLattice.communicate()
ingetResults
for the VTK-writing timesteps.October 4, 2021 at 11:46 pm #6044ramirofreileParticipantAdrian,
I greatly appreciate your help.
I could solve the issue following your suggestions. I would just like to mention that ingetResults
I addedNSlattice.communicate()
and alsoADlattice.communicate()
for it to output the results properly.
Thank you very much,Ramiro
-
AuthorPosts
- You must be logged in to reply to this topic.