Calculate stable time step DG method for advection-diffusion

For stable time steps for the RKDG method for transport equations we require that

$$\Delta t \le \frac{\Delta x CFL}{(2k + 1)|\lambda|},$$ where $$\lambda$$ is the eigenvalue of our conservation law and $$k = 0, 1, \dots$$. For diffusion I believe we require that

$$\Delta t \le \frac{\Delta x^{2}}{\nu},$$ where $$\nu$$ is the diffffusion coefficient. To calculate a stable time step I am doing the following, $$\Delta t \le \min \left\{\frac{\Delta x^{2}}{\nu},\frac{\Delta x CFL}{(2k + 1)|\lambda|}\right\}.$$ It works reasonably well for $$k = 1$$ up to 160 elements. For $$k = 2$$, it only produces stable time steps for up to 80 elements. The solution does not blow up but I do not get the correct rate of convergence. As such, I was curious if someone had a literature reference or could provide the correct expression on how to calculate stable time steps that would yield the correct rates of convergence. For the time being I would like to stick with explicit RK methods for simplicity as I'm still learning DG. As a side note, the CFL condition I'm choosing is quite small, i.e. $$CFL = 0.05$$ to $$CFL = 0.01$$.

• What rate of convergence are you talking about here? – wwfe Jul 10 at 14:25
• To measure the spatial accuracy of the DG method. I get order 2 for P1, so thats fine. But using P2 basis functions I do not get a rate of convergence of order 3 for very refined meshes. I have dome some testing and how I calculate my DT makes a huge difference. The only problem is the way I'm calculating it I feel is not correct as if it was, I would be getting the correct rate of convergence. As a note, I start with 10 elements and keep doubling. – Simon Jul 10 at 17:13

Generally you should consider:

Convection:

$$\Delta t_C \le CFL \cdot \alpha_{RK}(p) \cdot \frac{\Delta x}{(2k + 1)|\lambda|}.$$

Diffusion:

$$\Delta t_D \le DFL \cdot \beta_{RK}(p) \cdot \frac{\Delta x^2}{(2k + 1)^2\nu}.$$

Finally:

$$\Delta t = \text{min}(\Delta t_C,\Delta t_D).$$

Here $$\alpha$$ and $$\beta$$ are scaling factors for different RK methods depending on the polynomial degree and the spatial operator.

Note that $$CFL<=1$$ and $$DFL<=1$$. Moreover these conditions do only hold for Cartesian meshes or to be more precise - for the one dimensional case. For unstructured meshes you also have to consider metric terms.

• Thank you for the informative reply. For the case of SSP RK methods (I'm using a 5th-order linear SSP), what would beta and alpha be? For the diffusion term I am using the LDG with alternative fluxes (to achieve a compact stencil). For the convection term I am using the Lax-Friedrichs scheme for the numerical flux. – Simon Jul 11 at 0:12
• This depends on the spatial operator (DG), the RK method and the physical system you are considering. – ConvexHull Jul 11 at 0:14
• To be more precise: You have to calculate the discrete Eigenvalues of your system. – ConvexHull Jul 11 at 0:14
• In terms of the spatial DG operator, I am merely using the original 1D formulation by Cockburn and Shu, i.e. the modal approach. In terms of the physical problem, I am solving the linear advection-diffusion for simplicity. I hope I'm making sense.. – Simon Jul 11 at 0:19
• The correct way would be to calculate the characteristic polynomial of your discrete system and plot a stability diagram in a complex plain. – ConvexHull Jul 11 at 0:23