## 2 Mathematical Modelling and Numerical Methods
### Pressure Correction and Poisson Solvers
To perform the divergence calculations for the right-hand side of the pressure Poisson equation, additional points inside the IB are introduced (marked as green in the figure and, hereafter, called the virtual points). At the boundary points, the intermediate velocities are calculated in the same way as that for the velocity points, while at the virtual points, they were set to zero so that the velocity field inside the IB is already divergence-free. After performing the pressure correction according to Equation (4), the corrected velocities at the boundary and virtual points are not guaranteed to be zero; hence, the no  
Figure 1: Double-discretisation for the hybrid approach. slip boundary condition and the virtually frozen status are not strictly satisfied. To solve this problem, Equation (4) is modified to  
\[u_{i}^{n+1}=u_{i}^{*}-\frac{3}{2}\Delta t\frac{\partial p^{n}}{\partial x_{i}}+ \Delta t\tilde{f}_{i}^{n}, \tag{18}\]  
where \(\tilde{f}^{n}\) represents the added discrete-time IB force averaged over the time step. The IB force only acts on the boundary and virtual points to enforce the fluid velocity to be the desired value of zero. Therefore, \(\tilde{f}^{n}\) is obtained directly as  
\[\tilde{f}_{i}^{n}(\mathbf{x})= \begin{cases}-\frac{u_{i}^{T}}{\Delta t}+\frac{3}{2} \frac{\partial p^{n}}{\partial x_{i}}&\text{at boundary and virtual points},\\ 0&\text{elsewhere}.\end{cases}  \tag{19}\]  
Accordingly, since \(\tilde{f}^{n}\) is generally not divergence-free, the pressure Poisson equation should be modified to  
\[\frac{\partial^{2}p^{n}}{\partial x_{i}\partial x_{i}}=\frac{2}{3\Delta t} \frac{\partial u_{i}^{*}}{\partial x_{i}}+\frac{2}{3}\frac{\partial\tilde{f}_ {i}^{n}}{\partial x_{i}}. \tag{20}\]  
It is worth mentioning that, in principle, the IB force can be applied only at the boundary points to save computation time. This is because the virtual points are not active in the first fraction step; enforcing the corrected velocity inside the immersed body to be zero or not has no impact on the numerical solution of velocity in the flow domain. Nevertheless, some tests have shown that this way of applying the IB force has non-negligible effects on the pressure field near the immersed boundary. Now, the modified pressure Poisson Equation (20) is coupled with the IB force Equation (19). We here propose an iterative method to solve the coupled system. First, Equation (20) is solved by a direct method using the FFT. The derivatives in the right-hand side are evaluated at the pressure points using the WLS approximation based on the intermediate velocity and force values at the velocity points, the boundary points, and the virtual points. For the first iteration in the first time step, the IB force values are initialised to zero; otherwise, they are taken from those obtained from the previous time step or iteration. Then, the pressure gradients at the boundary and virtual points are calculated by the WLS approximation based on the pressure values obtained at the pressure points by the direct FFT-based method, and the force values are updated according to Equation (19). The iteration procedure continues till the numerical solution for \(\tilde{f}^{n}\) converges. The convergence criterion is defined as that the mean-squared difference of the IB force magnitude between the present and previous iteration is below the tolerance times the mean-squared IB force magnitude of the previous iteration. Finally, at the last iteration of each time step, the pressure gradients at the velocity points are calculated as well to perform the pressure correction. It is important to note that, except for the first iteration, the evaluation of the right-hand side of the modified pressure Poisson equation needs to be performed only for these pressure points whose neighbours contain at least one boundary or virtual point (i.e., these pressure points in the vicinity or inside of the IB), hence being affected by the updated IB force values.