8.7.1. Insoluble surfactant transport equation in presence of mass transfer

In Section 7.5, we already discussed the surfactant transport equation for insoluble surfactants, however, in absence of evaporation. When there is no mass transfer, (7.11) holds. However, if there is mass transfer, we have to modify it to

(8.11)\[\partial_t \Gamma+\nabla_S\cdot\left(\vec{u}_\text{P}\Gamma\right)=\nabla_S\cdot\left(D_S\nabla_S \Gamma\right)\]

The only modification is the exchange of the fluid velocity \(\vec{u}\) to the velocity \(\vec{u}_\text{P}\), which is the fluid velocity in tangential direction, but the interface velocity in normal direction, i.e.

(8.12)\[\vec{u}_\text{P}=(\mathbf{1}-\vec{n}\vec{n})\vec{u}+\left(\vec{u}_\text{I}\cdot\vec{n}\right)\vec{n}\,.\]

In absence of mass transfer, the kinematic boundary conditions dictates that the normal interface velocity and the normal fluid velocity are equal and thus \(\vec{u}_\text{P}=\vec{u}\). If there is mass transfer, this does not hold. However, the normal velocity in (8.11) must follow the interface velocity, not the fluid velocity. This can be understood by the example of a levitating spherical droplet evaporating in free space. In the droplet, the fluid velocity \(\vec{u}\) will be zero, but the interface velocity will be not due to evaporation. When initially a homogeneous insoluble surfactant concentration \(\Gamma_0\) is on the droplet (with initial droplet radius \(R_0\)), we can simplify the equation to

\[\partial_t \Gamma=-\nabla_S\cdot\left(\left(\vec{u}_\text{I}\cdot\vec{n}\right)\vec{n}\Gamma\right)\,,\]

where the diffusion term has been disregarded since the problem will remain isotropic, i.e. \(\Gamma\) will only depend on time, but not on the location of the interface. Likewise, \(\vec{u}_\text{I}\) will point in negative normal direction and is magnitude is constant along the interface due to isotropy. After switching to a radial-symmetric spherical coordinate system, we can carry out the surface divergence, leading to

\[\partial_t \Gamma(t)=-\nabla_S\cdot\left(\vec{n}\right)\vec{u}_\text{I}\Gamma=\frac{2}{R(t)}\vec{u}_\text{I}(t)\Gamma(t)=\frac{2\dot{R}}{R}\Gamma(t)\,.\]

Since the surfactants are insoluble, the total moles of surfactants, i.e. the integral of \(\Gamma\) over the droplet surface, must be conserved. This is given by \(\Gamma(t)=\Gamma_0R_0^2/R^2(t)\). Plugging this in the lhs indeed shows that the surfactant equation conserves the total moles of surfactant. When the fluid velocity \(\vec{u}=0\) would have been used instead of \(\vec{u}_\text{P}\), the total amount of surfactants would not be conserved.

In pyoomph, the surfactant transport equation with \(\vec{u}_\text{P}\) as advection velocity is already implemented as part of the MultiComponentNavierStokesInterface. The velocity \(\vec{u}_\text{P}\) is internally calculated according to (8.12) and the rest of the implementation is analogous to Section 6.3. Furthermore, not only one surfactant may be added, but an arbitrary number.