# Numerical Study of Viscoplastic Flows Using a Multigrid Initialization Algorithm
## 2 Numerical Methodology
### Incompressible Flow Solver: SIMPLE Algorithm  
Due to the ease of their implementation and the lower peak memory requirements, segregated pressure-velocity coupling algorithms are commonly used for solving incompressible flow equations written in terms of the primitive variables velocity and pressure. The basic idea of SIMPLE-like algorithms is to develop an iterative procedure which constructs and solves a number of linear systems within each iteration. Both velocity and pressure fields are updated during each iteration so that the continuity equation is always satisfied, and velocity equations converge progressively to their final solution. The common characteristic of these algorithms is that a pressure-correction equation is constructed by combining discretized continuity equation and approximate forms of the momentum equations. The approximate pressure correction linear system is used afterwards to improve the current pressure estimate and the intermediate velocity solved from the momentum equation so as to force the modified velocity to satisfy the continuity condition for each control volume at each iteration level. The method is illustrated by considering the two-dimensional laminar steady flow equations in Cartesian co-ordinates.  
In the first step of the SIMPLE calculation process, the so-called predictor step, a pressure field \(p^{*}\) is guessed. Then, intermediate solutions \(u^{*}\) and \(v^{*}\) are obtained by solving discretized momentum equations of the x-momentum and y-momentum equations, respectively, using the guessed pressure field. The improved velocities can be expressed as:  
\[u_{P}^{*} =\left(\frac{\sum\limits_{nb}{a_{nb}u_{nb}^{*}+b_{u}}}{a_{P}} \right)_{P}-\Delta y\frac{(p_{e}^{*}-p_{w}^{*})_{P}}{(a_{P})_{P}} \tag{20}\] \[v_{P}^{*} =\left(\frac{\sum\limits_{nb}{a_{nb}v_{nb}^{*}+b_{v}}}{a_{P}} \right)_{P}-\Delta x\frac{(p_{n}^{*}-p_{s}^{*})_{P}}{(a_{P})_{P}} \tag{21}\]  
Following the predictor step, the calculated velocities, denoted as \(u_{P}^{*}\) and \(v_{P}^{*}\), are based on the guessed pressure \(p^{*}\) or from previous iterations. Now, let us introduce the correction \(p^{\prime}\) as the difference between correct pressure field \(p\) and the guessed pressure field \(p*\), so that  
\[p=p^{*}+p^{\prime} \tag{22}\]  
Substitution of the correct pressure field \(p\) into the momentum equations yields the correct velocity field \(\mathbf{u}\). Since \(u_{P}^{*}\) and \(v_{P}^{*}\) do not satisfy continuity yet, similar procedure is applied to velocity components by introducing the corrections \(u^{\prime}\) and \(v^{\prime}\) as:  
\[u=u^{*}+u^{\prime} \tag{23}\]  
\[v=v^{*}+v^{\prime} \tag{24}\]  
With known cell-face velocity corrections, continuity equation is used to derive an equation for pressure correction \(p^{\prime}\). Equation (4) can be integrated in the cell volume by using Green-Gauss theorem leading to:  
\[(\rho uA)_{e}-(\rho uA)_{w}+(\rho vA)_{n}-(\rho vA)_{s}=0 \tag{25}\]  
Introduction of face velocities into the discretized continuity equation, Equation (25) yields the pressure-correction equation:  
\[a_{p}p_{P}^{\prime}=\sum\limits_{nb}{a_{nb}p_{nb}^{\prime}}+b_{p} \tag{26}\]  
where  
\[a_{P}=a_{W}+a_{E}+a_{S}+a_{N}\]  
\[b_{p}=(\rho u^{*}A)_{w}-(\rho u^{*}A)_{e}+(\rho v^{*}A)_{s}-(\rho v^{*}A)_{n}\]  
By applying Equation (26) on all control volumes of the domain, the pressure corrections can be obtained at all nodes. These are used afterwards to correct the velocity field, which will now satisfy the continuity condition. However, since velocity components may not satisfy the momentum equations, another iteration must be performed using the solutions from the previous iteration as initial guesses and so forth with the iteration procedure until convergence is achieved. In the solution procedure, the apparent viscosity \(\eta\) can be obtained from the guessed or intermediate velocity field and then be used to perform the current iteration.