Presentation is loading. Please wait.

Presentation is loading. Please wait.

MATH 175: NUMERICAL ANALYSIS II

Similar presentations


Presentation on theme: "MATH 175: NUMERICAL ANALYSIS II"— Presentation transcript:

1 MATH 175: NUMERICAL ANALYSIS II
Lecturer: Jomar Fajardo Rabajante 2nd Sem AY IMSP, UPLB

2 VARIABLE STEP-SIZE METHODS (ADAPTIVE)
It is a good practice to change the step size for a solution that moves between periods of slow change and periods of fast change. One common variable step-size approach is using two solvers of different orders (embedded pairs).

3 VARIABLE STEP-SIZE METHODS
Basic idea: The user sets a tolerance error that must be met by each step. The method is designed to reject the step and cut the step size (usually by half) if the tolerance error is exceeded. If the tolerance error is met too well – say the error is 1/10 of the tolerance error – then the step size is increased (usually doubled). [We will not do number 3].

4 VARIABLE STEP-SIZE METHODS
Before crudely cutting the step size into half, we will try to come-up first with a formula that might give us the right step size. We will use relative error estimate where θ>0 protects against very small values of wi.

5 VARIABLE STEP-SIZE METHODS
Let T be the tolerance (relative) error. Assume that the (explicit one-step) solver has order p, so that the local truncation error is O(hp+1). Hence, the h that satisfies (1) & (2) is

6 VARIABLE STEP-SIZE METHODS
Continuation… We consider only the 80% to be conservative (0.8 is the safety factor); and we consider theta. Hence,

7 VARIABLE STEP-SIZE METHODS
If h* does not meet the tolerance, then set hi := h* and apply again to the formula. If the newly computed h* still does not meet the tolerance, then cut h* into half (i.e. h* := h*/2). Continuously cut until the tolerance is met. If h* becomes very small (say less than 10^-10), then stop and tell the user that the step size becomes very small. However, if tolerance error is met set hi+1 := hi .

8 VARIABLE STEP-SIZE METHODS
Computing ei is a challenge, so to estimate ei , we will use a higher order method’s estimate – say zi+1 . This method is called embedded pair. Estimate from higher-order method Estimate from original method

9 EMBEDDED RUNGE-KUTTA PAIRS
1st Example: RK 2/3 We partner explicit Trapezoid method (an RK 2 method) with an RK 3 method.

10 EMBEDDED RUNGE-KUTTA PAIRS
1st Example: RK 2/3 Getting ei : Note: We can use zi to advance our method i.e. estimate for yi (this is local extrapolation)

11 EMBEDDED RUNGE-KUTTA PAIRS
2nd Example: RK 4/5 or Runge-Kutta-Fehlberg (this method is famous)

12 Continuation… 2nd Example: RK 4/5

13 VARIABLE STEP-SIZE METHODS
Other well-known methods: Bogacki-Shampine 2/3 (ODE23 in MATLAB) Dormand-Prince 4/5 (ODE45 in MATLAB) RKV 5/6 (Runge-Kutta-Verner) Bulirsch-Stoer method You can also use Richardson’s extrapolation to improve the solutions. Note: There maybe other ways of computing h* .


Download ppt "MATH 175: NUMERICAL ANALYSIS II"

Similar presentations


Ads by Google