Metoda Romberga

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Metoda Romberga – jedna z metod całkowania numerycznego, opierająca się na metodzie ekstrapolacji Richardsona, pozwalająca przybliżać wartość całki:

abf(x)dx

nieznanej (jawnie) funkcji f. Funkcja ta jest zazwyczaj znana tylko na dyskretnym zbiorze argumentów (np. jako wynik pomiarów stanu urządzenia (wartość funkcji) dla różnych stanów (argument funkcji)).

Niech dany będzie zbiór a=x0,x1,,x2i=b dzielących przedział (a,b) na 2i równych części taki, że znane są wartości funkcji f(xi)=yi

Niech hi=ba2i, oznacza długość kroku.

Metodę Romberga można opisać rekurencyjnie:

{R0,i:R2i=hik=02i1(f(xk)+f(xk+1)2) Rm,i:4mRm1,i+1Rm1,i4m1.

R0,i jest wzorem trapezów, po obliczeniu pierwszej kolumny tzw. tablicy Romberga, kolejne kolumny obliczane są rekurencyjnie, otrzymując coraz lepsze przybliżenie funkcji:

R0,0
R0,1 R1,0
R0,2 R1,1 R2,0
R0,3 R1,2 R2,1 R3,0

Przykład wykorzystania metody Romberga

Wizualizacja elementu numer 1 tabeli algorytmu Romberga, który powstał z dwóch wyliczeń całek metodą trapezową – dla 1 i 2 przedziałów

Załóżmy, że dane są wyniki pomiarów pewnej funkcji w punktach x0,x1,x2,x3,x4

i 0 1 2 3 4
xi 0 0,25 0,5 0,75 1
yi 1 2 2 0 1

Dla tego przypadku:

  • i=2,
  • a=0,
  • b=1,
  • h0=101=1,
  • h1=102=0,5,
  • h2=1022=0,25.

Ponieważ i=2 poszukiwana będzie tablica Romberga typu:

R0,0,
R0,1 R1,0,
R0,2 R1,1 R2,0.

Obliczenie pierwszej kolumny tablicy Romberga:

R0,0=h0k=00f(xk)+f(xk+1)2=1+12=1,
R0,1=h1k=01f(xk)+f(xk+1)2=0,5(1+22+2+12)=1,5,
R0,2=h2k=03f(xk)+f(xk+1)2=0,25(1+22+2+22+2+02 +0+12)=1,25.

Oraz kolejnych wyrazów korzystając z poprzednich wyników:

R1,0=41R0,1R0,0411=53=1,666667,
R1,1=41R0,2R0,1411=76=1,166667,
R2,0=42R1,1R1,0421=1715=1,133333.

Błąd metody Romberga

Oznaczając hn=12n(ba), błąd, tj. przekłamanie wyniku otrzymanego metodą Romberga względem wyniku prawdziwego w notacji dużego O wynosi (Mysovskikh 2002)[1]

O(hn2m+2) dla wyrazu R(n,m).

Przypisy

Szablon:Przypisy