Chebfun
Utvecklare | Chebfun-teamet, University of Oxford |
---|---|
Stabil frisättning | v5.7.0 / 2 juni 2017 |
Förvar | |
Skrivet i | MATLAB |
Typ | Numerisk programvara |
Licens | BSD |
Hemsida |
Chebfun är ett mjukvarusystem med gratis/öppen källkod skrivet i MATLAB för numerisk beräkning med funktioner av en verklig variabel. Den bygger på idén att överbelasta MATLAB:s kommandon för vektorer och matriser till analoga kommandon för funktioner och operatorer. Således, till exempel, medan SUM-kommandot i MATLAB lägger ihop elementen i en vektor, utvärderar SUM-kommandot i Chebfun en bestämd integral. På liknande sätt blir backslash-kommandot i MATLAB ett Chebfun-kommando för att lösa differentialekvationer.
Den matematiska grunden för Chebfun är numeriska algoritmer som involverar bitvis polynominterpolanter och Chebyshev-polynom , och det är härifrån namnet "Cheb" kommer. Paketet syftar till att kombinera känslan av symboliska datorsystem som Maple och Mathematica med hastigheten hos flyttalsnumeriska.
Chebfun-projektet är baserat på Mathematical Institute vid University of Oxford och initierades 2002 av Lloyd N. Trefethen och hans student Zachary Battles. Den senaste versionen, version 5.7.0, släpptes den 2 juni 2017.
Chebfun2, ett mjukvarusystem som utökar Chebfun till två dimensioner, gjordes allmänt tillgängligt den 4 mars 2013. Efter Chebfun2 gjordes Spherefun (förlängning av enhetssfären) och Chebfun3 (förlängning till tre dimensioner) offentligt tillgängliga i maj och juli 2016.
Funktioner
- Approximation av funktioner i 1D, inklusive funktioner med hopp
- Approximation av jämna bivariata funktioner (Chebfun2)
- Approximation av jämna trivariatfunktioner (Chebfun3)
- Approximation av smidiga funktioner på enhetssfären (Spherefun)
- Kvadratur
- Rootfinding
- 1D global optimering
- Bivariat och trivariat rotfinnande
- Vanliga differentialekvationer
- Partiella differentialekvationer
- Vektorkalkyl
Exempel användning
En användare kan börja med att initiera variabeln x, på intervallet [0,10], säg.
0 >> x = chebfun ( 'x' ,[ , 10 ]);
Denna variabel kan nu användas för att utföra ytterligare beräkningar, till exempel beräkning och plottning av rötter för en funktion:
>> f = sin ( x ) + sin ( x .^ 2 ); plot ( f ) >> r = rötter ( f ); håll ut, plot(r,f(r),'.r'), håll ut
Den bestämda integralen kan beräknas med:
>> summa ( f ) ans = 2,422742429006079
externa länkar
- Officiell hemsida
- Relaterade projekt och partiella ersättningar på andra språk: [1]