I am trying to apply the Zou-He velocity boundary condition in my simulation. However, I noticed two different versions, generated using
createDynamicsBasedZouHeBoundaryCondition2D() correspondingly. I realized that the former one wraps the boundary condition into a functional, which is processed after the collision (before streaming), and the latter one calculates the boundary condition through
completePopulations() that is executed before the collision.
My main question is how the order of collision and Zou-He boundary condition matters in the simulation, and which one should we use in general?