# CFL Number- an insight

 Register Blogs Members List Search Today's Posts Mark Forums Read

 November 30, 1999, 09:19 CFL Number- an insight #1 Sanjeev Kumar Guest   Posts: n/a Hello Junta I have some doubts about cfl number. Is it used only for hyperboilc equations? For stability, should it be always less than one? like that. Any attempt to clarify my doubts will be highly appreciated.

 November 30, 1999, 14:02 Re: CFL Number- an insight #2 Patrick Godon Guest   Posts: n/a The Courant Friedrich Levi Conditions comes from the following equation: df/dt = c df/dx This is a one-dimensional equation where the propagation of f is at the speed c (advection of f). when using discrete values of f this becomes (f(x,t+dt)-f(x,t) )/dt = c (f(x+dx,t)-f(x))/dx where now dx and dt are finite values. The speed of the numerical integration is dx/dt, and the speed of the propagation of the wave is c. IN order to follow the propagation (advection) of f at a speed c, the speed of integration has to be larger than c: dx/dt larger than c equivalent to: dt smaller than dx/c which the simplest form of the CFL condition on the time step dt. Usually one takes only a fraction of dx/c, for example 0.5, but also sometimes 0.1 !! Otherwise the scheme is unstable. For an elliptic equation (diffusive term): df/dx = nu*d2f/dx2 the same formalism leads to dt smaller than dx**2/nu which can be very small. All this is for an explicit time scheme, (f(x,t+dt)-f(x,t) )/dt = c (f(x+dx,t)-f(x))/dx for an implicit time scheme (f(x,t+dt)-f(x,t) )/dt = c (f(x+dx,t+dt/2)-f(x,t+dt/2))/dx where f(t+dt/2)=1/2*(f(t)+f(t+dt)) (Crank Nicholson) the time step can be much larger, but one has to invert a matrix, since the equation becomes implicit. The restriction on the time step then comes from the inversion of the matrix (to avoid a stiff problem), or the linearization of the equation (in 2 or 3 dimension - ADI methods). Cheers, Patrick Quasar_89 likes this.

 November 30, 1999, 17:06 Re: CFL Number- an insight #3 Sanjeev Kumar Guest   Posts: n/a Hi Mr.Patric Thanks for your insight into cfl. I will return to you back with some more doubts. with regards --kumar

 November 30, 1999, 18:11 Re: CFL Number- an insight #4 clifford bradford Guest   Posts: n/a the cfl number is the ratio of the distance a wavelike disturbance travels in a time step to the grid size. it is only useful (or present) where the equations have a wavelike character (ie hyperbolic) however the compressible navier stokes equations have mixed wave/diffusion character (hyperbolic/parabolic) so in addition to the cfl number you should also consider the von neumann number which is the ratio of the distance travelled by a diffused quantity in a time step to the grid size. having said that: for high Re applications it has been shown that in most cases the von neumann number criterion can be ignored for most explicit schemes the maximum cfl is one although for multistep runge kutta schemes (which are the most popular explicit time stepping schemes) they are often higher than 2.5. this is because these schemes can be 'tuned'. for implicit schemes the typical statement is that there is no CFL restriction. although as patrick has pointed out previously there are other reasons than stability to limit the time step (cfl). for unsteady analyses the time step used is often well below the stability limit (if one exists) to preserve time accuracy. in such cases the the time step limit is set to preserve time accuracy. an example of how this can be done can be found in Hu et al in Journal of Computational Physics vol 124. i guess that's more than you wanted to know about cfl but i ranted MattVM likes this.

 November 30, 1999, 21:15 Re: CFL Number- an insight #5 Zhong Lei Guest   Posts: n/a For the convection-diffusion problem,
df/dt + c df/dx = nu*d2f/dx2,
by the Neumann stability analysis, the time step should satistfy the following condition:
dt < A/(2*nu/dx**2 + c/dx), A <= 1.0 for explicit time integral; A > 1.0 for implicit time integral.
This conclusion can be also extended to a general coordinate system. Zhong