Saya mencari beberapa implementasi open source (salah satu dari Python, C, C ++, Fortran baik-baik saja) dari pendekatan rasional ke suatu fungsi. Sesuatu di sepanjang artikel [1]. Saya memberinya fungsi dan mengembalikan dua polinomial, yang rasionya merupakan perkiraan pada interval yang diberikan dan kesalahannya berosilasi dengan amplitudo yang sama dan merupakan perkiraan optimal, atau mendekati itu.
Inilah yang saya temukan:
Sepertinya chebfun dapat melakukan itu, tetapi saya tidak memiliki akses ke Matlab *.
Ada program sederhana di bagian 5-13 "Pendekatan Rasional Chebyshev" dalam Numerical Recipes (NR).
Mathematica memiliki EconomizedRproximation dan MiniMaxAproximation
Saya bertanya-tanya apakah ada sesuatu yang lebih baru (mungkin lebih baik diuji) daripada kode NR.
Aplikasi saya adalah bahwa saya memiliki satu set fungsi khusus, sekitar 10, yang diberikan baik sebagai seri hypergeometric, atau beberapa formula yang memiliki pembatalan numerik, dan saya ingin memiliki fungsi evaluasi yang kuat, cepat dan akurat, yang dipanggil dalam loop paling dalam menghitung dua elemen matriks partikel dalam perhitungan Hartree Fock. Saya memberikan contoh sederhana dari fungsi yang bekerja untuk saya di [2]. Seperti yang Anda lihat, itu menggunakan rumus langsung, atau seri sekitar x = 0, yang saya hitung menggunakan SymPy. Ini semacam bekerja, tetapi akurasinya tidak besar, sekitar x = 1 sekitar setengah dari digit signifikan hilang (tetapi untuk x = 0,1 serta x = 1e5 akurat untuk hampir semua digit signifikan). Saya mencari pendekatan yang lebih baik.
[1] Deun, J., & Trefethen, LN (2011). Implementasi yang kuat dari metode Carathéodory-Fejér untuk pendekatan rasional. BIT Numerical Mathematics, 51 (4), 1039-1050. doi: 10.1007 / s10543-011-0331-7 ( e-print Juni 2010 )
[2] https://gist.github.com/3831580
(*) Atau ke situs web chebfun, yang memberi saya 404, tetapi Pedro menyarankan bahwa itu harus menjadi masalah penyedia saya.