764

edits

Jump to navigation
Jump to search
~~GNU Octave can do arithmetic for real, complex or integer-valued scalars and matrices, solve sets of nonlinear algebraic equations, integrate functions over finite and infinite intervals, and integrate systems of ordinary differential and differential-algebraic equations.~~ ~~GNU Octave uses the GNU readline library to handle reading and editing input. By default, the line editing commands are similar to the cursor movement commands used by GNU Emacs, and a vi-style line editing interface is also available. At the end of each session, the command history is saved, so that commands entered during previous sessions are not lost.~~ The GNU Octave distribution includes a ~~650~~[http://www.octave.org/octave.pdf 1000+ page Texinfo manual]. Access to the complete text of the manual is available via the <code>doc </code> command at the GNU Octave prompt.
~~The ~~==Why "GNU ~~Project was launched in 1984 to develop a complete Unix-like operating system which is free software: the GNU system.~~" Octave?==
~~In ~~For generaluse, ~~you will find ~~it is recommended to use the latest stable version ~~on ~~of Octave (currently {{Release}}), available from http://www.octave.org/download.html. ~~It is recommended to use the stable version of octave for general use, ~~ For development and bleeding-edge features one can obtain the development ~~version if you want ~~source code from the ~~latest features and are willing to tolerate instability~~Mercurial repository https://hg.savannah.gnu.org/hgweb/octave/graph/.
~~A ~~The used version of Octave is available via the <code>ver</code> command and a list of user-visible changes since the last release is available ~~in the file NEWS. The file ChangeLog in ~~via the ~~source distribution contains a more detailed record of changes made since ~~<code>news</code> command at the ~~last release~~GNU Octave prompt.
~~Run ~~ John W. Eaton, David Bateman, Søren Hauberg, Rik Wehbring (2017). GNU Octave version {{~~codeline|citation~~Release}} ~~at the Octave prompt ~~manual: a high-level interactive language for ~~details on how to best~~numerical computations.~~cite the Octave version you are running~~ URL https://www.gnu. ~~ Certain Octave packages also have~~~~recommended citations in which case use ~~org/software/octave/doc/v{{~~codeline|citation package_name~~Release}}~~.~~/
~~Ideally, you should cite the software itself, not a book or manual, like so~~A [https://en.wikipedia.org/wiki/BibTeX BibTeX] entry for [https://en.wikipedia.org/wiki/LaTeX LaTeX] users is:
~~It is recommended ~~Run <code>citation</code> at the Octave prompt for details on how to ~~do so on a first draft submitted~~best cite the Octave version you are running. ~~However, some editors~~~~may disallow this, ~~Certain Octave packages also have recommended citations in which case ~~you can still make a general reference~~~~to Octave in the text, such as:~~use <code>citation package_name</code>.
~~<blockquote>~~~~This ~~Note that there are two reasons for citing the software used. One is giving recognition to the work ~~made use of ~~done by others which we already addressed. The other is giving details on the ~~free software package GNU Octave~~system used so that experiments can be replicated. For this, ~~and ~~you should cite the ~~authors are grateful for the support ~~version of Octave and all packages used (you can get this information using the ~~Octave development community.~~<code>ver</~~blockquote~~code>command), as well as any details of your setup as part of your Methods. In addition, you should make your source available. See [http://software.ac.uk/so-exactly-what-software-did-you-use How to cite and describe software] for more details and an in depth discussion.
~~If a more traditional reference is required, there is also a manual for each~~~~Octave release that can be cited:~~ ~~ @book{,~~~~ author ~~= ~~{John W. Eaton, David Bateman, S\oren Hauberg, and Rik Wehbring},~~~~ title ~~= ~~{{GNU Octave} version 4.0.0 manual: a high-level interactive language for numerical computations},~~~~ year ~~When will feature X be released or implemented?= ~~{2015},~~~~ url ~~= ~~{http://www.gnu.org/software/octave/doc/interpreter},~~~~ }~~ ~~Note that there are two reasons for citing the software used. One is giving~~~~recognition to the work done by others which we already addressed. The other~~~~is giving details on the system used so that experiments can be replicated.~~~~This is just as important, if not more.~~
~~For this~~When it's ready, ~~you should cite the version of Octave and all packages used, as~~~~well as any details of your setup as part of your Methods. In addition,~~~~you should make your source available. See~~sooner [http://~~software~~www.~~ac~~octave.~~uk~~org/~~so-exactly-what-software-did~~get-involved.html if you~~-use How to cite and describe software~~help]~~for more details and an in depth discussion~~. ~~==When will feature X be released or implemented~~ You can [https://savannah.gnu.org/patch/?group=~~=~~~~When it's ready, sooner if you help. Send ~~octave send us patches ] if you canimplement feature X yourself. ~~We like patches. ~~ If you can't, some [http://www.octave.org/commercial-support.html developers may be convinced to work on your specific problem for some money].

→General: Overhaul section, update links, etc.

==What is Octave?==

[https://www.gnu.org/software/octave/ GNU Octave ] is a high-level ~~interactive ~~interpreted language, primarily intended for numerical computations. It provides capabilities for the numerical solution of linear and nonlinear problems, ~~that ~~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 ~~mostly compatible with ~~quite similar to Matlabso that most programs are easily portable.

==What is Octave-Forge?==

[https://octave.sourceforge.io/ Octave-Forge] is a collection of [[packages ]] for GNU Octave, something similar to the Matlab toolboxes. When talking about the two projects at the same time, GNU Octave is usually referred to as Octave core (or just ~~''~~"core~~''~~"). ~~[https://octave.sourceforge.io/ ~~ Octave-Forge~~] ~~also serves as a test bed for code that may eventually end up in the core, and distributes binaries for systems with a lack of developers tools (mainly Windows).

==Who uses Octave?==

Lots of people. ~~It seems that universities ~~ Universities use it for research and teaching, companies of all sizes~~, ~~for development, and individualsfor whatever private purpose. ~~This question comes often on Octave mailing lists, see ~~ See [[Who Uses Octave?]] for a few answers.

==Who develops Octave?==

Discussions about writing the software that would eventually become Octave started in about 1988 with James B. Rawlings and [http://jweaton.org/ John W. Eaton ] at the University of Texas. John W. Eaton ~~was ~~is the original author of Octave, starting full-time development in February 1992. He is still the primary maintainer. The community of users~~/~~and developers has in addition contributed some code and fuels the discussion on the mailing lists [https://lists.gnu.org/mailman/listinfo/help-octave help@octave.org ] (user forum), [https://lists.gnu.org/mailman/listinfo/octave-maintainers maintainers@octave.org ] (development issues).

==Why "Octave"?==

Octave's name has nothing to do with music. It~~'s ~~is named after [http://en.wikipedia.org/wiki/Octave_Levenspiel Octave Levenspiel], a former professor of John who was famous for his ability to do quick back-of-the-envelope calculations. You can hear John pronounce the name "Octave" a few times [http://videolectures.net/mloss08_eaton_oct/ in this video]. We hope that GNU Octave will help perform computations with the same ease as Dr. Levenspiel. ~~==Why <em>GNU</em> Octave?==~~

The [https://www.gnu.org/ GNU Project] was launched in 1984 to develop a complete Unix-like operating system which is free software: the GNU system. GNU is a recursive acronym for ~~“GNU~~"GNU's Not ~~Unix”~~Unix"; it is pronounced ~~g'noo, ~~[https://www.gnu.org/gnu/pronunciation.en.html ~~like “grew” but with the letter “n” instead of “r”~~g'noo].

The [https://www.fsf.org/ Free Software Foundation (FSF) ] is the principal organizational sponsor of the GNU Project.

Octave became GNU Octave in 1997 (beginning with [[Release History|version 2.0.6]]). This meant agreeing to consider Octave a part of the GNU Project and support the efforts of the FSF. A big part of this effort is to adhere to the [~~http~~https://www.gnu.org/prep/standards/standards.html GNU coding standards] and to benefit from GNU's infrastructure (e.g. [~~http~~https://hg.savannah.gnu.org/hgweb/octave/ code hosting] and [http://bugs.octave.org bug tracking]). Additionally, Octave receives [https://my.fsf.org/donate/working-together/octave sponsorship] from the FSF's Working Together fund. However, Octave is not and has never been developed by the FSF~~.~~ ~~For more information about the GNU project, see http://www.gnu.org~~.

==What version should I use?==

==On what platforms does Octave run?==

Octave runs on ~~various Unices—at least Linux and Solaris, Mac OS X, Windows and anything ~~any platform you can compile it on. Binary distributions exist ~~at least ~~for ~~Debian~~[[Octave for GNU/Linux|GNU/Linux]], ~~SUSE~~[[Octave for macOS|macOS]], ~~Fedora ~~and ~~RedHat Linuxes (Intel and AMD CPUs, at least), ~~[[Octave for ~~Mac OS X and ~~Microsoft Windows|Windows~~' 98, 2000, XP, Vista, and 7~~]]. ~~Two and three dimensional plotting is ~~ To work fully ~~supported using gnuplot and an experimental OpenGL backend.~~ ~~The ~~functional, Octave requires the used platform to support the underlying numerical ~~solvers are currently standard Fortran ones ~~libraries like ~~LAPACK, LINPACK, ODEPACK, the ~~[https://en.wikipedia.org/wiki/Basic_Linear_Algebra_Subprograms BLAS], ~~etc~~[https://en.wikipedia.org/wiki/LAPACK LAPACK], ~~packaged in a library of C++ classes~~[http://www.suitesparse. ~~If possible~~com SuiteSparse], ~~the Fortran subroutines are compiled with the system's Fortran compiler~~etc., and ~~called directly from the C++ functions~~for plotting [https://www. ~~If that's not possible, you can still compile Octave if you have the free Fortran to C translator f2c~~opengl. ~~Octave is also free software; you can redistribute it and~~org/OpenGL] or ~~modify it under the terms of the GNU General Public License, version 3, as published by the Free Software Foundation, or at your option any later version~~[http://www.gnuplot.info/ gnuplot].

== How can I cite Octave? ==

Octave is free software and does not legally bind you to cite it. However,we have invested a lot of time and effort in creating GNU Octave, and wewould appreciate if you would cite if you used. To cite GNU Octave in publications use:

@~~software~~manual{, title = {{GNU Octave} version {{~~octave~~Release}} manual: a high-level interactive language for numerical computations}, author = {John W. Eaton and ~~others~~David Bateman and S{\o}ren Hauberg and Rik Wehbring}, ~~title ~~year = {~~GNU Octave~~2017}, url = {~~http~~https://www.~~octave~~gnu.org/software/octave/doc/v{{Release}~~,~~~~ version = {4.0.0~~}~~,~~~~ date = {2015-05-27~~/},

}

==How can I get involved in Octave development?==

Be around. Be social. Participate in ~~the ~~our mailing lists [https://~~mailman~~lists.~~cae~~gnu.~~wisc.edu~~org/mailman/listinfo/help-octave help@octave.org]and [https://~~mailman~~lists.~~cae~~gnu.~~wisc.edu~~org/mailman/listinfo/octave-maintainers maintainers@octave.org]~~mailing lists~~. Find things about Octave you don't like, and start thinkingabout how to fix them. Many people who now contribute to Octave first spentseveral years helping in the mailing list before they started to delve intothe code. A good way to learn Octave is to understand the problems otherpeople are having with it, so being helpful in the mailing lists not onlyhelps Octave as a whole, but it also prepares you to be a better Octavecontributor.

If you feel ready to dive right into the code, read the [[~~Hacking | here~~Developers]]~~and ~~wiki page or [http://www.~~gnu~~octave.org~~/software/octave~~/get-involved.html start here] ~~for~~~~guidance~~. But do not send an email to the mailing lists listing yourskills and offering to help. We won't just suggest things for you to do. We lack volunteers and we do need your help, but because of that, we alsolack the time to provide good guidance and mentoring. If there is aspecific short-term project you would like to work on, say so, and justdo it. Then ask for help or advice when you're doing it. It is a lotmore important that you do something that you're actually interested onthan something we suggested because it only matches your skills.

We also need help with this wiki and the[http://www.~~gnu~~octave.org~~/software/octave~~/doc/interpreter/ manual]. These arealso important tasks. The documentation is easy to patch, and the help textfor individual functions even more so. Editing this wiki is even easier.

Accurate bug reporting is also very useful. Find and report[http://~~www~~bugs.~~gnu~~octave.org~~/software/octave~~/~~bugs.html ~~bugs], making an attempt todiagnose them. Eventually, you will also know how to fix them. If you wantto help with bug reports or patches, subscribe tothe [https://~~savannah~~lists.gnu.org/~~mail~~mailman/listinfo/~~?group=~~octave ~~the ~~-bug-tracker bug tracker mailing list]. You'll get updates on all bug activity, and you can jump in when you see

something you can help with.

Look at our [[~~Projects~~projects]], [[short projects]] , and [[Summer of Code Project Ideas]] if you needspecific inspiration for coding tasks that we would like to get done~~. See~~~~also the list of [[short projects]]~~.

=Licensing issues=

Retrieved from "https://wiki.octave.org/Special:MobileDiff/10433"

- Not logged in
- Talk
- Contributions
- Create account
- Log in