Program tygodnia
GIMP 2.6.12

Ocena: 8,8
icon
Polecamy
Test Simraceway SRW-S1

Kierownica z Formuły 1

Octave 3.4.3

 
Programy > Edukacja i nauka > Matematyka i statystyka
wersja stabilna 32-bit

Octave to darmowe, otwarte środowisko do przeprowadzania zaawansowanych obliczeń numerycznych. Program pozwala m.in. na wykonywanie działań na liczbach rzeczywistych, zespolonych, wektorach, macierzach, obsługuje także zakresy, tablice, pętle, funkcje i równania.

Aplikacja jest używana w kręgach akademickich i przemyśle a swoją popularność zawdzięcza wysokiej zgodności z komercyjnym oprogramowaniem MATLAB firmy The MathWorks. Octave działa w trybie konsoli i nie posiada graficznego interfejsu użytkownika, potrafi jednak tworzyć graficzne reprezentacje dla wykonywanych obliczeń w postaci wykresów 2D i 3D.

Program posiada bogatą bibliotekę dodatków tworzonych przez aktywną społeczność skupioną wokół programu.

r   e   k   l   a   m   a

Recenzje (1)

avatar
Jaahquubel_, 15.11.2011 15:20
wieloplatformowość, przydatne funkcje nieobecne w Matlabie, otwartość, ciągły rozwój
obliczenia symboliczne, grafika, wydajność?

Na wstępie muszę zaznaczyć, że sposobów użytkowania pakietu numerycznego jest tyle, co jego użytkowników, co powoduje, że każda recenzja jest jeszcze bardziej subiektywna.

Programów, które mają robić to samo, co Octave, jest kilka. Octave wyróżnia się tym, że z jednej strony jest darmowy i otwarty, a z drugiej strony używa tego samego prostego języka programowania i tych samych komend, co Matlab (płatny, zamknięty). Z założenia, kod działający w Matlabie ma działać w Octave'ie. Założenie to jest pierwszą rzeczą, z której (według mnie), Octave'a należy rozliczać. I jak w praktyce to wygląda? Nieźle, ale do ideału daleko. Daleko, bo jest wiele obszarów funkcjonalności Matlaba, o których w Octave'ie możemy na razie pomarzyć (tj. np. grafika 3D, animacje), albo które w wolnym odpowiedniku nie działają tak samo (wygodnie) - mam tu na myśli np. grafikę 2D czy obliczenia symboliczne. Nie znaczy to jednak, że w Octave'ie nie da się sporządzić wykresu - da się, spokojnie, różnice są w szczegółach i to nie koniecznie dotyczących możliwości, a sposobu zrobienia danej rzeczy. Okno wykresu w Matlabie daje możliwość obracania, powiększania, pomniejszania itp., oraz zapisu obrazka. W Octave'ie obracać się nie da, a zapis jest tylko z linii poleceń (co znów ma oczywiście niebagatelne znaczenie przy pisaniu programów, które mają automagicznie wypluwać obrazki na dysk). Octave nie ma po prostu swojego GUI, działa w konsoli (wierszu poleceń w Windowsach), a grafikę wysyła do Gnuplota. Brak GUI jest dla niektórych wielką wadą, czego pojąć nie mogę. Dla mnie to akurat zaleta, ale jak ktoś bardzo potrzebuje, to i tak są nakładki graficzne (XOctave, QtOctave, Koctave).

Pomijając jednak bardziej zaawansowane funkcje graficzne, obliczenia symboliczne i GUI (czyli tak naprawdę sprawy z pogranicza celu istnienia takiego oprogramowania) mogę śmiało powiedzieć, że (jak dla mnie) jest dobrze.

Octave i Matlab korzystają w bardzo wielu przypadkach z dokładnie tych samych standardowych algorytmów numerycznych. Różnice mogą się pojawić jedynie na poziomie implementacji czy kompilacji, co w efekcie może np. prowadzić do różnych, ale równie poprawnych wyników numerycznych (błąd obliczeń jest takiego samego rzędu, ale np. Octave przeszacuje, a Matlab nie doszacuje).

Życiowy przykład. Student w ramach projektu testuje algorytm na swoim komputerze, w Octave'ie. W konkretnym przykładzie wychodzi mu błąd obliczeń 4,4409e-16, czyli 2*eps, gdzie eps to najmniejsza wartość, o którą dwie liczby mogą się różnić w Matlabie/Octave'ie w systemie 32-bitowym. Następnie student przynosi projekt do oceny i sprawdzający uruchamia ten sam przykład w Matlabie w pracowni i dostaje błąd -6,6613e-16, czyli -3*eps. Taka różnica, to żadna różnica.
Są ludzie, którzy narzekają na pewne konkretne braki w Octave'ie (np. w kwestii wydajności). Oczywiście, może są algorytmy, które w Octave'ie są ewidentnie gorsze (mniej wydajne, mniej dokładne, wolniej zbieżne itp), niż w Matlabie, ale ja takich sytuacji nie doświadczyłem. Nie miałem też dotąd okazji porównania Octave'a i Matlaba na tej samej maszynie i tym samym systemie. Inna sprawa, że Matlab też bezbłędny nie jest i potrafi się wywalić na prostym poleceniu.

