Przejdź do zawartości

Metoda Bogackiego-Shampine’a

Z Wikipedii, wolnej encyklopedii

Metoda Bogackiego-Shampine’ametoda numeryczna do rozwiązywania równań różniczkowych zwyczajnych w postaci zaproponowana przez Przemysława Bogackiego i Lawrence’a Shampine’a w 1989[1]. Metoda Bogackiego-Shampine’a jest metodą Rungego-Kutty trzeciego rzędu z czterema współczynnikami (patrz dalej) z tzw. własnością pierwszy taki jak ostatni (ang. FSAL, first same as last), dzięki której w każdej iteracji funkcja wywoływana jest trzykrotnie. Metoda ta ma wbudowaną metodę rzędu drugiego dzięki czemu możliwa jest adaptacyjna zmiana kroku całkowania. Metoda Bogackiego-Shampine’a zaimplementowana jest jako funkcja ode23 w programie MATLAB[2].

W ogólności metody niższego rzędu są bardziej odpowiednie niż algorytmy wyższego rzędu jak np. Metoda Dormanda-Prince’a (piątego rzędu) do numerycznego rozwiązywania równań różniczkowych zwyczajnych, jeśli nie jest wymagana wysoka dokładność rozwiązania przybliżonego. Bogacki i Shampine twierdzą ponadto, że zaproponowana przez nich metoda przewyższa inne metody trzeciego rzędu z osadzonym metodami rzędu drugiego.

Tabela Butchera dla metody Bogackiego-Shampine’a wygląda następująco:

0
1/2 1/2
3/4 0 3/4
1 2/9 1/3 4/9
2/9 1/3 4/9 0
7/24 1/4 1/3 1/8

Rozważmy równanie różniczkowe w postaci Jeśli oznacza numeryczne rozwiązanie w chwili zaś jest krokiem czasowym zdefiniowanym jako wtedy jeden krok metody Bogackiego-Shampine’a jest dany jako:

gdzie jest przybliżeniem drugiego rzędu rozwiązania dokładnego. Sposób obliczania został wybrany za Ralstonem[3]. Z drugiej strony jest przybliżeniem trzeciego rzędu, więc różnica pomiędzy i może być użyta do adaptacyjnej zmiany długości kroku całkowania. Właściwość FSAL (pierwszy jak ostatni) oznacza, że w danym kroku jest równa w kroku następnym, stąd tylko trzy wywołania funkcji są potrzebne w każdej iteracji.

Przypisy

[edytuj | edytuj kod]
  1. P. Bogacki, L.F. Shampine, A 3(2) pair of Runge–Kutta formulas, Applied Mathematics Letters, vol. 2, iss. 4, 1989.
  2. L.F. Shampine, M.W. Reichelt, The Matlab ODE Suite, SIAM Journal on Scientific Computing, vol. 18, iss. 1, 1997.
  3. A. Ralston, A First Course in Numerical Analysis, McGraw-Hill, Nowy Jork, 1965.