Szukam implementacji typu open source (dowolne z Python, C, C ++, Fortran jest w porządku) racjonalnego zbliżenia do funkcji. Coś w tym artykule [1]. Daję mu funkcję i zwraca mi dwa wielomiany, których stosunek jest przybliżeniem dla danego interwału, a błąd oscyluje z tą samą amplitudą i jest to optymalne przybliżenie lub blisko niego.
Oto, co znalazłem:
Wygląda na to, że chebfun może to zrobić, ale nie mam dostępu do Matlaba *.
W rozdziale 5-13 „Racjonalne zbliżenie Chebysheva” znajduje się prosty program w przepisach numerycznych (NR).
Mathematica ma EconomizedRationalApproximation i MiniMaxApproximation
Zastanawiałem się, czy istnieje coś nowszego (być może lepiej przetestowanego) niż kod NR.
Moja aplikacja polega na tym, że mam zestaw funkcji specjalnych, około 10, które są podane albo jako serie hipergeometryczne, albo jakąś formułę, która ma anulowania numeryczne, i chcę mieć solidną, szybką i dokładną funkcję oceny, która jest wywoływana najbardziej wewnętrzna pętla obliczania dwóch elementów macierzy cząstek w obliczeniach Hartree Fock. Podam prosty przykład funkcji, która działa dla mnie w [2]. Jak widać, jest to albo formuła bezpośrednia, albo seria około x = 0, którą obliczyłem za pomocą SymPy. To trochę działa, ale dokładność nie jest duża, około x = 1 około połowa znaczących cyfr jest tracona (ale dla x = 0,1, a także x = 1e5 jest dokładna do prawie wszystkich cyfr znaczących). Szukam lepszego przybliżenia.
[1] Deun, J. i Trefethen, LN (2011). Solidna implementacja metody Carathéodory-Fejér w celu racjonalnego przybliżenia. BIT Matematyka numeryczna, 51 (4), 1039–1050. doi: 10.1007 / s10543-011-0331-7 ( e-druk z czerwca 2010 r. )
[2] https://gist.github.com/3831580
(*) Ani na stronie Chebfun, która daje mi 404, ale Pedro zasugerował, że to musi być mój problem z dostawcą.