Difference between revisions of "GNU Octave Wiki"

From Octave
Jump to navigation Jump to search
(Quicker access to a reduced "Getting started" section. Move [https://staff.ti.bfh.ch/sha1/Labs/PWF/Documentation/OctaveAtBFH.pdf Octave introduction script] to Publications using Octave#Books.)
(โ†’โ€Ž๐ŸŒ External Links: Remove redundant links.)
ย 
(79 intermediate revisions by 7 users not shown)
Line 1: Line 1:
โˆ’
[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. 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 GNU 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].
ย ย 
โˆ’
== [[:Category:Installation|Installing]] ==
+
== โš™๏ธ [[:Category:Installation|Installing]] ==
ย ย 
โˆ’
* Get installers and sources from https://www.octave.org/download
+
Installation instructions for:
โˆ’
** [[Octave_for_MacOS_X#Installing_a_Mac_OS_X_Bundle|Beta installer for macOS]]
+
* <span style="width:15px; display:inline-block;">{{#fab:linux}}</span> [[Octave for GNU/Linux|GNU/Linux]], [[Octave for Android|Android]], and [[Octave for other Unix systems|other Unix systems]]
โˆ’
** [[Octave for GNU/Linux|GNU/Linux installation instructions]] and for [[Octave for other Unix systems|other Unix systems]]
+
* <span style="width:15px; display:inline-block;">{{#fab:apple}}</span> [[Octave for macOS|macOS]]
โˆ’
** [[Octave_for_Microsoft_Windows|Microsoft Windows installation instructions]]
+
* <span style="width:15px; display:inline-block;">{{#fab:windows}}</span> [[Octave for Microsoft Windows|Microsoft Windows]]
โˆ’
** [[Octave_and_separate_toolchain|Build Octave using a separate toolchain]] (custom built gcc version)
ย 
ย ย 
โˆ’
{{Note|GNU Octave {{Release}} is the current stable release}}
+
Get installers and sources from https://www.octave.org/download.
ย +
ย 
ย +
{{Note|'''GNU Octave {{Release}}''' is the current stable release.}}
ย ย 
ย 
Are you using an old version of Octave?ย  Check the [[Release History]] page to see how old it is.
ย 
Are you using an old version of Octave?ย  Check the [[Release History]] page to see how old it is.
ย ย 
โˆ’
== News ==
+
== โ“ Getting help ==
โˆ’
ย 
ย 
โˆ’
* '''[[OctConf_2018|OctConf 2018]]''' at CERN
ย 
โˆ’
ย 
ย 
โˆ’
* {{Release Date}} '''GNU Octave {{Release}}''' has been released (see above)!
ย 
โˆ’
ย 
ย 
โˆ’
* GNU Octave mentors four students at the [https://summerofcode.withgoogle.com/organizations/6259279704096768/ Google Summer of Code 2017].
ย 
ย ย 
โˆ’
== Getting help ==
+
* [https://octave.discourse.group Octave Discourse] - Forum for Octave users and developers.
โˆ’
ย 
+
* [[FAQ|Frequently asked questions (FAQ)]]
โˆ’
* Read the [https://www.gnu.org/software/octave/doc/interpreter GNU Octave documentation]
+
* [https://www.gnu.org/software/octave/doc/interpreter GNU Octave documentation]
โˆ’
* The [[FAQ|frequently asked questions (FAQ)]] list is good place to start with answers to questions regarding [[FAQ#General|what is Octave]], [[FAQ#Licensing_issues|licensing]], [[FAQ#What.27s_new_in_Octave|new features]], [[FAQ#What_documentation_exists_for_Octave.3F|documentation]], [[FAQ#Installation_issues_and_problems|installation]], [[FAQ#Coding|coding]], [[FAQ#How_can_I_get_involved_in_Octave_development.3F|contributing to Octave]], and more, are found there.
ย 
โˆ’
* Continue reading this wiki and feel free to add further content (please check that it is not already part of, or belongs in, the documentation and read the [[Contribution guidelines]]).
ย 
ย 
* [https://www.gnu.org/software/octave/support.html Other support options]
ย 
* [https://www.gnu.org/software/octave/support.html Other support options]
ย ย 
โˆ’
== [[Using Octave|Getting started]] ==
+
== ๐Ÿ’ก [[:Category:Resources|Getting started]] ๐Ÿ”ฐ ==
ย ย 
ย 
* [[Publications using Octave#Books|Books]]
ย 
* [[Publications using Octave#Books|Books]]
ย 
* [[Video tutorials|Videos]]
ย 
* [[Video tutorials|Videos]]
โˆ’
* [https://bagustris.github.io/octave-tutorial Short course]
+
* [[:Category:Resources|Tutorials and Examples]]
โˆ’
<br>
ย 
โˆ’
ย 
ย 
โˆ’
__TOC__
ย 
โˆ’
ย 
ย 
โˆ’
== Advanced topics ==
ย 
โˆ’
ย 
ย 
โˆ’
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:wiki.octave.org</nowiki>}} to a [https://www.google.com/search?&q=site%3Awiki.octave.org Google search]. Please read the [[Contribution guidelines]] first, if you want to contribute to this Wiki.
ย 
โˆ’
ย 
ย 
โˆ’
=== [[:Category:Packages|Packages]] ===
ย 
โˆ’
ย 
ย 
โˆ’
* [[OEP:pkg|Installing packages]]
ย 
โˆ’
* [[Creating packages]]
ย 
โˆ’
ย 
ย 
โˆ’
==== [[Octave-Forge]] ====
ย 
โˆ’
ย 
ย 
โˆ’
See also the list of Forge Wiki pages: [[:Category:Octave-Forge]]
ย 
โˆ’
ย 
ย 
โˆ’
* [[bim_package|bim package]] Solve Partial Differential Equations with a Finite Element method
ย 
โˆ’
* [[Control_package|Control package]]
ย 
โˆ’
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/CGI_programming_with_Octave CGI] Common Gateway Interface for Octave
ย 
โˆ’
* [[Dataframe_package|Dataframe package]] cell arrays on steroids
ย 
โˆ’
* [[Dicom_package|Dicom package]]
ย 
โˆ’
* [[Fem-fenics|fem-fenics]] Interface to [http://fenicsproject.org/ FEnics] FEM library
ย 
โˆ’
* [[Geometry_package|Geometry package]]
ย 
โˆ’
* [[Image package]]
ย 
โˆ’
* [[Image_acquisition_package|Image acquisition package]] Capture images, for example from v4l2 hardware like webcams
ย 
โˆ’
* [[Instrument_control__package|Instrument control package]]
ย 
โˆ’
* [[Interval_package|Interval package]] Real-valued interval arithmetic
ย 
โˆ’
* [[IO_package|I/O package]]
ย 
โˆ’
* [[Java_package|Java package]]
ย 
โˆ’
* [[Mechanics_package|Mechanics package]]
ย 
โˆ’
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/NcArray ncArray] High-level interface of accessing a single or a collection of NetCDF files as a multi-dimensional array
ย 
โˆ’
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/Octave-netcdf netcdf] matlab-compatible NetCDF package
ย 
โˆ’
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/NetCDF_toolbox_for_Octave octcdf] NetCDF package (old)
ย 
โˆ’
* [[ocs_package|OCS package]] Octave Circuit Simulator
ย 
โˆ’
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/Optimal_interpolation_Fortran_module_with_Octave_interface optiminterp] Optimal interpolation
ย 
โˆ’
* [[Parallel_package|Parallel package]]
ย 
โˆ’
* [[Sockets_package|Sockets package]]
ย 
โˆ’
* [[Symbolic package|Symbolic package]]
ย 
โˆ’
* [[TISEAN_package|TISEAN package]]
ย 
โˆ’
* [[Video_package|Video package]]
ย 
โˆ’
* [[sci_cosim|Scilab co-simulation package]]
ย 
โˆ’
* [[Zeromq_package|Zeromq package]] Zeromq bindings for Octave.
ย 
โˆ’
ย 
ย 
โˆ’
=== [[:Category:Resources|Tutorials/Examples]] ===
ย 
โˆ’
ย 
ย 
โˆ’
* [[Octave Basics]] - A short reference card to get started.
ย 
โˆ’
* [[:Category:Plotting tutorials|Plotting tutorials]]
ย 
โˆ’
* [[Tips and tricks]] - Guidelines to improve your coding skills.
ย 
โˆ’
* [[Cookbook]] - Several simple and useful examples.
ย 
โˆ’
* [[Octave load]] - Use liboctave functions to load variables from a file in Octave's binary format.
ย 
โˆ’
* [[Fortran]] - Accessing liboctave from a Fortran 2003 program.
ย 
โˆ’
* [[Octave fun]] - Coding can be fun -- miscellaneous more or less funny scripts
ย 
โˆ’
* [http://www.amiq.com/consulting/2014/11/21/how-to-connect-systemverilog-with-octave/ How to Connect SystemVerilog with Octave]
ย 
โˆ’
ย 
ย 
โˆ’
ย 
ย 
โˆ’
=== [[:Category:Development|Development]] ===
ย 
โˆ’
ย 
ย 
โˆ’
Find a longer list of relevant links for developers at the [[Developers]] page.
ย 
โˆ’
ย 
ย 
โˆ’
* [[Contribution guidelines]]
ย 
โˆ’
* [[Doxygen]] - Internal C++ code documentation
ย 
โˆ’
* [[International Characters Support]] - Using Octave in your own language.
ย 
โˆ’
* [[:Category:Editors|Editors]] - A list of editors supporting Octave syntax highlighting.
ย 
โˆ’
* [[4.2.0 Release Checklist]] ([[Bug Fix List - 4.2.0 Release|Bug Fix List]])
ย 
โˆ’
ย 
ย 
โˆ’
==== [[:Category:Building|Building]] ====
ย 
โˆ’
ย 
ย 
โˆ’
* [[Building]]
ย 
โˆ’
* [[Continuous Build]]
ย 
โˆ’
* [[Enable large arrays: Build octave such that it can use arrays larger than 2Gb.|Building Octave to use large arrays]]
ย 
โˆ’
ย 
ย 
โˆ’
==== [[:Category:Testing|Testing]] ====
ย 
ย ย 
โˆ’
* [[Tests|Testing source code]]
+
== ๐Ÿ“ฆ [[:Category:Packages|Packages]] ==
ย ย 
โˆ’
==== [[:Category:Packaging|Packaging]] ====
+
* [https://octave.org/doc/latest/Installing-and-Removing-Packages.html Installing packages]
ย +
* [https://gnu-octave.github.io/packages/ Octave Packages] &mdash; collection of packages and toolboxes
ย +
* '''[[:Category:Octave Forge|Octave Forge]]''' &mdash; former collection of above
ย ย 
โˆ’
* [[Create a MacOS X App Bundle Using MacPorts]]
+
== ๐Ÿ”ฌ [[:Category:Development|Development]] ==
โˆ’
* [[Windows_Installer|Create a Windows Installer using MXE]]
ย 
ย ย 
โˆ’
=== [[:Category:Academia|Academia]] ===
+
We always need more help improving Octave and there are many ways [https://www.gnu.org/software/octave/get-involved.html you can contribute]. You can help by fixing bugs, developing new features, answering questions on the mailing list or IRC channel, helping to improve this wiki or other web pages.
ย ย 
โˆ’
* [[Publications using Octave]] - A compilation of scientific publications making reference to GNU Octave (add yours!).
+
::* Get an overview about the [[:Category:Development|GNU Octave development]].
ย +
::* Take a look at our [[Projects|project ideas]] and [[Summer of Code - Getting Started | Summer of Code project
ย +
ideas]].
ย ย 
โˆ’
=== [[:Category:Project Ideas|Project Ideas]] ===
+
== ๐ŸŽ“ [[:Category:Academia|Academia]] ==
ย ย 
โˆ’
* [[Projects]]
+
* [[Publications using Octave]] &mdash; A compilation of scientific publications making reference to GNU Octave (add yours!).
โˆ’
* [[Summer of Code Project Ideas]]
ย 
ย ย 
โˆ’
== External Links ==
+
== ๐ŸŒ External Links ==
ย ย 
โˆ’
* [https://www.gnu.org/software/octave/ Octave Homepage]
+
* [https://octave.org Octave Homepage]
โˆ’
* [https://octave.sourceforge.io/ Octave Forge]
+
* [https://savannah.gnu.org/bugs/?group=octave Bug Tracker]
โˆ’
* [https://savannah.gnu.org/bugs/?group=octave GNU Octave - Bug Tracker]
+
* [https://savannah.gnu.org/task/?group=octave Task Tracker]
โˆ’
* [https://savannah.gnu.org/task/?group=octave GNU Octave - Task Tracker]
+
* [https://savannah.gnu.org/patch/?group=octave Patch Tracker]
โˆ’
* [https://savannah.gnu.org/patch/?group=octave GNU Octave - Patch Tracker]
+
* [https://savannah.gnu.org/hg/?group=octave Development Repository]
โˆ’
* [https://savannah.gnu.org/hg/?group=octave GNU Octave - Mercurial Repositories]
ย 
โˆ’
* [https://planet.octave.org/ Planet Octave] (collection of blog feeds featuring Octave developers and Summer of Code students)
ย 

Latest revision as of 23:54, 23 May 2021

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 6.3.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]

๐Ÿ“ฆ Packages[edit]

๐Ÿ”ฌ Development[edit]

We always need more help improving Octave and there are many ways you can contribute. You can help by fixing bugs, developing new features, answering questions on the mailing list or IRC channel, helping to improve this wiki or other web pages.

๐ŸŽ“ Academia[edit]

๐ŸŒ External Links[edit]