Changes

Jump to navigation Jump to search

FAQ

504 bytes removed, 02:36, 28 July 2017
→‎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.
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.
==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 ==Why "GNU Project was launched in 1984 to develop a complete Unix-like operating system which is free software: the GNU system." 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 [httphttps://www.gnu.org/prep/standards/standards.html GNU coding standards] and to benefit from GNU's infrastructure (e.g. [httphttps://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?==
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 instabilityMercurial 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 releaseGNU Octave prompt.
==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 possiblecom SuiteSparse], the Fortran subroutines are compiled with the system's Fortran compileretc., and called directly from the C++ functionsfor plotting [https://www. If that's not possible, you can still compile Octave if you have the free Fortran to C translator f2copenglOctave is also free software; you can redistribute it andorg/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:
Run John W. Eaton, David Bateman, Søren Hauberg, Rik Wehbring (2017). GNU Octave version {{codeline|citationRelease}} at the Octave prompt manual: a high-level interactive language for details on how to bestnumerical computations.cite the Octave version you are running URL https://www.gnu. Certain Octave packages also haverecommended citations in which case use org/software/octave/doc/v{{codeline|citation package_nameRelease}}./
Ideally, you should cite the software itself, not a book or manual, like soA [https://en.wikipedia.org/wiki/BibTeX BibTeX] entry for [https://en.wikipedia.org/wiki/LaTeX LaTeX] users is:
@softwaremanual{, title = {{GNU Octave} version {{octaveRelease}} manual: a high-level interactive language for numerical computations}, author = {John W. Eaton and othersDavid Bateman and S{\o}ren Hauberg and Rik Wehbring}, title year = {GNU Octave2017}, url = {httphttps://www.octavegnu.org/software/octave/doc/v{{Release}, version = {4.0.0}, date = {2015-05-27/},
}
It is recommended Run <code>citation</code> at the Octave prompt for details on how to do so on a first draft submittedbest cite the Octave version you are running. However, some editorsmay disallow this, Certain Octave packages also have recommended citations in which case you can still make a general referenceto 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 Octavesystem 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</blockquotecode>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 eachOctave 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 givingrecognition to the work done by others which we already addressed. The otheris giving details on the system used so that experiments can be replicated.This is just as important, if not more.
For thisWhen it's ready, you should cite the version of Octave and all packages used, aswell as any details of your setup as part of your Methods. In addition,you should make your source available. Seesooner [http://softwarewww.acoctave.ukorg/so-exactly-what-software-didget-involved.html if you-use How to cite and describe softwarehelp]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].
==How can I get involved in Octave development?==
Be around. Be social. Participate in the our mailing lists [https://mailmanlists.caegnu.wisc.eduorg/mailman/listinfo/help-octave help@octave.org]and [https://mailmanlists.caegnu.wisc.eduorg/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 | hereDevelopers]]and wiki page or [http://www.gnuoctave.org/software/octave/get-involved.html start here] forguidance. 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.gnuoctave.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://wwwbugs.gnuoctave.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://savannahlists.gnu.org/mailmailman/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 [[Projectsprojects]], [[short projects]] , and [[Summer of Code Project Ideas]] if you needspecific inspiration for coding tasks that we would like to get done. Seealso the list of [[short projects]].
=Licensing issues=

Navigation menu