# A Lattice Boltzmann Method and Asynchronous Model Coupling for Viscoelastic Fluids
## 4 Numerical Results and Discussions
### 2D Channel Flows  
In order to verify the numerical accuracy of coupled solvers, we choose a 2D channel shaped by two parallel panels over distance of about \(L\) with \(H=10L\) long (see Figure 2). The characteristic length \(L\) and the characteristic velocity U are the height and maximum velocity of at the inlet, respectively. The velocity boundary conditions paralleled to the \(x\)-axis wall are, respectively,  
\[u=0,\ \ v=0,\ \ \frac{\partial v}{\partial x}=0,\ \ \frac{\partial v}{ \partial y}=0,\ \ \frac{\partial u}{\partial x}=0, \tag{25}\]  
The boundary conditions of stress paralleled to the \(x\)-axis wall could be obtained by velocity values. The Neumann boundary conditions at the exit are, respectively, used as follows  
\[\frac{\partial u}{\partial x}=0,\ \ \frac{\partial v}{\partial x}=0,\ \ \frac{\partial\tau_{xx}}{\partial x}=0,\ \ \frac{\partial\tau_{xy}}{\partial x}=0,\ \ \frac{\partial\tau_{yy}}{\partial x}=0, \tag{26}\]  
The stress tensor values are initially imposed to zero everywhere, and the fully-developed conditions are used at the entry, which is taken by  
\[u(0,y)=0.4y(1-y), \tag{27}\]  
\[v=0, \tag{28}\]  
then the maximum velocity at the inlet is \(U=0.1\). The Oldroyd-B constitutive equation has an exact solution when the velocity field has reached the steady state, which is written by  
\[\tau_{xy}=(4 UL\rho_{0}/\mathrm{Re})(1-\beta)\bigg{(}\frac{\partial u}{\partial y }\bigg{)}, \tag{29}\]  
\[\tau_{xx}-\tau_{yy}=2\Big{(}L^{2}\rho_{0}/\mathrm{Re}\Big{)}Wi(1-\beta)\bigg{(} \frac{\partial u}{\partial y}\bigg{)}^{2}, \tag{30}\]  
Figure 2: Channel flow set up parameters. So, we also can study the numerical precision of the presented method by comparing with the exact solution. The relative errors of numerical solutions for stress based on the \(L_{2}\)-norm are given by  
\[ \begin{array}{l}Error_{\tau_{xy}}\\ =\sqrt{\frac{\sum\limits_{k=1}^{M}\left(\tau_{xy}^{exact}(\mathbf{x_{k}})-\tau_{ xy}^{numerical}(\mathbf{x_{k}})\right)^{2}}{\sum\limits_{k=1}^{M}\tau_{xy}^{exact}( \mathbf{x_{k}})^{2}}}\end{array} , \tag{31}\]  
\[ \begin{array}{l}Error_{\tau_{xx}}\\ =\sqrt{\frac{\sum\limits_{k=1}^{M}\left(\tau_{xx}^{exact}(\mathbf{x_{k}})-\tau_ {xx}^{numerical}(\mathbf{x_{k}})\right)^{2}}{\sum\limits_{k=1}^{M}\tau_{xx}^{ exact}(\mathbf{x_{k}})^{2}}}\end{array} , \tag{32}\]  
where \(M\) is the total number of nodes, \(\tau_{xy}^{numerical}\), \(\tau_{xx}^{numerical}\) denote the steady-state numerical solutions and \(\tau_{xy}^{exact}\), \(\tau_{xx}^{exact}\) are the exact solutions. Generally speaking, at low \(Wi\) number, asynchronously coupled method can get a stability result in simulations only if the \(\delta t\) and \(\Delta t\) can guarantee the adequate resolutions of each solvers because of the small scale-separation. The value of \(N\) is related with the ratio of time-step sizes \((\Delta t/\delta t)\), but is usually not linear with respect to it. In practical applications, \(N\) is found by the trial and error approach. For instance, we initially set \(N_{0}=2^{h}\), \(h=\lceil\lg(\Delta t/\delta t)\rceil\), \(\lceil\;\rceil\) present round to ceiling. We can take \(N=N_{0}\), if the iterative error of was decreased when \(N=N_{0}\), other else we use \(N_{0}=2^{h+1}\) to test once again, and so on. We first run simulations using \(\delta t\approx 1~{}\times~{}10^{-5}\) and \(\Delta t\approx 1~{}\times~{}10^{-2}\) with the fined mesh of \(400~{}\times~{}40\), and \(N=5\) for generalized asynchronously coupled method, at lower \(Wi=1\), and get the results in the Figure 3, comparing AC scheme with GAC scheme. We find that despite both AC scheme and GAC scheme can get a stability result in simulations, the convergence speed of GAC scheme is fast than the AC scheme.