Chebfun - Chebfun
Deweloper(zy) | Zespół Chebfun, Uniwersytet Oksfordzki |
---|---|
Wersja stabilna | v5.7.0 / 02 czerwca 2017 |
Magazyn | |
Napisane w | MATLAB |
Rodzaj | Oprogramowanie numeryczne |
Licencja | BSD |
Stronie internetowej | www |
Chebfun to darmowy/open-source system oprogramowania napisany w MATLAB do obliczeń numerycznych z funkcjami zmiennej rzeczywistej. Opiera się na idei przeciążania poleceń MATLAB dla wektorów i macierzy na analogiczne polecenia dla funkcji i operatorów. Na przykład, podczas gdy polecenie SUMA w MATLAB-ie sumuje elementy wektora, polecenie SUMA w Chebfun oblicza całkę oznaczoną. Podobnie polecenie odwrotnego ukośnika w MATLAB staje się poleceniem Chebfuna do rozwiązywania równań różniczkowych.
Matematyczną podstawą Chebfuna są algorytmy numeryczne obejmujące odcinkowe interpolanty wielomianowe i wielomiany Czebyszewa , stąd nazwa „Cheb”. Pakiet ma na celu połączenie odczucia symbolicznych systemów obliczeniowych, takich jak Maple i Mathematica, z szybkością liczb zmiennoprzecinkowych.
Projekt Chebfun ma swoją siedzibę w Instytucie Matematycznym na Uniwersytecie Oksfordzkim i został zainicjowany w 2002 roku przez Lloyda N. Trefethena i jego ucznia Zachary Battles. Najnowsza wersja, wersja 5.7.0, została wydana 2 czerwca 2017 r.
Chebfun2, system oprogramowania, który rozszerza Chebfun do dwóch wymiarów, został udostępniony publicznie 4 marca 2013 r. Po Chebfun2, Spherefun (rozszerzenie do sfery jednostkowej) i Chebfun3 (rozszerzenie do trzech wymiarów) zostały udostępnione publicznie w maju i lipcu 2016.
funkcje
- Aproksymacja funkcji w 1D, w tym funkcji ze skokami
- Aproksymacja gładkich funkcji dwuwymiarowych (Chebfun2)
- Aproksymacja gładkich funkcji trójwymiarowych (Chebfun3)
- Aproksymacja funkcji gładkich na sferze jednostkowej (Spherefun)
- Kwadratura
- Odnajdywanie korzeni
- Globalna optymalizacja 1D
- Dwuwymiarowe i trójwymiarowe wyszukiwanie korzeni
- Równania różniczkowe zwyczajne
- Równania różniczkowe cząstkowe
- Rachunek wektorowy
Przykładowe użycie
Użytkownik może zacząć od inicjalizacji zmiennej x, powiedzmy w przedziale [0,10].
>> x = chebfun('x',[0,10]);
Ta zmienna może być teraz używana do wykonywania dalszych obliczeń, na przykład obliczania i wykreślania pierwiastków funkcji:
>> f = sin(x) + sin(x.^2); plot(f)
>> r = roots(f); hold on, plot(r,f(r),'.r'), hold off
Całkę oznaczoną można obliczyć za pomocą:
>> sum(f)
ans
= 2.422742429006079
Bibliografia
Linki zewnętrzne
- Oficjalna strona internetowa
- Powiązane projekty i częściowe wymiany w innych językach: [1]