GNU Octave

Octave
Logo Octave
Logo programu
Ilustracja
Interfejs wersji 4 w środowisku graficznym Linuksa
Autor John W. Eaton i wsp.
Pierwsze wydanie 1.0.0 / 1994-02-17 17 lutego 1994(dts)
Aktualna wersja stabilna 9.1.0
(14 marca 2024) [±]
System operacyjny Linux/Unix, Windows, MacOS
Rodzaj język programowania, matematyka
Licencja GNU (General Public License)
Strona internetowa

GNU Octave – środowisko obliczeń oraz język programowania przeznaczony dla prowadzania obliczeń numerycznych. Octave jest wolnym odpowiednikiem środowiska MATLAB.

Octave dostępny jest na większości systemów uniksowych, jest rozprowadzany w postaci binarnej wraz z wieloma dystrybucjami Linuksa. Dostępna jest także wersja dla Microsoft Windows. Rozprowadzany jest na zasadach licencji GNU GPL.

Historia[edytuj | edytuj kod]

Prace nad Octave rozpoczęły się w 1988 roku. Pełną parą ruszyły one wiosną 1992 za sprawą Johna W. Eatona. Pierwsza wersja alpha ukazała się 4 stycznia 1993. Wersja 1.0 została wydana 17 lutego 1994. Najnowsza stabilna wersja środowiska nosi numer 8.2.0[1].

Podstawowe przykłady[edytuj | edytuj kod]

Podstawową strukturą danych w Octavie jest macierz.

Przykład trójwymiarowego wykresu stworzonego w Octave
octave:2> a=[3 1; 2 1] a =    3  1   2  1  octave:3> det(a)  # wyznacznik macierzy ans = 1  octave:4> inv(a)  # macierz odwrotna ans =     1  -1   -2   3  octave:5> cond(a)  # wskaźnik uwarunkowania macierzy ans = 14.933  octave:7> [a,a] ans =    3  1  3  1   2  1  2  1  octave:8> [a;a] ans =    3  1   2  1   3  1   2  1  octave:10> [v,e]=eig(a)  # wartości i wektory własne macierzy v =     0.80690  -0.34372    0.59069   0.93907  e =    3.73205  0.00000   0.00000  0.26795 

Język dostarcza również większość konstrukcji imperatywnych, m.in. if, while, for, function, np.:

a = [1,2,3]; function ret = kw(x,a)   ret = a(1)*x.^2+a(2)*x+a(3); endfunction 

Octave używa (zwykle) gnuplota do rysowania wykresów, np. exp(cos(x)):

octave:45> x=[-10:0.1:10]; octave:46> y=exp(cos(x))-1; octave:47> plot(x,y); 

lub

x=[0.001:0.0001:0.5]; y=sin(1./x); axis([0, 0.5, -1.1, 1.1]); grid on; plot(x,y,"-r;sin(1/x);"); 

Do wersji 2.1.72 istniała możliwość uzyskania polskich literek na wykresach, sterując gnuplotem z poziomu Octave. Przykład dla systemów uniksopodobnych:

octave:2> __gnuplot_set__ term x11 font "arial" 12 octave:3> __gnuplot_set__ encoding iso_8859_2 octave:4> plot(sinc(-10:.001:10),'r.;pliterki: ąęśżźćóńł;') 

Zobacz też[edytuj | edytuj kod]

Przypisy[edytuj | edytuj kod]

  1. Witryna GNU Octave. [dostęp 2023-05-09]. (ang.).

Linki zewnętrzne[edytuj | edytuj kod]