Przybliżenie Padé

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacja, szukaj
Przybliżenia Padégo funkcji tangens
Przybliżenia Padégo funkcji wykładniczej

Przybliżenie Padégo – metoda aproksymacji funkcji za pomocą funkcji wymiernych danego rzędu. Często daje lepszy wynik niż szereg Taylora dla tej samej liczby współczynników, kiedy funkcja posiada bieguny.

Jej odkrywcą jest Henri Padé.

Definicja[edytuj]

Dla danej funkcji f i dwóch liczb naturalnych m, n ∈ N0, przybliżeniem Padégo rzędu (m, n) jest funkcja wymierna

której pochodne równają się pochodnym f(x) do najwyższego możliwego rzędu

Ściślej i ogólniej funkcja wymierna jest przybliżeniem Padégo rzędu formalnego szeregu potęgowego nad ciałem , jeżeli:[1]

()
(równoważnie )

Obliczanie[edytuj]

Jeżeli rozwinięcie funkcji f(x) w szereg Taylora ma postać

to współczynniki w przybliżeniu Padégo spełniają układ równań

dla i = 0, 1, ..., m+n

Przy czym przyjmuje się, że

b0 = 1
ai = 0 dla i > m
bi = 0 dla i > n

Przykład[edytuj]

Należy wyliczyć wielomian przybliżający w punkcie 0. Mamy m=2, n=1, m+n=3. Z szeregu Taylora, który dla punktu 0 staje się szeregiem Maclaurina mamy

ogólnie dla

Układamy układ równań:

pierwsza część
druga część
oraz

Wpisujemy do macierzy najpierw pierwsze m niewiadomych a potem drugie n, otrzymując macierz: oraz wektor wyrazów wolnych składający się z samych zer z wyjątkiem ostatniej jedynki. Następnie wyliczamy posługując się na przykład metodą eliminacji Gaussa, otrzymujemy co daje
co jest zgodne z przykładami Wolframu z dokładnością do mnożnika licznika i mianownika.

Wypełnianie macierzy[edytuj]

Niech N=m+n+2 będzie rozmiarem macierzy A z normalnym indeksem liczonym od 1 do N.

Czyścimy macierz inicjując ją zerami;
       for (int i = 0; i <= m; i++)
       {
               for (int j = 0; j <= i; j++)
               {
                       if (j<=n)
                               A[i+1, m+j+2] = c[i - j];
               }
               A[i+1, i+1] = -1;
       }        
       for (int i = 0; i<= n - 1; i++)
               for (int j = 0; j <= n; j++)
                       A[m + i + 2, m + j + 2]  = c[m + n - i - j];
       ; końcowe b0 = 1
       A[m + n + 2, m + 2] = 1;

Przypisy

  1. Joachim von zur Gathen, Jürgen Gerhard: Modern computer algebra.

Bibliografia[edytuj]

  1. Padé Approximant (ang.) w encyklopedii MathWorld
  2. A Short Introduction to Padé Approximants, Jerome Soucy Université Laval

Linki zewnętrzne[edytuj]