Time step Log Out | Topics | Search
Moderators | Register | Edit Profile

FlexPDE User's Forum » User Postings » Time step « Previous Next »

Author Message
Top of pagePrevious messageNext messageBottom of page Link to this message

Pascal Mosnier (p_mosnier)
New member
Username: p_mosnier

Post Number: 1
Registered: 06-2005
Posted on Friday, June 10, 2005 - 09:24 am:   

Hi,
Is it possible to set a minimum time step ?

I mean : FlexPDE set its own time step, which is extremely small. As a result I have very large calculation time. Since I do not need extreme accuracy, I was wondering if I can tell FlexPDE of not going under a certain time step (like 1 second for instance).

Best regards
Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 377
Registered: 06-2003
Posted on Friday, June 10, 2005 - 04:06 pm:   

You can tell FlexPDE to use a fixed timestep, but there is no control to specify merely a minimum.

The automatic timestep control watches the evolution of variables in time and cuts the timestep until the temporal behavior can be fit by a low-order polynomial (which is the basic assumption of the time-integration technique). If your timestep remains small, it is because this assumption is violated.

There are several ways the assumption can be violated:

1) parameters that are discontinuous functions of the variables. If a parameter suddenly jumps as the value of a variable passes through a trigger point, the timestep control will respond by cutting the step size.
Solution: make all parameters smooth functions of the variables. Use a SWAGE or RAMP or other continuous function to make a transition between regimes.

2) Inconsistent conditions. If the equations and boundary conditions cannot be forced to agree, the timestep may be cut in an attempt to match them by compromise.
Solution: Make sure your boundary conditions are consistent with your PDE's.

3) Point-value equations. If a PDE has no spatial derivatives, the finite element equations will accept oscillatory solutions in space. This will feed back into the timestep control, causing short timesteps.
Solution: Add small diffusion terms to equations that have no spatial derivatives. See the Technical Note "Smoothing Operators in PDE's".

4) ERRLIM is too large. If you think you don't need an accurate answer and therefore set ERRLIM too large, the timestep control will allow large errors, which can lead to oscillations that ultimately cut the timestep to miniscule values trying to overcome the oscillations. FlexPDE will run faster in these cases with a smaller ERRLIM. This is counter-intuitive, but it's what happens.
Solution: Use an ERRLIM that keeps oscillations to a minimum.

5) Severly nonlinear parameters. If your problem is severely nonlinear, be sure to use SELECT PREFER_STABILITY. This allows three Newton iterations per timestep. (This has been the default since version 4.2.0). You can independently set the iteration limit with SELECT NRUPDATE=<number>.

In general, forcing a minimum timestep is not effective. If the time evolution of variables is not polynomial, forcing a timestep usually drives the solution into oscillation. It is much better to find the reason for the short timestep and cure it.

You can also try SELECT TORDER=1, which selects a first-order one-step backward-difference integration scheme in time. This is less accurate than the two-step quadratic BDF used by default, but it also carries less history to drive oscillation.

Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action:

Topics | Last Day | Last Week | Tree View | Search | Help/Instructions | Program Credits Administration