Feature: harmonic interpolation of zero values
Functionality to add/problem to solve
OpenFOAM offers an harmonic interpolation scheme which is suitable for interpolating across steep gradients. It is for instance very suitable for interpolating the concentration and (mixture) viscosity in a bed transport using a sand-water mixture. Such an interpolation limits the diffusion due to the linear interpolation across the interface.
Proposal
Currently, the interpolation scheme cannot handle zero values of the interpolated property. As can be viewed in this equation:
\varphi_f = \frac{1}{\frac{\delta_1 / \delta}{\varphi_2} + \frac{\delta_2 / \delta}{\varphi_1}}
The dissertation of Goeree (2018) [1] describes a form in which it is possible to handle these zero values (5.22 and 5.17).
\varphi_f = \frac{\varphi_1 \, \varphi_2}{\frac{\delta_1}{\delta} \,\varphi_1 + \frac{\delta_2}{ \delta} \, \varphi_2}
My knowledge on the interpolation schemes implementation is limited and I could not implement this scheme myself. Would it be possible to change the implementation of this scheme or add a second scheme, which uses the version described in Goeree [1]? With some pointers I could implement and test it myself.
I did found a work-around for the harmonic schemes to handle zero values by first using a linear interpolation. I’ve added the code for this scheme when implementing the different scheme is not possible.
Links / references
[1] https://repository.tudelft.nl/islandora/object/uuid%3A2d432d11-cce4-40de-b951-e89dfebbef27