GNU Octave Wiki: Difference between revisions

From Octave
Jump to navigation Jump to search
(→‎⚙️ Installing: Remove FontAwesome plugin.)
 
(296 intermediate revisions by 51 users not shown)
Line 1: Line 1:
[http://www.octave.org 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. Octave is normally 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 that most programs are easily portable.
[https://www.gnu.org/software/octave/ 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 program is named after [https://en.wikipedia.org/wiki/Octave_Levenspiel Octave Levenspiel], a former professor of the principal author. GNU Octave is normally used through its interactive interface ([https://en.wikipedia.org/wiki/Command-line_interface CLI] and [https://en.wikipedia.org/wiki/Graphical_user_interface GUI]), but it can also be used to write non-interactive programs. The project was conceived around 1988 and at first it was intended to be a companion to a chemical reactor design course. The GNU Octave language is largely compatible to [https://en.wikipedia.org/wiki/MATLAB Matlab] so that most programs are easily portable. In addition, functions known from the C standard library and from UNIX system calls and functions are supported. C/C++ and Fortran code can be called from Octave by creating [https://octave.org/doc/interpreter/Getting-Started-with-Oct_002dFiles.html Oct-Files], or using Matlab compatible [https://octave.org/doc/interpreter/Mex_002dFiles.html Mex-Files].


This wiki is intended to supplement the [http://www.gnu.org/software/octave/doc/interpreter Octave documentation]. Before adding content, please check that it is not already part of, or belongs in, the [http://www.gnu.org/software/octave/doc/interpreter Octave's documentation].
== ⚙️ [[:Category:Installation|Installing]] ==


== Octave FAQ ==
Installation instructions for:
* [[Octave for GNU/Linux|GNU/Linux]], [[Octave for Android|Android]], and [[Octave for other Unix systems|other Unix systems]]
* [[Octave for macOS|macOS]]
* [[Octave for Microsoft Windows|Microsoft Windows]]


The [[FAQ]] is a list of frequently asked questions (FAQ) for Octave users and a good place to start.
Get installers and sources from https://www.octave.org/download.


== Octave Conference 2012 ==
{{Note|'''GNU Octave {{Release}}''' is the current stable release.}}


Planning for [[OctConf 2012]] is under way. Newbies, experienced users, aspiring developers, and experienced developers are all encouraged to attend.
Are you using an old version of Octave?  Check the [[Release History]] page to see how old it is.


== Table of contents ==
== ❓ Getting help ==


Below is a temporary attempt to organize the "most wanted" pages of the Wiki. A list of all pages on the wiki can be seen [[Special:AllPages|here]]. To locate something specific, try the wiki's search box, or prepend {{Codeline|<nowiki>site:http://www.octave.org/wiki/</nowiki>}} to a [https://www.google.com/search?&q=site%3Ahttp%3A%2F%2Fwww.octave.org%2Fwiki google search].
* [[FAQ]]
* [https://docs.octave.org/quickref Octave Quick Reference PDF]
* [https://docs.octave.org/latest Full documentation]


=== Installation Instructions for Windows, MacOS X and GNU/Linux ===
* [https://octave.discourse.group Octave Discourse] - Forum for Octave users and developers.
* [[Octave for Windows]]
* [https://octave.org/support Other support options]
* [[Installing Win32 Distribution]]
* [[Octave for MacOS X]]
* [[Octave for GNU/Linux]]


=== Building Octave ===
== 💡 [[:Category:Resources|Getting started]] 🔰 ==
* [[Build from source]]
* [[Mercurial (hg) cheat sheet]]
* [[Tests|Testing Source Code]]
* [[Octave for GNU Linux: Binary Octave packages for GNU Linux|GNU/Linux binary packages]]
* [[Octave for Mac|Octave for MacOS (minimalistic)]]
* [[Create a MacOS X App Bundle Using MacPorts]]
* [[Enable large arrays: Build octave such that it can use arrays larger than 2Gb.|Building Octave to Use Large Arrays]]


=== Octave Forge ===
* [[Publications using Octave#Books|Books]]
* [[Octave_Forge|Octave Forge and Installing Packages]]
* [[Video tutorials|Videos]]
* [[Creating_packages|Creating Packages]]
* [[:Category:Resources|Tutorials and Examples]]


==== Available Packages ====
== 🔬 [[:Category:Development|Development]] ==
* [[Dicom_package|Dicom]]
* [[Geometry_package|Geometry]]
* [[IO_package|I/O]]
* [[Java_package|Java]]
* [[Mechanics_package|Mechanics]]
* [[Robotics_package|Robotics]]
* [[Sockets_package|Sockets]]
* [[Video_package|Video]]


=== Editors & Octave ===
We always need more help improving Octave and there are many ways [https://www.gnu.org/software/octave/get-involved.html you can contribute] (fixing bugs, developing new features, answering questions on [https://octave.discourse.group/ Octave Discourse], ...).
* [[Gedit]]
* [[Emacs]]
* [[VIM]]
* [[Kate]]


=== Plotting tutorial ===
::* Get an overview about the [[:Category:Development|GNU Octave development]].
All or most of the information about plotting in Octave can be found in the manual and on the internet. This information can be too scattered over different resources for a new user to find his/her way into solving a plotting problem/need. This tutorial should be considered as the 'recipe text' by examples if you consider the manual as a 'recipe ingredients only'.
::* Take a look at our [[Projects|project ideas]] and [[Summer of Code - Getting Started | Summer of Code project
* [[Recap of the hierarchy of each plot element]]
ideas]].
First of all, Octave aims at being compatible with Matlab (TM) as much as possible, so the graphics part is very similar too to Matlab. In Octave the first choice to make is the 'graphics_toolkit'. Standard is the 'gnuplot' toolkit using the Gnuplot software package (http://www.gnuplot.info). The second choice is 'fltk' (http://www.fltk.org). You might want to try to test both of them for your plotting aims to see which solves your problem.
* [[Changing text elements (label, title)]]
* [[More control over subplots]]


=== Miscellaneous ===
== 📦 [[:Category:Packages|Packages]] ==
* [[Tips and tricks]]
* [[Special:AllPages|All Pages]]
* [[Publications using Octave]]


== External Links ==
* [https://docs.octave.org/latest/Installing-and-Removing-Packages.html Installing packages]
* [http://www.gnu.org/software/octave/ Octave Homepage]
* [https://packages.octave.org Octave Packages] &mdash; collection of packages and toolboxes
* [http://octave.sourceforge.net/ Octave Forge]
 
* [https://savannah.gnu.org/bugs/?group=octave GNU Octave - Bug Tracker]
==  📝[[:Category:User Contributed Code|User Contributed Code]] ==
* [https://savannah.gnu.org/task/?group=octave GNU Octave - Task Tracker]
 
* [https://savannah.gnu.org/patch/?group=octave GNU Octave - Patch Tracker]
* [[:Category:User Contributed Code|Category User Contributed Code]] &mdash; A compilation of user provided code (✏️ add yours!)
* [https://savannah.gnu.org/hg/?group=octave GNU Octave - Mercurial Repositories]
 
* [http://planet.octave.org Planet Octave] (site summary for blogs from Octave's [http://http://code.google.com/soc/ GSoC] students)
== 🎓 [[:Category:Academia|Academia]] ==
 
* [[Publications using Octave]] &mdash; A compilation of scientific publications making reference to GNU Octave (add yours!).
 
== 🌐 External Links ==
 
* [https://octave.org Octave Homepage]
* [https://savannah.gnu.org/bugs/?group=octave Bug Tracker]
* [https://savannah.gnu.org/task/?group=octave Task Tracker]
* [https://savannah.gnu.org/patch/?group=octave Patch Tracker]
* [https://savannah.gnu.org/hg/?group=octave Development Repository]

Latest revision as of 14:51, 4 March 2023

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 program is named after Octave Levenspiel, a former professor of the principal author. GNU Octave is normally used through its interactive interface (CLI and GUI), but it can also be used to write non-interactive programs. The project was conceived around 1988 and at first it was intended to be a companion to a chemical reactor design course. The GNU Octave language is largely compatible to Matlab so that most programs are easily portable. In addition, functions known from the C standard library and from UNIX system calls and functions are supported. C/C++ and Fortran code can be called from Octave by creating Oct-Files, or using Matlab compatible Mex-Files.

⚙️ Installing[edit]

Installation instructions for:

Get installers and sources from https://www.octave.org/download.

Info icon.svg
GNU Octave 9.1.0 is the current stable release.

Are you using an old version of Octave? Check the Release History page to see how old it is.

❓ Getting help[edit]

💡 Getting started 🔰[edit]

🔬 Development[edit]

We always need more help improving Octave and there are many ways you can contribute (fixing bugs, developing new features, answering questions on Octave Discourse, ...).

📦 Packages[edit]

📝User Contributed Code[edit]

🎓 Academia[edit]

🌐 External Links[edit]