Viscous damping while submerged

Asked by George Lesica

I'm playing around with buoyant forces. I've run into a problem and I'm looking for some advice on how to proceed. I don't necessarily expect a simple solution here...

Basically, I want to be able to apply a viscous damping force to particles while they are fully or partially submerged (using a buoyant force). The implementation of `BuoyancyForceGroup` supports a fluid height, but none of the damping forces appear to support such a parameter, damping applies to the entire domain.

I am considering two ways forward. The first would be to implement a viscous damping force that allows for a height parameter, the same way the buoyancy force does. Alternately, I could just edit the viscous damping force to accept such a parameter. The other option I am considering is to add a viscosity parameter to the buoyant force and apply it when the buoyant force itself is calculated.

I figured I would ask about this before I started changing code to see if there are any reasons to prefer one method over the other, and to make sure I haven't missed something that already exists (which would be super!). Thoughts?

Thank you all, in advance.

Question information

English Edit question
ESyS-Particle Edit question
No assignee Edit question
Solved by:
George Lesica
Last query:
Last reply:
Revision history for this message
Dion Weatherley (d-weatherley) said :

Hi George,

Any of your three options would be ok, although probably the best would be to implement a new viscous damping interaction group. Here are thoughts on each option:

1) modify existing viscous damping IG
* this is the easiest from a coding perspective but will render your version of the code incompatible with the ESyS-Particle trunk. If you want to upgrade to a later version you will need to re-implement your changes with each upgrade

2) add viscous damping to existing buoyancy IG
* this is also very easy from a coding perspective and I would be willing to merge this change into the trunk if the damping can be easily toggled on/off. Merging your changes with the trunk will mean no problems with upgrading to later versions.

3) new 'submerged viscous damping' IG
* this requires quite a bit of coding but can copy the existing viscous damping implementation. I would be very happy to see this merged with the trunk for future versions of ESyS-Particle. It is the best option IMO, because it allows use of the IG independantly of buoyancy should certain applications require it.



Revision history for this message
George Lesica (oldmanstan) said :

Sorry for the delayed response, thank you for the reply!