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
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
Podstawową strukturą danych w Octavie jest macierz.
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)):
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: ąęśżźćóńł;')