GNU Octave, the open source alternative to MatLab

gnu-octave-logo-lnx

GNU Octave is a high-level interpreted language, primarily intended for numerical calculations. Tal and as the name implies Octave is part of the GNU project and it is considered the free equivalent of MATLAB.
Provides capabilities for the numerical solution of linear and nonlinear problems and to perform other numerical experiments.

It also provides extensive graphical capabilities for data visualization and manipulation. Octave is typically used through its interactive command-line interface, but it can also be used to write non-interactive programs.

The Octave language is quite similar to Matlab, so most programs are easy to transport.

Among its main characteristics we can highlight:

  • Octave is written in C ++ using the STL library.
  • It has an interpreter for its own language (syntax almost identical to Matlab) and allows interactive or batch execution.
  • Its language can be extended with functions and procedures, through dynamic modules.
  • It uses other GNU programs to offer the user the ability to create graphics for later printing or saving (Grace).
  • Within the language it also behaves like a command console (shell). This allows you to list directory contents, for example.
  • Besides running on Unix platforms, it also runs on Windows.
  • You can upload files with Matlab functions (recognizable by the .m extension).
  • You have help in Spanish.

About GNU Octave 5.1.0 version 5.1.0

GNU_Octave

Today GNU Octave is on its version 5.1.0 (the first release of the 5.x branch), a version that was released just over a week ago.

In the new version, work continued to improve compatibility with Matlab, new functions were implemented, and the rendering subsystem was reworked.

A number of mov * functions have been added to pan the visible window over an area of ​​arbitrary size, as well as the clearvars, isfile, isfolder, openfig, ordeig, savefig, and uitable functions.

Significantly up to 25 times the performance of the functions to work with numerical series has been increased. The functions fminsearch, fminbnd, and fminunc are reduced to a Matlab-compatible form. To use fast Fourier transform, the FFTW library is now required (support for work via FFTPACK has been discontinued).

GNU Octave 5.1.0 introduces many enhancements to the graphical rendering system. For output to raster formats (eg PNG or JPEG), the OpenGL-based drawing method is used by default (raster mode "-opengl" instead of vector "-painters").

Instead of the OSMesa library, the capabilities to draw in the buffer provided by the Qt library (QOffscreenSurface class) are used for output to files.

The Qt library is now a required dependency for the GUI to work (Qt 4.8 compatible, but Qt 5 recommended).

Added support for High Pixel Density (HiDPI) displays where DPIs exceed 96. New options have been implemented to distribute content on a page during printing (PDF and PostScript generation): "-fillpage" and "-bestfit". New "-ddumb" print mode was added, in which information is recorded in the form of ASCII graphics.

How to install GNU Octave on Ubuntu and derivatives?

Due to the popularity that GNU Octave has begun to gain, some Linux distributions have included this application within their official repositories of which include Debian, Ubuntu, Fedora, Gentoo, and openSUSE. These packages are created by volunteers.

So in our case we can find the application directly in our software center or by installing from the terminal.

Unfortunately the version contained in the repositories is a bit backward so the new versions released take time to be updated in the Ubuntu repositories.

Fortunately GNU Octave developers offer us a way to generate installation for Linux users through Flatpak packages.

So the only requirement is to have Flatpak support in our system. To perform the installation, we are only going to open a terminal and in it type the following command:

flatpak install flathub org.octave.Octave

Leave a Comment

Your email address will not be published. Required fields are marked with *

*

*

  1. Responsible for the data: Miguel Ángel Gatón
  2. Purpose of the data: Control SPAM, comment management.
  3. Legitimation: Your consent
  4. Communication of the data: The data will not be communicated to third parties except by legal obligation.
  5. Data storage: Database hosted by Occentus Networks (EU)
  6. Rights: At any time you can limit, recover and delete your information.