# A Lattice Boltzmann Method and Asynchronous Model Coupling for Viscoelastic Fluids
## 1 Introduction  
Over the last few decades, there has been substantial development in the numerical simulation of viscoelastic fluids, which are commonly encountered in many important industries, such as oil and chemical engineering. However, the numerical solution of the viscoelastic constitutive models is a tremendous challenge, due to breakdown in convergence of algorithms when the Weissenberg number (_Wi_, is a non-dimensional number characterizing the effect of elasticity on the flow) is increased [1; 2]. At large levels of elasticity, the stress field often contains stress singularities at sharp corners or stagnation points [3]. Many researchers have already had some attempts to develop robust and stable numerical algorithm to solve viscoelastic fluid flows at moderately high values of _Wi_ number, such as discontinuous Galerkin method [4], finite-volume methods [5; 6; 7], and the lattice Boltzmann method. Among the various numerical methods of the viscoelastic fluids in literatures, the lattice Boltzmann method (LBM) [8; 9; 10] has attracted much attention due to its kinetic nature for modeling the complex fluids. Since 1990s, [PERSON] [11] and [PERSON] [12] have been developed the lattice Boltzmann method to account for non-Newtonian behaviors, but they did not focus on the model with strong elastic effects. Later, several approaches have been proposed to incorporate constitutive equations in lattice Boltzmann simulations for viscoelastic fluids [13; 14; 15; 16; 17]. Recently, [PERSON] et al. [18] investigated viscoelastic shear-thinning fluid using lattice Boltzmann method; [PERSON] et al. [19] employed a multiple-relaxation-time lattice Boltzmann flux solver for non-Newtonian power-law fluid flows. [PERSON] et al. [20] extended a lattice Boltzmann method scheme to multiphase viscoplastic fluids by applying the Herschel-Bulkley constitutive relationship. It is worth mentioning that a coupledlattice Boltzmann method have been devised to solve the equations of an Oldroyd-B viscoelastic fluid in the reference [21], which did not need to adding extra distribution functions for the stress tensor. The coupled systems of the viscoelastic fluid include the macro scale constitutive equation and the mesoscopic lattice Boltzmann equation. There is a more disparity in timescales between the macro solver and meso solver. To distinguish this different time scale and enhance the computational efficiency, the asynchronously coupled method [22; 23] was applied for the coupling time in reference [21]. That means, the data between macro constitutive equation and the lattice Boltzmann equation exchange at every time step. The constitutive solver may run at a slower pace than the meso-scale dynamics. The asynchronous coupling method allows for the coupled solvers to exchange the data at every loop, although the meso and macro time steps are unequal. This special treatment is actually a numerical approximation to the true solution. For viscoelastic fluids at low _Wi_ number, asynchronously coupled method may get steady result in simulations if the macro time step can guarantee the adequate resolutions of each solvers because of the small scale-separation. However, for viscoelastic fluids at high _Wi_ number, the computational stability of asynchronously coupling is greatly affected by the polymer stress as the elasticity interaction becomes relatively large. Therefore, the asynchronously coupling method has the limitations, such as poor numerical stability, which were limited to solve the low _Wi_ number problem. The aim of the current paper is to develop a generalized technique for time advancing of the viscoelastic coupled lattice Boltzmann method, seeking to be immune to high _Wi_ number problem. The basic idea of our new method is as follows. (i) Run the lattice Boltzmann solver using its own time step \(\delta t\), while allowing for a flexible number of lattice Boltzmann solver steps \(N\) before the exchange of coupling variables; (ii) Run the constitutive solver using its own time step \(\Delta t\).