GNU Octave Wiki: Difference between revisions

From Octave
Jump to navigation Jump to search
m (→‎Advanced topics: fix Google search tip)
(→‎⚙️ Installing: Remove FontAwesome plugin.)
 
(142 intermediate revisions by 27 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 http://octave.org/download
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]]


{{Note|GNU Octave 4.0 is the current stable release}}
Get installers and sources from https://www.octave.org/download.


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


* '''GNU Octave 4.0''' has been released (see above)!
Are you using an old version of Octave?  Check the [[Release History]] page to see how old it is.
<br>
* [[File:Octconf2015Logo.png|x120px||link=OctConf_2015]]
<br>


* Octave has been accepted (again) as a mentoring organisation for the European Space Agency Summer of Code... IN SPACE programme: http://sophia.estec.esa.int/socis2015. If you want to apply, use the same instruction provided GSoC application: [[Summer of Code Project Ideas]]
== ❓ Getting help ==


== Getting help with GNU Octave ==
* [[FAQ]]
* [https://docs.octave.org/quickref Octave Quick Reference PDF]
* [https://docs.octave.org/latest Full documentation]


* Read the [https://www.gnu.org/software/octave/doc/interpreter GNU Octave documentation]
* [https://octave.discourse.group Octave Discourse] - Forum for Octave users and developers.
* 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.
* [https://octave.org/support Other support options]
* 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]
<br>


__TOC__
== 💡 [[:Category:Resources|Getting started]] 🔰 ==


== Advanced topics ==
* [[Publications using Octave#Books|Books]]
* [[Video tutorials|Videos]]
* [[:Category:Resources|Tutorials and Examples]]


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:Development|Development]] ==


=== [[:Category:Packages|Packages]] ===
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], ...).
* [[OEP:pkg|Installing packages]]
* [[Creating packages]]


==== [[Octave-Forge]] ====
::* 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]].


See also the list of Forge Wiki pages: [[:Category:Octave-Forge]]
== 📦 [[:Category:Packages|Packages]] ==


* [[bim_package|bim]] Solve Partial Differential Equaltions with a Finite Element method
* [https://docs.octave.org/latest/Installing-and-Removing-Packages.html Installing packages]
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/CGI_programming_with_Octave CGI] Common Gateway Interface for Octave
* [https://packages.octave.org Octave Packages] &mdash; collection of packages and toolboxes
* [[Dataframe_package|Dataframe]] cell arrays on steroids
* [[Dicom_package|Dicom]]
* [[Fem-fenics|fem-fenics]] Interface to [http://fenicsproject.org/ FEnics] FEM library
* [[Geometry_package|Geometry]]
* [[Image_acquisition_package|Image acquisition]] Capture images, for example from v4l2 hardware like webcams
* [[Instrument_control__package|Instrument control]]
* [[Interval_package|Interval]] Real-valued interval arithmetic
* [[IO_package|I/O]]
* [[Java_package|Java]]
* [[Mechanics_package|Mechanics]]
* [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)
* [http://modb.oce.ulg.ac.be/mediawiki/index.php/Optimal_interpolation_Fortran_module_with_Octave_interface optiminterp] Optimal interpolation
* [[Parallel_package|parallel]]
* [[Sockets_package|Sockets]]
* [[Video_package|Video]]


=== [[:Category:Editors|Editors]] ===
== 📝[[:Category:User Contributed Code|User Contributed Code]] ==
* [[Gedit]]
* [[Emacs]]
* [[Nano]]
* [[Vim]]
* [[Kate]]
* [http://octclipse.sourceforge.net Octclipse] (Windows and GNU/Linux only.  The Octclipse developers are seeking individuals to assist with MacOS X support.)
* [https://sites.google.com/site/domainmathide/ DomainMath IDE] (Windows,GNU/Linux and Mac OS.)
* [https://bitbucket.org/jgpallero/octave-sh GNU Octave syntax highlight files] (Syntax highlight definitions for some editors. Contibutions are welcome)


=== [[:Category:Resources|Tutorials/Examples]] ===
* [[:Category:User Contributed Code|Category User Contributed Code]] &mdash; A compilation of user provided code (✏️ add yours!)
* [[Octave Basics]] - For those just getting started.
* [https://staff.ti.bfh.ch/sha1/Labs/PWF/Documentation/OctaveAtBFH.pdf Octave introduction script]
* [[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
* [[Video tutorials]]
* [[:Category:Plotting tutorials|Plotting tutorials]]
* [[Interfacing Octave with other languages]]
* [http://www.amiq.com/consulting/2014/11/21/how-to-connect-systemverilog-with-octave/ How to Connect SystemVerilog with Octave]


=== [[:Category:Development|Development]] ===
== 🎓 [[:Category:Academia|Academia]] ==
* [[4.0 Release Checklist]] - Release procedure for next major version of Octave (includes GUI support).
* [[Bug Fix List - 4.0 Release]] - Bug List to fix before 4.0 release.


* [[International Characters Support]] - Using Octave in your own language.
* [[Publications using Octave]] &mdash; A compilation of scientific publications making reference to GNU Octave (add yours!).
* [[Octave for Microsoft Windows]]
* [[Octave for MacOS X]]
* [[Octave for GNU/Linux]] and [[Octave for other Unix systems|other Unix systems]]


==== [[:Category:Building|Building]] ====
== 🌐 External Links ==
* [[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]] ====
* [https://octave.org Octave Homepage]
* [[Tests|Testing source code]]
* [https://savannah.gnu.org/bugs/?group=octave Bug Tracker]
==== [[:Category:Packaging|Packaging]] ====
* [https://savannah.gnu.org/task/?group=octave Task Tracker]
* [[Create a MacOS X App Bundle Using MacPorts]]
* [https://savannah.gnu.org/patch/?group=octave Patch Tracker]
* [[Windows_Installer|Create a Windows Installer using MXE]]
* [https://savannah.gnu.org/hg/?group=octave Development Repository]
 
=== [[:Category:Academia|Academia]] ===
* [[Publications using Octave]] - A compilation of scientific publications making reference to GNU Octave (add yours!).
 
=== [[:Category:Project Ideas|Project Ideas]] ===
* [[Projects]]
* [[Summer of Code Project Ideas]]
 
== External Links ==
* [http://www.gnu.org/software/octave/ Octave Homepage]
* [http://octave.sourceforge.net/ Octave Forge]
* [https://savannah.gnu.org/bugs/?group=octave GNU Octave - Bug Tracker]
* [https://savannah.gnu.org/task/?group=octave GNU Octave - Task Tracker]
* [https://savannah.gnu.org/patch/?group=octave GNU Octave - Patch Tracker]
* [https://savannah.gnu.org/hg/?group=octave GNU Octave - Mercurial Repositories]
* [http://planet.octave.org Planet Octave] (blogs from Octave's [https://www.google-melange.com/gsoc/homepage/google/gsoc2015 GSoC] and [http://sophia.estec.esa.int/socis2015 SoCiS] students)

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]