# GNU Octave

- Free • Open Source
- Mac
- Windows
- Linux
- BSD

▼

### What is GNU Octave?

Octave is a computer program for performing numerical computations which is mostly compatible with MATLAB. It is part of the GNU Project. It is free software under the terms of the GNU General Public License.

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. The Octave interpreter can be run in GUI mode (new in version 4.0.0), as a console, or invoked as part of a shell script. Octave is normally used through its interactive interface, but it can also be used to write non-interactive programs.

GNU Octave is a high-level interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, and for performing other numerical experiments. It also provides extensive graphics capabilities for data visualization and manipulation. The Octave interpreter can be run in GUI mode (new in version 4.0.0), as a console, or invoked as part of a shell script. Octave is normally used through its interactive interface, but it can also be used to write non-interactive programs.

Show full description ▾

### Features Vote on or suggest new features

### Comments and Reviews Post a comment / review all • positive • negative relevance • date

### Tags

- Linear Algebra
- numerical-analysis
- numerical-computations
- Math

### Lists containing GNU Octave

Mathematics • msori's standard installation • FavoritesGNU Octave

### Summary

Our users have written 3 comments and reviews about GNU Octave, and it has gotten 200 likes

- Developed by
**The Octave Project** - Open Source and Free product.
- Average rating of 3.5
- 59 alternatives listed

#### Popular alternatives

View allGNU Octave was added to AlternativeTo by nandhp on Apr 15, 2009 and this page was last updated Jan 18, 2022. GNU Octave is sometimes referred to as Octave.

### Recent user activities on GNU Octave

- rater liked GNU Octavera15 days ago
- burnx50 liked GNU Octavebu21 days ago
- altenativeto liked GNU Octaveal29 days ago

★★★★★Matlab is shit; In Octave you can use bash commands and use tab key to see all possible commands in vi like editor. Plus its free. Best Open Source alternative to matlab

★★★★★Unfortunately it tends to be the case with many OSS projects that they forever drag behind as a cheap knock-off of some established, already working commercial product. You have it with Gimp and Photoshop, Desktop Linuxes and Windows, MS Office and OpenOffice derivatives, and so on.

Octave syntax is very similar to Matlab, it would probably literally run Matlab files with no modification. So you won't need to adjust to syntax, or most of the libraries - they're all almost exactly the same.

The reverse is not necessarily true - Octave tries to "improve" on Matlab syntax and libraries. The differences are minor, and in my opinion extremely trivial. I don't see why anyone would care one way or the other. I guess with Octave's conventions, your life as the coder is 0.0001% easier (Matlab is already very good at coming up with "nice shortcuts"), so what's not to like? Well, thanks to this, there's a good chance Matlab will NOT run Octave code as is (basic things like the load function are altered). This is even more annoying because Octave uses .m by default, and

pretendsto play nice with Matlab. Don't be fooled- if you use both side by side, keep them completely separate from each other.Oh, there's converters to make Octave code Matlab compatible, but they're not effortless to use. Why bother for a 0.0001% gain?

Now that's the code. But unless you're a crazy person who only writes Matlab code in Notepad, and only uses the IDE to execute it, there is a

hugegap in Octave which is immediately obvious: There's no GUI. There's no variable editor. There's no drop-down for selecting a plot type. There's no command history. There's nothing! It's just CLI shell. On Windows, "Octave" is basically a glorified MS-DOS prompt! If I need to explain why this is bad, clearly you have no idea whatsoever what Matlab is, what it does, or what it is for.The CLI itself is buggy and has annoying quirks sometimes. Lines are not wrapped but instead you can only see part of a long command. Not very helpful, especially with long directory paths, plus the clunky Windows CLI (and all the drama with selecting/copying and what not) makes it even more annoying (although I guess it's sort of "my fault" for not using it on Linux). Besides that, in the sense of doing everything that Matlab's command window does, I guess it's fairly decent. The ease of doing those same things is another matter. As I said, the

otherhelpful things Matlab provides, like the variable editor, code completion, pressing F1 for documentation and so on, are nowhere to be seen.That brings me to another important point: Documentation. Octave docs don't suck, they're actually quite good. But thing is, the competition isn't just "quite good", it's bloody amazing. Hell, you're better off using Matlab function docs as reference when using Octave- the explanations are just far more comprehensive, and there are more examples. Speaking of examples, maybe you're wondering, "does Octave have nice helpful demos like Matlab?" Haha! Yeah, right.

Lastly, plots. Octave appears to use GNUplot for this. The results aren't nearly as pretty as Matlab's. Probably Matlab has a wider selection of plot kinds (I couldn't see because NO DROPDOWN). Rotating and things like that are slow. Interaction with the plot is extremely limited (unlike Matlab where you can do all sorts of things to the plot from its GUI) and noticeably slow. Remember I said Octave doesn't suck? It doesn't, but GNUplot sure does.

Oh, and, Matlab has almost no bugs. Octave has quite a few, especially if you are not careful about which packages to install. Your own code doesn't have enough bugs to keep you entertained? Keep wishing the environment would throw in a few of its own? Boy, you're gonna

loveOctave.I probably make it sound worse than it is, Octave really isn't that much worse than Matlab (with the obvious, glaring shortcomings such as the interface). In fact, if you find yourself unable to obtain Matlab, you could probably use Octave with very few problems, provided you do what you already know how to do in Matlab. As for learning the Matlab/Octave syntax and libraries, you probably don't want Octave. And at the end of the day, if you need to use Matlab, probably your company or institution will have/buy a licence. And at that point, there is absolutely no reason to use Octave.

You might be wondering, as I once did, how another popular software, Mathematica, fits into all this. It doesn't. Mathematica does different things than Matlab. If you need to do Matlab stuff, but don't have Matlab, use Octave. Don't do numerical computation in Mathematica, that's silly. When you are doing purely symbolic computation, cellular automata, data visualization, function plotting and the like, especially when it gets really complicated, Mathematica will make your life easier although you could probably realistically do it in Matlab, too.

There's other free suites with similar functionality to the above three. Scilab is probably the most prominent. If unsure, don't bother with them. Just use Matlab (or failing that, Octave).

Hello!

Sorry, I am the absolute beginner...can someone help me to find way to compute inverse matrix in octave?

Many thanks!