question about XSPH

edited September 2013 in Old versions
In the current code (Line 691 of JSphCpu.cpp), the summation of XSPH contribution to particle i also includes the contribution from boundary particle j. For example particle i is fluid particle, and particle j is static boundary particle that never moves, but it looks like the particle j still contribute to particle i in XSPH. Does that make sense? Because, the purpose of XSPH is to make the fluid particle flows together with its neighboring Fliud particles to make it more localized and stable. So it looks like we should not include the contribution from boundary particles into it, because it is not moving with fluid particles, and it is always slowing down the fluid particle movement, if we include its contribution in XSPH, as V(ba)=Vb-Va=0-Va=-Va. Please let me know if I understand this point correctly. Thanks a lot!!!

Comments

  • Hi pkpan,

    I have asked one of the more senior developers about this and his response was that "it really depends if you want the boundaries to be considered no-slip or not".
    The DualSPHysics implementation is such that the boundaries introduce drag, so technically it is not incorrect, but idealistically, it may not be suitable for your requirements.

    Kind regards.
  • average between the speed is different to calculate the average speed and that developers are not knowing explain clearly. The SPH method essentially calculates the reference speed of the particle speed from its neighbors by a iterpolação providing a weighted average speed. This average value will depend on the smoothing long as the number of neighboring particles which will influence the reference particle may vary with the hsml size and therefore the particles in the same fluid layer (incopressível) may have speed very different, which does not occur in a real flow. And to make this correction is calculated new speed between the reference particle and its neighbor using the average of the densities of the particles. The term average speed in XSPH arises you have a new rate that is equal to the old speed + weighted average of speeds, ie delta_v = average => v_new = v_old + weighted average, and the boundary speed is zero speed old is void.
Sign In or Register to comment.