component velocity in Shanchen multicomponent model
October 11, 2021 at 6:34 pm #6074GloriousfaceParticipant
When I simulated the Oil/Water flow with ShanChen multicomponent model, I compiled my own codes based on the example ones “rayleighTaylror2d”. In the “getResults” part, SuperLatticeVelocity2D was used to write the component velocity. However, when I changed the input parameter from sLatticeOne to sLatticeTwo, the output velocity shown in paraview didnot change. Then I tried to check the souce code in openlb. I found the ForcedBGKdynamics or ForcedShanchendynamics was used for the bulkdynamic, where the getExternalVelocityMonenta was used. The common velocity shared by both components was stored in the descriptos::ExternalField::velocityBeginsAt (version olb-1.2) or descriptors::VELOCITY(version olb-1.4). In the ExternalVelocityMomenta, the function computeU used this common velocity as component velocity, but not compute the velocity via population.
Furthermore, whether the ForcedBGKdynamics use Guo’s forceing scheme. If it is ture, the barycentric velocity but not the common velocity should be used.October 26, 2021 at 9:23 pm #6107AdrianKeymaster
The _external_ velocity field is used to realize the coupling og the lattices. As you observed this was originally stored / referred to using offsets into an array and has since been replaced by a significantly more flexible and maintainable descriptor field concept.
ForcedBGKdynamicsuse the forcing scheme by Guo (10.1103/PhysRevE.65.046308).
The fully model of the system results of these dynamics and the coupling instantiated by
ShanChenForcedGenerator2D. There the value of the
VELOCITYfield is set to the local momentum (using
computeJi.e. computed from the populations).October 27, 2021 at 8:45 am #6111GloriousfaceParticipant
Thanks for your reply.
As described in “The Lattice Boltzmann Method:Principle and Practice”(Chapter 6) by Timm Kruger and the paper you mentioned, Guo’s force is used for the single phase flow. However, for the multiphase flow, Tim Kruger pointed that the barycentric velocity Ub should be used (Chapter 9, Page 382,eq(9.124)). This velocity should be same for both components (Page 383,eq(9.127)), i.e.,Ueq=Ub.
In openlb, the ForcedBGKdynamics, the snippet in member collid is simply: u+=force/2, not corrected with the density averaged force. This also makes the component Ueq different.November 10, 2021 at 6:41 pm #6165stephanModerator
sorry for the late reply.
Thank you for reading carefully.
We will definitely look into that.
In the meantime, as you seem to have some experience with this, you could test correcting the force yourself, have a look at the results and report the observations here.
In case you have further remarks, please let us know.
- You must be logged in to reply to this topic.