Skip to content

Re: Free-Slip Boundary Condition – Implementation Doubts


Hi Robin,rnrnThank you for your response. I have not been tried to implement the addConvectionBoundary function of the class sOnLatticeBoundaryCondition2D. I have already read your paper Inertial dilute particulate fluid flow simulations with an Euler–Euler lattice Boltzmann method, where you implemented this convection-boundary in order to simulate an outflow condition. It seems that “”advectionDiffusionBoundayPostProcessiorXD.h/hh”” it is only implemented in 3D, right? rnrnIn the case of free-slip, if “”U“”is the velocity vector and “”n“” is the normal vector to the boundary pointing outwards, the grad(U)*n = 0 (0 is the zero vector). Thus, if I am not wrong, the outflow condition of your paper should not be applied for this kind of boundary.rnrnI checked the addSlipBoundary function available in olb::sOnLatticeBoundaryCondition2D< T, Lattice > Class Template Reference. The processSubDomain, located in SlipBoundaryProcessor2D, works as the specular reflection approach explained by myself at the beginning of this post. However, I do not understand why the corner nodes are treated as a bounce-back for the diagonal direction and the vertical and horizontal are switched 90°. For example, for a D2Q9 lattice and the North-West node, the distributions changed are :rn

    f4 = f2rnf5 = f1rnf6 = f8

rnrnIt should be noted that the lattice arrangement is:rn

rn 1—-8—-7rn|| || ||rn 2—-0—-6rn|| || ||rn 3—-4—-5rn

rnrnAs pointed out by in Question about Cavity2d Example and How to set a slip boundary posts, it seems that the nodes residing in the overlap region could not be implemented as a Slip-Boundary-Condition. Does someone know how to “”fix”” or overcome this problem?rnrnFinally, the user guide indicates that createInterpBoundaryConditionXD is the default non-local boundary condition based in the work of Skordos (1993). It seems that “”StraightFdBoundaryProcessor2D“” and “”PlaneFdBoundaryProcessor3D“” correspond to the post-processing classes for 2D and 3D, respectively. Does someone know how theses classes are accessed by the createInterpBoundaryConditionXD object ? Because from the sOnLatticeBoundaryConditionXD class only the velocity/pressure/slip/convection boundary functions are available. rnrnBest regards,rnAlejandrorn