CFD Online Logo CFD Online URL
Home > Forums > Main CFD Forum

Stiff system and time steps

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

LinkBack Thread Tools Display Modes
Old   October 24, 2008, 18:02
Default Stiff system and time steps
Posts: n/a
Hi all

I learned that stiff systems are routinely encountered in CFD calculations of steady aerodynamic flows, where they are handled using implicit time advancement algorithms and large time steps. My question is: why the implicit time advancement? Wouldn't there be large errors?


  Reply With Quote

Old   October 25, 2008, 03:59
Default Re: Stiff system and time steps
Posts: n/a
Using explicit time-stepping methods generally leads to constraints for stability ("CFL condition"), in which your time-step size must be smaller than your gridsize to some power, where that power is larger for stiffer systems, and therefore can make computation times immensely long. However, implicit time-stepping allows you to avoid such constraints for stability. The accuracies of implicit discretization schemes are no worse than those for explicit schemes. The tradeoff is: explicit schemes are easy to write, and each variable is updated to the next time by simple operations, while implicit schemes can be very hard to write, and require an inversion of a large matrix or some other approximate inversion technique. For a good text, see

"A First Course in the Numerical Analysis of Differential Equations"

by Arieh Iserles.
  Reply With Quote

Old   October 27, 2008, 05:15
Default Re: Stiff system and time steps
Posts: n/a
Stiff systems have multiple temporal scales. While an explicit method might work with sufficiently small time-steps to capture the smallest temporal scale, this is often not the scale we are interested in. Stiffly stable methods allow the time-stepping to only resolve the temporal scale of interest without instability caused by the faster process.
  Reply With Quote

Old   October 27, 2008, 09:24
Default Re: Stiff system and time steps
Posts: n/a
In explicit method you advance you numerical solution by dx and dt, where dx is the grid size and dt is the time step. If the total velocity in the flow is V=v+c, where v is the velocity of the flow and c is the sound speed, then you must actually make sure that you advance (integrate) you numerical simulation faster than the fluid, otherwise you won't be able to follow the flow (the flow will go faster thatn the integration). The velocity of the numerical integration is just dx/dt , so you must have dx/dt > V or dx/V < dt, or

dt < dx/(v+c) which is the usualy Courant Friedrich Levi (CFL) condition. There are similar condition for viscous flow, which are more complicated, but results in the condition dt < dx*dx/nu, where nu is the viscosity (here nu does not involve the density for simplicity).

In implicit methods you are NOT restricted to these conditions as the method is implicit. However you still do have limitations and conditions on the time step which are set up by the accuracy you want to reach. Eventhough you can chose the time step much larger than the one imposed in explicit methods, you cannot chose it indefinitely large, as the results will have larger errors.

The main difference between implicit and explicit is that implicit is numerically stable while explicit can in theory diverge and you will obtain that the solution can become infinite. So the reason behind using implicit is not only for larger time step but also for numerical stability.

This is especially true in boundary layer problems where the change in speed of the flow is very large on a tiny scale (stiff problems).
  Reply With Quote

Old   October 30, 2008, 06:27
Default Re: Stiff system and time steps
Posts: n/a
Implicit methods generally give less temporal accuracy and takes longer time to solve for each time-step.

Also, since all points in the domain become connected in an implicit approach you might get some unphysical results since you transmit information at infinite speed over the domain.

On the other hand, if you use an explicit method you might never see any usable result since you are forced to use too small time-step in order to maintain stability.
  Reply With Quote


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
TimeVaryingMappedFixedValue irishdave OpenFOAM Running, Solving & CFD 30 September 19, 2017 12:38
Extrusion with OpenFoam problem No. Iterations 0 Lord Kelvin OpenFOAM Running, Solving & CFD 8 March 28, 2016 11:08
Multiple floating objects CKH OpenFOAM Running, Solving & CFD 12 March 21, 2016 14:05
Superlinear speedup in OpenFOAM 13 msrinath80 OpenFOAM Running, Solving & CFD 18 March 3, 2015 06:36
System time overhead in OF askjak OpenFOAM 0 September 8, 2010 06:42

All times are GMT -4. The time now is 22:45.