Smoothing length and cut-off length

From the new CaseTemplate.xml for 5.0 I see there is a new parameter _hdp

<coefh value="0.866025" comment="Coefficient to calculate the smoothing length (h=coefh*sqrt(3*dp^2) in 3D)" /> 
<_hdp value="2" comment="Coefficient to calculate the smoothing length (hdp=h/dp)" /> 

According to the comments the smoothing length is two things: hdp and h. In the Run.out there is another symbol H.

In Section 3.1 of the User's Guide https://github.com/DualSPHysics/DualSPHysics/wiki/3.-SPH-formulation

only kernels with an influence domain of 2 h are considered

Can you please clarify which is which? Is there any risk here that the notions of 'smoothing length' (length scale of kernel or suchlike) and 'cut-off length' (size of the influence domain or suchlike) are being confused? Hopefully these is some sense in making notation and commentaries consistent, in due course of course.

Comments

  • Hi @sph_tudelft_nl

    From my experience, coefh and hdp are two methods for specifying the same parameter, the smoothing length 'h'. 'coefh' and 'hdp' are interchangeable , however one must note that when using 'coefh', h is calculated as h = coefhsqrt(3dp^2) (in 3D). If using 'hdp', h is calculated as h = hdp*dp, a rearrangement of the equation in the comment.

    Hope this helps

  • @atish_d

    I see your point, thanks. So does the underscore before hdp disable that xml element by silently ignoring it? I have also seen the # being used for the same purpose in the XML input file, indeed.

    But probably what they mean with smoothing length is actually the cut-off length, the "true size" of the kernel, which is more directly relevant to design a working simulation. I also think that the terminology in the User's Guide does reflect a common usage (one I have been exposed to, at least).

    I can propose a pull request once 5.0 is online, since this is in the open-source part of the bundle.

  • Smoothing lenght is smoothing length! Wendland kernel is defined for 2h, so that 2 times the smoothing length.

    In addition, hdp and coefh should be properly defined in the XML_GUIDE_v5


    Regards

  • edited July 2020

    Any risk of confusion is cleared, thanks.

    • There are two ways one can set the smoothing length: one can disable either by tweaking its XML name. (I had missed the XML guide somehow, right!)
    • Perhaps to get it all right at first sight, one might also write more straightforwardly:
    <coefh value="0.866025" comment="Coefficient to calculate the smoothing length (h=coefh*sqrt(3)*dp in 3D)" /> 
    <_hdp value="2" comment="Coefficient to calculate the smoothing length (h=hdp*dp)" /> 
    

    and by the way it stands out nicely thathdp = coefh*sqrt(3)in 3D.

    • h and H indicate the same smoothing length in the XML input and Run.out output (likewise for the pairs dp,Dx and coefh,CoefficientH);
    • And the kernel size (cut-off length) is 2h following doctrine. No discussion. One can then estimate how many particles are contained inside a kernel support at least in the initial lattice. Handy.


  • The cut-off length is characteristic of the kernel function used. I assume DualSPHysics uses kernels with a cut-off length of 2h due to computational efficiency. A good example is the Gaussian kernel, which takes a greater distance than 2h to reach near zero (it never really goes to zero), which makes the function inefficient.

Sign In or Register to comment.