Nie zakłada się, aby każdy kod działający w Octave'ie działał w Matlabie. Z punktu widzenia użytkownika Matlaba to źle, a z punktu widzenia użytkownika Octave'a to bardzo dobrze. Octave posiada masę drobiazgów ułatwiających życie, a nieobecnych u konkurenta. W efekcie operacja, która w Octave'ie jest realizowana jednym prostym poleceniem, w Matlabie jest czasem realizowana w trzech-pięciu liniach kodu, a nawet wymaga użycia jakiejś dodatkowej zmiennej i warunku logicznego.
Poza obliczeniami numerycznymi, Octave'a można używać jako prostego języka skryptowego wysokiego poziomu do pisania podręcznych programów. Ale o tym to już napiszę na blogu.

Ja osobiście, nawet gdybym miał na swoim komputerze zainstalowanego Matlaba, na co dzień i tak używałbym Octave'a.

 
 
 
 
9,3
ocena
Data aktualizacji07.01.2012
Rozmiar pliku140,29 MB
ProducentJohn W. Eaton
Licencjabezpłatna
Systemy operacyjneWindows 2000 / XP / Vista / 7
Liczba pobrań9 508
Szczegółowe oceny
:
9,0
Użytkownicy:
9,5 (6)
 
 
 
 
Publikacje powiązane
Czytelnicy blogują - tygodniowy przegląd bloga dobrychprogramów
ACTA, cenzura Sieci, Linux i mobilne systemy operacyjne - to tylko niektóre tematy poruszane w...
Nagradzamy autorów recenzji programów!
Nagradzamy kolejnych użytkowników, którzy opublikowali w naszym serwisie recenzje swoich ulubionych...
GNU Octave 3.0.0
Po jedenastu latach od wydania wersji 2.0 ukazała się stabilna wersja 3.0 programu GNU Octave,...

Komentarze (10)  

AvatarUżytkownik jest nieaktywny
Jaahquubel_ | 27.01.2012 16:42#10

@adsew | 08.01.2012 1:53
Wygląda zupełnie jak Matlab - dla wielu to zaleta.
A jak działa edytor? Potrafi inteligentnie wcinać linie?

AvatarUżytkownik jest nieaktywny
adsew | 08.01.2012 1:53#9

Może kogoś zainteresuje ciekawy GUI
http://guioctave.com/?page_id=2

AvatarUżytkownik jest nieaktywny
adao1003 | 16.11.2011 21:12#8

to jest też na linuxa

AvatarUżytkownik jest nieaktywny
Jaahquubel_ | 15.11.2011 15:28#7

@Elainee
Może to:
http://wiki.octave.org/wiki.pl?OctaveForWindows
Punkt 1.3

Avatar
Elainee (niezalogowany) | 16.10.2011 13:45#6

Ktoś zna może źródło do stabilnej wersji 3.4.3 dla Windowsa? niestety aktualna wersja 3.2.4 ma trochę błędów, które są naprawione w 3.4.3 jednak ftp na stronie Octave pokazuje pliki przeznaczone wyłącznie dla Linuksa i Mac OS.
Poza tym jest świetny opensource'owy program w stosunku do komercyjnego Matlaba.

Avatar
emenyx (niezalogowany) | 29.11.2010 22:18#5

b. fajny program, przydal mi sie do ekonometri :)

Avatar
jackoo3 (niezalogowany) | 23.11.2010 19:43#4

Żeby mieć gui pod Windowsem warto zainstalować Xoctave. To mały programik, w którym wskazujemy tylko ścieżkę do Octave i już możemy się cieszyć wyglądem Matlaba. Ale najbardziej rozbudowany interfejs (m.in kreatory itp) ma Qtoctave. Można go zainstalować na Linuksie (jest w repo) i na Windowsie.

AvatarUżytkownik jest nieaktywny
iluzion | 02.04.2010 19:29#3

Jeden z najlepszych programów dostępnych za darmo. Nie jest aż tak uciążliwy w obsłudze. W większości przypadków wystarcza Notepad++ uruchamiany poleceniem edit. Jeżeli to kogoś nie satysfakcjonuje to może doinstalować plugin octavenb do Netbeansa https://octavenb.dev.java.net/servlets/ProjectProcess?tab=2

Ps Jeśli ktoś nie wykorzystuje oct2mat to radzę nie zaznaczać przy instalacji tego dodatkowego pakietu, gdyż powoduje on w tej wersji "zamarzanie" okna GNU Plota przy wyświetlaniu grafiki. Po instalacji w razie problemów można skorzystać z polecenia "pkg unload oct2mat".

Avatar
harlow (niezalogowany) | 02.04.2010 13:02#2

faktycznie dobry
ale nieco inny w obsłudze od freemata i to na początku sprawiało mi sporo problemów

Avatar
rixi (niezalogowany) | 02.04.2010 6:19#1

Bardzo dobry program, ale trochę uciążliwy w obsłudze

Dodaj komentarz

Zasady publikowania komentarzy
Autor
Treść