Waveheight attenuation phenomenon

Hello everyone.

I was trying to verify the stability of waveheight along the x-axis. So I changed the length of wave tank to 70 meters in CasePistonBeach_REG and CasePistonDamping_REG from DualSPHysics_v5.0\examples\main\09_WavesPiston. Both cases show waveheight attenuation phenomenon along the x-axis.

I tried to change coefh to 1.5 and dp to 0.01. The result is much better,but the attenuation still exists.

I want to know what causes the attenuation and how to eliminate it.

Thank you!


  • This is common in SPH, since there is no boundary condition forcing particles to move with the same wave parameters, other than having the wave maker at the inlet generating the wave.

    Increasing resolution and using AWAS (Active Wave Absorption System) is a common way to alleviate this problem. CoefH being 1.5 is recommended for waves, so that is correct according to documentation.

    Using mDBC will also help slightly as far as I recall.

    Lowering viscosity might help as well, if you are using artificial viscosity.

    Looking at your percentage change if wave height is it about 5% from start to finish - is that not good enough for your needs?

    Kind regards

  • As suggested by @Asalih3d you can try:

    • mDBC boundary conditions
    • density difussion term 3: Fourtakas (full)
    • laminar+SPS with kinematic viscosity of 10E-6
  • edited February 28

    @Alex Should that read 1E-6 for the kinematic viscosity? That would roughly be the value in m^2/s at 20C. Seems 10E-6 would be way too high.

  • I just wanted to follow up and say that 1E-6 worked very well. I didn't try 10E-6 because it isn't physical.

  • Sure 1E-6 sorry

  • edited March 7

    As other users have mentioned, wave decay is an inherent problem in SPH. Unfortunately, with the current formulation, there is no definitive solution to eliminate wave decay completely, despite several attempts to do so.

    I tried:

    • Decreasing dp (it helps but computation becomes expensive).
    • Increasing Coeffh (theoretically it should help because the SPH error is O(h^2), but I barely noticed any improvement).
    • Reduce viscosity (worked but it causes erratic behavior of particles, so I do not recommend).
    • Increasing wave height (nope).

    Remember that in the standard formulation, only few wave-lengths will be able to propagate before the wave fully dies.

    Check my post on the kernel gradient correction:


Sign In or Register to comment.