Mercurial > web-octave
changeset 217:6de5c7dcc43f
maint: add "pages/menu" subfolder to get a better overview.
Pages in this folder have a menu entry at the top bar of the website.
author | Kai T. Ohlhus <k.ohlhus@gmail.com> |
---|---|
date | Tue, 15 Sep 2020 14:55:06 +0900 |
parents | c8126c010d67 |
children | 025ebd8ded7e |
files | index.md pages/about.md pages/bugs.md pages/donate.md pages/download.md pages/get-involved.md pages/index.md pages/menu/about.md pages/menu/bugs.md pages/menu/donate.md pages/menu/download.md pages/menu/get-involved.md pages/menu/news.md pages/news.md pages/support.md |
diffstat | 15 files changed, 565 insertions(+), 613 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/index.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,158 @@ +--- +layout: default +permalink: index +--- + +<div class="primary callout" data-closable> + <h5> + Need help? Try out our new user and developer forum + <a href="https://octave.discourse.group/">Octave Discourse</a>. + </h5> + <button class="close-button" aria-label="Dismiss alert" type="button" data-close> + <span aria-hidden="true">×</span> + </button> +</div> + +<div class="grid-x grid-margin-x"> + <div class="cell medium-6"> + <a href="#" data-open="meshModal"> + <img src="{{ "/img/example-mesh.svg" | relative_url }}" + style="height: 400px; width: auto;" alt="Example mesh"> + </a> + </div> + <div class="cell auto"> + <h2 class="landing-page-logo"> + <img src="{{ "/img/octave-logo.svg" | relative_url }}" + style="float: left; height: 48px; width: auto; padding-right: 0.5rem" + alt="GNU Octave logo"> + GNU Octave + </h2> + <h4>Scientific Programming Language</h4> + <ul> + <li>Powerful mathematics-oriented syntax with built-in 2D/3D plotting and visualization tools</li> + <li>Free software, runs on GNU/Linux, macOS, BSD, and Microsoft Windows</li> + <li>Drop-in compatible with many Matlab scripts</li> + </ul> + <div class="button-group stacked"> + <a href="{{ "download.html" | relative_url }}" class="button">Download</a> + <a href="{{ site.docs_url }}" class="button">Documentation</a> + </div> + </div> +</div> + +### Syntax Examples + +The Octave syntax is largely compatible with Matlab. +The Octave interpreter can be run in +<a href="#" data-open="guiModal">GUI mode</a>, as a console, +or invoked as part of a shell script. +More Octave examples can be found in +[the Octave wiki]({{ site.wiki_url }}/Using_Octave). + +<div class="grid-x grid-margin-x"> + <div class="cell medium-4" > + <p> + Solve systems of equations with linear algebra operations on + <strong>vectors</strong> and <strong>matrices</strong>. + </p> + </div> + <div class="cell auto"> +{%- include code1.html -%} +<!-- +{%- highlight octave -%} +b = [4; 9; 2] # Column vector +A = [ 3 4 5; + 1 3 1; + 3 5 9 ] +x = A \ b # Solve the system Ax = b +{%- endhighlight -%} +--> + </div> +</div> + +<div class="grid-x grid-margin-x"> + <div class="cell medium-4"> + <p> + Visualize data with <strong>high-level plot commands</strong> + in 2D and 3D. + </p> + </div> + <div class="cell auto"> +{%- include code2.html -%} +<!-- +{%- highlight octave -%} +x = -10:0.1:10; # Create an evenly-spaced vector from -10..10 +y = sin (x); # y is also a vector +plot (x, y); +title ("Simple 2-D Plot"); +xlabel ("x"); +ylabel ("sin (x)"); +{%- endhighlight -%} +--> + <a href="#" class="button small-only-expanded" data-open="plotModal">Click here to see the plot output</a> + </div> +</div> + + +### Octave Forge + +[Octave Forge]({{ site.sourceforge_url }}) is a collection of high quality +packages for GNU Octave, similar to Matlab's toolboxes. +To install a package, use the `pkg` command from the Octave prompt by typing: + +{% highlight text %} +pkg install -forge package_name +pkg load package_name +{% endhighlight %} + +<a href="{{ site.sourceforge_url }}/packages.php" class="button small-only-expanded">Browse Packages</a> + + +### Development + +Octave is free software licensed under the +[GNU General Public License (GPL)]({{ "license.html" | relative_url }}). +Assuming you have Mercurial installed on your machine you may obtain the latest +development version of Octave sources with the following command: + +{% highlight text %} +hg clone https://www.octave.org/hg/octave +{% endhighlight %} + +[Get involved]({{ "/get-involved.html" | relative_url }}) in Octave development. + + +{% assign latest_post = site.posts.first %} +{% if latest_post %} + <div class="primary callout"> + <a class="float-right button tiny warning" href="{{ "/feed.xml" | relative_url }}"> + RSS + </a> + <h3 class="entry-title"> + <a href="{{ latest_post.url | relative_url }}">{{ latest_post.title }}</a> + </h3> + <p class="post-meta">{{ latest_post.date | date: "%b %-d, %Y" }}</p> + <div class="entry-content">{{ latest_post.excerpt }}</div> + </div> +{% endif %} + +<div class="large reveal" id="meshModal" data-reveal> + <img src="{{ "/img/example-mesh.svg" | relative_url }}" alt="Example mesh"> + <button class="close-button" data-close aria-label="Close modal" type="button"> + <span aria-hidden="true">×</span> + </button> +</div> + +<div class="large reveal" id="plotModal" data-reveal> + <img src="{{ "/img/example-plot.svg" | relative_url }}" alt="Example plot"> + <button class="close-button" data-close aria-label="Close modal" type="button"> + <span aria-hidden="true">×</span> + </button> +</div> + +<div class="large reveal" id="guiModal" data-reveal> + <img src="{{ "/img/GNU_Octave_4-4-0_screenshot_1600x900.png" | relative_url }}" alt="GNU Octave GUI screenshot"> + <button class="close-button" data-close aria-label="Close modal" type="button"> + <span aria-hidden="true">×</span> + </button> +</div>
--- a/pages/about.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,96 +0,0 @@ ---- -layout: page -title: About -menu: true -permalink: about ---- - -GNU Octave is a high-level language, primarily intended for numerical -computations. -It provides a convenient command line interface for solving linear and -nonlinear problems numerically, -and for performing other numerical experiments using a language that is mostly -compatible with Matlab. -It may also be used as a batch-oriented language. - -Octave has extensive tools for solving common numerical linear algebra problems, -finding the roots of nonlinear equations, -integrating ordinary functions, -manipulating polynomials, -and integrating ordinary differential and differential-algebraic equations. -It is easily extensible and customizable via user-defined functions written in -Octave's own language, -or using dynamically loaded modules written in C++, C, Fortran, -or other languages. - -GNU Octave is also freely redistributable software. -You may redistribute it and/or modify it under the terms of the -[GNU General Public License (GPL)][GPL] as published by the -[Free Software Foundation](https://www.fsf.org/). - -Octave was written by [John W. Eaton](mailto:jwe@octave.org) and -[many others](https://hg.savannah.gnu.org/hgweb/octave/file/tip/doc/interpreter/contributors.in). -Because Octave is [free software](https://www.gnu.org/philosophy/free-sw.html) you are encouraged to help make Octave -more useful by writing and contributing additional functions for it, -and by reporting any problems you may have. - - -## History - -Octave was originally conceived (in about 1988) to be companion software for an -undergraduate-level textbook on chemical reactor design being written by James -B. Rawlings of the University of Wisconsin-Madison and John G. Ekerdt of the -University of Texas. -We originally envisioned some very specialized tools for the solution of -chemical reactor design problems. -Later, -after seeing the limitations of that approach, -we opted to attempt to build a much more flexible tool. - -There were still some people who said that we should just be using Fortran -instead, -because it is the computer language of engineering, -but every time we had tried that, -the students spent far too much time trying to figure out why their Fortran -code failed and not enough time learning about chemical engineering. -We believed that with an interactive environment like Octave, -most students would be able to pick up the basics quickly, -and begin using it confidently in just a few hours. - -Full-time development began in the Spring of 1992. -The first alpha release was January 4, 1993, and version 1.0 was released -February 17, 1994. -Since then, Octave has been through several major revisions, -is included with [Debian GNU/Linux](https://www.debian.org/), -[openSUSE](https://www.opensuse.org/), -and many other GNU/Linux distributions. -Octave was reviewed in the in the July, 1997 issue of the -[Linux Journal](http://www.linuxjournal.com/article/1225). - -Clearly, -Octave is now much more than just another courseware package with limited -utility beyond the classroom. -Although our initial goals were somewhat vague, -we knew that we wanted to create something that would enable students to solve -realistic problems, -and that they could use for many things other than chemical reactor design -problems. -Today, thousands of people worldwide are using Octave in teaching, -research, and commercial applications. - -Just about everyone thinks that the name Octave has something to do with music, -but it is actually the name of one of the author's former professor -[Octave Levenspiel](https://en.wikipedia.org/wiki/Octave_Levenspiel) -who wrote a famous textbook on chemical reaction engineering, -and who was also well known for his ability to do quick "back of the envelope" -calculations. -We hope that this software will make it possible for many people to do more -ambitious computations just as easily. - -Everyone is encouraged to share this software with others under the terms of -the [GNU General Public License (GPL)][GPL]. -You are also encouraged to help make Octave more useful by writing and -contributing additional functions for it, -and by reporting any problems you may have. - -[GPL]: https://www.gnu.org/copyleft/gpl.html
--- a/pages/bugs.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ ---- -layout: page -title: Bugs -menu: true -permalink: bugs ---- - -GNU Octave uses the bug tracker at [Savannah]({{ site.bugs_url }}). -There you can [report a new bug]({{ site.bugs_url }}&func=additem), -[browse recent bugs]({{ site.bugs_url }}), -or [search for bugs]({{ site.bugs_url }}&func=search). - -### Guidelines for reporting a new bug - -1. **Is the bug already known?** - - - [Search for already reported bugs at the bug tracker]({{ site.bugs_url }}&func=search), - - look at the - [list of known causes of trouble]({{ site.docs_url }}/Trouble.html) - in the Octave manual. - - <p></p> - - If you your problem **does not appear** to be known, - then you should report the problem. - -2. **Is it really a bug?** - - - If Octave **crashes**, for any input whatever, that is a bug. - Reliable interpreters never crash. - - If Octave produces **incorrect results**, for any input whatever, - that is a bug. - - If Octave produces an **error message** for **valid input**, that is a bug. - - If Octave produces **no error message** for **invalid input**, - that is a bug. - - <p></p> - -3. **Missing function in Octave** - - - If the function is - [part of some Octave Forge package]({{ site.sourceforge_url }}/functions_by_alpha.php), - this is **not** a bug. - - If the function **exists in Matlab**, - but **not in core Octave** and **not in Octave Forge packages**, - that is a bug. - - <p></p> - - It might take several months or years until for new features to become part - of Octave, consider - [commercial support]({{ "commercial-support.html" | relative_url }}) - if you don't want to wait that long). - -4. **Make your bug report count** - - - **Report all the facts:**<br> - Include all information that make it possible to fix the bug. - If you are not sure whether to state a fact or leave it out, state it. - This information includes your **operating system**, **Octave version**, - **exact error message** or **exact output**. - - **Give a short, specific, complete example:**<br> - Avoid: pseudocode, uninitialized variables, - calls to unattached scripts or functions. - - **Justify your exectations briefly:**<br> - Although it might seem obvious to you, - someone examining the problem might not know what result you consider - correct. - - -### Sending Patches for Octave - -If you have a suggested fix for a bug, -please attach it to your report in the tracker. -Your patch is more likely to be reviewed if you follow the guidelines from the -Octave Wiki about the [creation of changesets]({{ site.wiki_url }}/Mercurial).
--- a/pages/donate.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ ---- -layout: page -title: Donate -menu: true -permalink: donate ---- - -> **Octave development takes a lot of time and expertise.** -> **Your contributions help to ensure that Octave will continue to improve.** - -- [FSF Donation Page](https://crm.fsf.org/civicrm/contribute/transact?reset=1&id=10) -- [PayPal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UYHVW7R596RZ8) - to John W. Eaton Consulting, Inc. (Octave project leader) -- [Bitcoin](bitcoin:1E6HchBMX1EfiJQhSUanuF4VYKk552tEHF) - (1E6HchBMX1EfiJQhSUanuF4VYKk552tEHF) -- [Commercial support options]({{ "commercial-support.html" | relative_url }}) - to implement the specific features - -If you are already an Octave user and would like to see it improve more rapidly, -then please donate so that we can spend more of our time working on Octave. -If we could raise as little as $300,000/year, -we could pay several key developers to work full time on Octave. -Given even the most conservative estimate of the number of users of Octave, -this amount could easily be reached if every user contributed the cost of -a few lattes. - -If your company has a budget for numerical computing tools, -consider spending 10% (or more!) of that on Octave. -Do you expect Octave to improve on a $0 budget -while the proprietary tools are well-funded by your license fees?
--- a/pages/download.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,131 +0,0 @@ ---- -layout: page -title: Download -menu: true -permalink: download ---- - -<div class="button-group large expanded stacked-for-small"> - <a class="button" href="#source">Source</a> - <a class="button" href="#linux">GNU/Linux</a> - <a class="button" href="#macos">macOS</a> - <a class="button" href="#bsd">BSD</a> - <a class="button" href="#ms-windows">MS Windows</a> -</div> - - -<p id="source"> </p> - -### Source {#source2} - -The latest released version of Octave is always available from - -- https://ftp.gnu.org/gnu/octave -- ftp://ftp.gnu.org/gnu/octave - -Please download from -[https://ftpmirror.gnu.org/octave](https://ftpmirror.gnu.org/octave), -which will redirect automatically to a nearby -[mirror site](https://www.gnu.org/order/ftp.html). - - -<p id="linux"> </p> - -### GNU/Linux {#linux2} - -Packaged versions of Octave for GNU/Linux systems are provided by the -individual distributions described in the -[Octave wiki]({{ site.wiki_url }}/Category:Installation). -These packages are created by volunteers. -The delay between an Octave source release and the availability of a package -for a particular GNU/Linux distribution varies. - -Alternatively, -there are some distribution independent installation methods for more recent -versions of GNU Octave described in the -[Octave wiki]({{ site.wiki_url }}/Octave_for_GNU/Linux#Distribution_independent). - - -<p id="macos"> </p> - -### macOS {#macos2} - -The [Octave Wiki]({{ site.wiki_url }}/Octave_for_macOS) has instructions for -installing Octave on macOS systems. -Octave is also available in third-party package managers such as -[Homebrew](https://brew.sh/) and [MacPorts](https://www.macports.org). - - -<p id="bsd"> </p> - -### BSD {#bsd2} - -Executable versions of Octave for BSD systems are provided by the individual -distributions. -Both [FreeBSD](https://www.freebsd.org/) and [OpenBSD](https://www.openbsd.org/) -have Octave packages. -These packages are created by volunteers and the Octave project has no control -over that process. - - -<p id="ms-windows"> </p> - -### Microsoft Windows {#ms-windows2} - -<div class="primary callout small" data-closable> -<b>Note:</b> All installers below bundle several <b>Octave Forge packages</b> -so they don't have to be installed separately. -After installation type <code>pkg list</code> to list them. -<a href="{{ site.wiki_url }}/Octave_for_Microsoft_Windows">Read more.</a> -<a href="#ms-windows" class="close-button" aria-label="Dismiss alert" type="button" data-close> - <span aria-hidden="true">×</span> -</a> -</div> - -- Windows-64 (recommended) - - [octave-5.2.0_1-w64-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-installer.exe) - (~ 300 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-installer.exe.sig) - - [octave-5.2.0_1-w64.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.7z) - (~ 300 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.7z.sig) - - [octave-5.2.0_1-w64.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.zip) - (~ 530 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.zip.sig) - -<p></p> - -- Windows-32 (old computers) - - [octave-5.2.0_1-w32-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32-installer.exe) - (~ 275 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32-installer.exe.sig) - - [octave-5.2.0_1-w32.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.7z) - (~ 258 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.7z.sig) - - [octave-5.2.0_1-w32.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.zip) - (~ 447 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.zip.sig) - -<p></p> - -- Windows-64 (64-bit linear algebra for large data) - <br><small> - Unless your computer has more than ~32GB of memory - <strong>and</strong> you need to solve linear algebra problems - with arrays containing more than ~2 billion elements, this - version will offer no advantage over the recommended Windows-64 - version above. - </small> - - - [octave-5.2.0_1-w64-64-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64-installer.exe) - (~ 286 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64-installer.exe.sig) - - [octave-5.2.0_1-w64-64.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.7z) - (~ 279 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.7z.sig) - - [octave-5.2.0_1-w64-64.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.zip) - (~ 490 MB) - [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.zip.sig) - -All Windows binaries with corresponding source code can be downloaded from -[https://ftpmirror.gnu.org/octave/windows/](https://ftpmirror.gnu.org/octave/windows/).
--- a/pages/get-involved.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,45 +0,0 @@ ---- -layout: page -title: Get Involved -menu: true -permalink: get-involved ---- - -We always need more help improving Octave -and there are many ways you can contribute. -You can help by fixing bugs, -developing new features, -writing [Octave Forge packages]({{ site.sourceforge_url }}), -answering questions in Discourse, -helping to improve the web pages. -If you are wondering what to work on, -we have a standard answer: -**What would you like to work on?** - -For some inspiration, -we do maintain a [list of possible projects]({{ site.wiki_url }}/Projects) -and a [Developer FAQ]({{ site.wiki_url }}/Developer_FAQ) on the Octave Wiki. - -If know what to contribute, -discuss your ideas with us on [Discourse]({{ site.discourse_url }}) -("maintainers" category) or on our IRC -[Freenode `{{ site.irc_channel }}` channel](https://webchat.freenode.net/#octave). - - -### Using the Development Sources - -The latest development sources of GNU Octave are available via -[Mercurial](https://www.mercurial-scm.org/) (hg). -The primary repository address is -[https://www.octave.org/hg/octave](https://www.octave.org/hg/octave), -which currently redirects to -[https://hg.savannah.gnu.org/hgweb/octave](https://hg.savannah.gnu.org/hgweb/octave). -You obtain the latest development version of Octave sources with the following -command: - -{% highlight text %} -hg clone https://www.octave.org/hg/octave -{% endhighlight %} - -The [Developer FAQ]({{ site.wiki_url }}/Developer_FAQ) on the Octave Wiki -contains more detailed and recent information about Octave development.
--- a/pages/index.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,158 +0,0 @@ ---- -layout: default -permalink: index ---- - -<div class="primary callout" data-closable> - <h5> - Need help? Try out our new user and developer forum - <a href="https://octave.discourse.group/">Octave Discourse</a>. - </h5> - <button class="close-button" aria-label="Dismiss alert" type="button" data-close> - <span aria-hidden="true">×</span> - </button> -</div> - -<div class="grid-x grid-margin-x"> - <div class="cell medium-6"> - <a href="#" data-open="meshModal"> - <img src="{{ "/img/example-mesh.svg" | relative_url }}" - style="height: 400px; width: auto;" alt="Example mesh"> - </a> - </div> - <div class="cell auto"> - <h2 class="landing-page-logo"> - <img src="{{ "/img/octave-logo.svg" | relative_url }}" - style="float: left; height: 48px; width: auto; padding-right: 0.5rem" - alt="GNU Octave logo"> - GNU Octave - </h2> - <h4>Scientific Programming Language</h4> - <ul> - <li>Powerful mathematics-oriented syntax with built-in 2D/3D plotting and visualization tools</li> - <li>Free software, runs on GNU/Linux, macOS, BSD, and Microsoft Windows</li> - <li>Drop-in compatible with many Matlab scripts</li> - </ul> - <div class="button-group stacked"> - <a href="{{ "download.html" | relative_url }}" class="button">Download</a> - <a href="{{ site.docs_url }}" class="button">Documentation</a> - </div> - </div> -</div> - -### Syntax Examples - -The Octave syntax is largely compatible with Matlab. -The Octave interpreter can be run in -<a href="#" data-open="guiModal">GUI mode</a>, as a console, -or invoked as part of a shell script. -More Octave examples can be found in -[the Octave wiki]({{ site.wiki_url }}/Using_Octave). - -<div class="grid-x grid-margin-x"> - <div class="cell medium-4" > - <p> - Solve systems of equations with linear algebra operations on - <strong>vectors</strong> and <strong>matrices</strong>. - </p> - </div> - <div class="cell auto"> -{%- include code1.html -%} -<!-- -{%- highlight octave -%} -b = [4; 9; 2] # Column vector -A = [ 3 4 5; - 1 3 1; - 3 5 9 ] -x = A \ b # Solve the system Ax = b -{%- endhighlight -%} ---> - </div> -</div> - -<div class="grid-x grid-margin-x"> - <div class="cell medium-4"> - <p> - Visualize data with <strong>high-level plot commands</strong> - in 2D and 3D. - </p> - </div> - <div class="cell auto"> -{%- include code2.html -%} -<!-- -{%- highlight octave -%} -x = -10:0.1:10; # Create an evenly-spaced vector from -10..10 -y = sin (x); # y is also a vector -plot (x, y); -title ("Simple 2-D Plot"); -xlabel ("x"); -ylabel ("sin (x)"); -{%- endhighlight -%} ---> - <a href="#" class="button small-only-expanded" data-open="plotModal">Click here to see the plot output</a> - </div> -</div> - - -### Octave Forge - -[Octave Forge]({{ site.sourceforge_url }}) is a collection of high quality -packages for GNU Octave, similar to Matlab's toolboxes. -To install a package, use the `pkg` command from the Octave prompt by typing: - -{% highlight text %} -pkg install -forge package_name -pkg load package_name -{% endhighlight %} - -<a href="{{ site.sourceforge_url }}/packages.php" class="button small-only-expanded">Browse Packages</a> - - -### Development - -Octave is free software licensed under the -[GNU General Public License (GPL)]({{ "license.html" | relative_url }}). -Assuming you have Mercurial installed on your machine you may obtain the latest -development version of Octave sources with the following command: - -{% highlight text %} -hg clone https://www.octave.org/hg/octave -{% endhighlight %} - -[Get involved]({{ "/get-involved.html" | relative_url }}) in Octave development. - - -{% assign latest_post = site.posts.first %} -{% if latest_post %} - <div class="primary callout"> - <a class="float-right button tiny warning" href="{{ "/feed.xml" | relative_url }}"> - RSS - </a> - <h3 class="entry-title"> - <a href="{{ latest_post.url | relative_url }}">{{ latest_post.title }}</a> - </h3> - <p class="post-meta">{{ latest_post.date | date: "%b %-d, %Y" }}</p> - <div class="entry-content">{{ latest_post.excerpt }}</div> - </div> -{% endif %} - -<div class="large reveal" id="meshModal" data-reveal> - <img src="{{ "/img/example-mesh.svg" | relative_url }}" alt="Example mesh"> - <button class="close-button" data-close aria-label="Close modal" type="button"> - <span aria-hidden="true">×</span> - </button> -</div> - -<div class="large reveal" id="plotModal" data-reveal> - <img src="{{ "/img/example-plot.svg" | relative_url }}" alt="Example plot"> - <button class="close-button" data-close aria-label="Close modal" type="button"> - <span aria-hidden="true">×</span> - </button> -</div> - -<div class="large reveal" id="guiModal" data-reveal> - <img src="{{ "/img/GNU_Octave_4-4-0_screenshot_1600x900.png" | relative_url }}" alt="GNU Octave GUI screenshot"> - <button class="close-button" data-close aria-label="Close modal" type="button"> - <span aria-hidden="true">×</span> - </button> -</div>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/about.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,96 @@ +--- +layout: page +title: About +menu: true +permalink: about +--- + +GNU Octave is a high-level language, primarily intended for numerical +computations. +It provides a convenient command line interface for solving linear and +nonlinear problems numerically, +and for performing other numerical experiments using a language that is mostly +compatible with Matlab. +It may also be used as a batch-oriented language. + +Octave has extensive tools for solving common numerical linear algebra problems, +finding the roots of nonlinear equations, +integrating ordinary functions, +manipulating polynomials, +and integrating ordinary differential and differential-algebraic equations. +It is easily extensible and customizable via user-defined functions written in +Octave's own language, +or using dynamically loaded modules written in C++, C, Fortran, +or other languages. + +GNU Octave is also freely redistributable software. +You may redistribute it and/or modify it under the terms of the +[GNU General Public License (GPL)][GPL] as published by the +[Free Software Foundation](https://www.fsf.org/). + +Octave was written by [John W. Eaton](mailto:jwe@octave.org) and +[many others](https://hg.savannah.gnu.org/hgweb/octave/file/tip/doc/interpreter/contributors.in). +Because Octave is [free software](https://www.gnu.org/philosophy/free-sw.html) you are encouraged to help make Octave +more useful by writing and contributing additional functions for it, +and by reporting any problems you may have. + + +## History + +Octave was originally conceived (in about 1988) to be companion software for an +undergraduate-level textbook on chemical reactor design being written by James +B. Rawlings of the University of Wisconsin-Madison and John G. Ekerdt of the +University of Texas. +We originally envisioned some very specialized tools for the solution of +chemical reactor design problems. +Later, +after seeing the limitations of that approach, +we opted to attempt to build a much more flexible tool. + +There were still some people who said that we should just be using Fortran +instead, +because it is the computer language of engineering, +but every time we had tried that, +the students spent far too much time trying to figure out why their Fortran +code failed and not enough time learning about chemical engineering. +We believed that with an interactive environment like Octave, +most students would be able to pick up the basics quickly, +and begin using it confidently in just a few hours. + +Full-time development began in the Spring of 1992. +The first alpha release was January 4, 1993, and version 1.0 was released +February 17, 1994. +Since then, Octave has been through several major revisions, +is included with [Debian GNU/Linux](https://www.debian.org/), +[openSUSE](https://www.opensuse.org/), +and many other GNU/Linux distributions. +Octave was reviewed in the in the July, 1997 issue of the +[Linux Journal](http://www.linuxjournal.com/article/1225). + +Clearly, +Octave is now much more than just another courseware package with limited +utility beyond the classroom. +Although our initial goals were somewhat vague, +we knew that we wanted to create something that would enable students to solve +realistic problems, +and that they could use for many things other than chemical reactor design +problems. +Today, thousands of people worldwide are using Octave in teaching, +research, and commercial applications. + +Just about everyone thinks that the name Octave has something to do with music, +but it is actually the name of one of the author's former professor +[Octave Levenspiel](https://en.wikipedia.org/wiki/Octave_Levenspiel) +who wrote a famous textbook on chemical reaction engineering, +and who was also well known for his ability to do quick "back of the envelope" +calculations. +We hope that this software will make it possible for many people to do more +ambitious computations just as easily. + +Everyone is encouraged to share this software with others under the terms of +the [GNU General Public License (GPL)][GPL]. +You are also encouraged to help make Octave more useful by writing and +contributing additional functions for it, +and by reporting any problems you may have. + +[GPL]: https://www.gnu.org/copyleft/gpl.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/bugs.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,76 @@ +--- +layout: page +title: Bugs +menu: true +permalink: bugs +--- + +GNU Octave uses the bug tracker at [Savannah]({{ site.bugs_url }}). +There you can [report a new bug]({{ site.bugs_url }}&func=additem), +[browse recent bugs]({{ site.bugs_url }}), +or [search for bugs]({{ site.bugs_url }}&func=search). + +### Guidelines for reporting a new bug + +1. **Is the bug already known?** + + - [Search for already reported bugs at the bug tracker]({{ site.bugs_url }}&func=search), + - look at the + [list of known causes of trouble]({{ site.docs_url }}/Trouble.html) + in the Octave manual. + + <p></p> + + If you your problem **does not appear** to be known, + then you should report the problem. + +2. **Is it really a bug?** + + - If Octave **crashes**, for any input whatever, that is a bug. + Reliable interpreters never crash. + - If Octave produces **incorrect results**, for any input whatever, + that is a bug. + - If Octave produces an **error message** for **valid input**, that is a bug. + - If Octave produces **no error message** for **invalid input**, + that is a bug. + + <p></p> + +3. **Missing function in Octave** + + - If the function is + [part of some Octave Forge package]({{ site.sourceforge_url }}/functions_by_alpha.php), + this is **not** a bug. + - If the function **exists in Matlab**, + but **not in core Octave** and **not in Octave Forge packages**, + that is a bug. + + <p></p> + + It might take several months or years until for new features to become part + of Octave, consider + [commercial support]({{ "commercial-support.html" | relative_url }}) + if you don't want to wait that long). + +4. **Make your bug report count** + + - **Report all the facts:**<br> + Include all information that make it possible to fix the bug. + If you are not sure whether to state a fact or leave it out, state it. + This information includes your **operating system**, **Octave version**, + **exact error message** or **exact output**. + - **Give a short, specific, complete example:**<br> + Avoid: pseudocode, uninitialized variables, + calls to unattached scripts or functions. + - **Justify your exectations briefly:**<br> + Although it might seem obvious to you, + someone examining the problem might not know what result you consider + correct. + + +### Sending Patches for Octave + +If you have a suggested fix for a bug, +please attach it to your report in the tracker. +Your patch is more likely to be reviewed if you follow the guidelines from the +Octave Wiki about the [creation of changesets]({{ site.wiki_url }}/Mercurial).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/donate.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,30 @@ +--- +layout: page +title: Donate +menu: true +permalink: donate +--- + +> **Octave development takes a lot of time and expertise.** +> **Your contributions help to ensure that Octave will continue to improve.** + +- [FSF Donation Page](https://crm.fsf.org/civicrm/contribute/transact?reset=1&id=10) +- [PayPal](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=UYHVW7R596RZ8) + to John W. Eaton Consulting, Inc. (Octave project leader) +- [Bitcoin](bitcoin:1E6HchBMX1EfiJQhSUanuF4VYKk552tEHF) + (1E6HchBMX1EfiJQhSUanuF4VYKk552tEHF) +- [Commercial support options]({{ "commercial-support.html" | relative_url }}) + to implement the specific features + +If you are already an Octave user and would like to see it improve more rapidly, +then please donate so that we can spend more of our time working on Octave. +If we could raise as little as $300,000/year, +we could pay several key developers to work full time on Octave. +Given even the most conservative estimate of the number of users of Octave, +this amount could easily be reached if every user contributed the cost of +a few lattes. + +If your company has a budget for numerical computing tools, +consider spending 10% (or more!) of that on Octave. +Do you expect Octave to improve on a $0 budget +while the proprietary tools are well-funded by your license fees?
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/download.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,131 @@ +--- +layout: page +title: Download +menu: true +permalink: download +--- + +<div class="button-group large expanded stacked-for-small"> + <a class="button" href="#source">Source</a> + <a class="button" href="#linux">GNU/Linux</a> + <a class="button" href="#macos">macOS</a> + <a class="button" href="#bsd">BSD</a> + <a class="button" href="#ms-windows">MS Windows</a> +</div> + + +<p id="source"> </p> + +### Source {#source2} + +The latest released version of Octave is always available from + +- https://ftp.gnu.org/gnu/octave +- ftp://ftp.gnu.org/gnu/octave + +Please download from +[https://ftpmirror.gnu.org/octave](https://ftpmirror.gnu.org/octave), +which will redirect automatically to a nearby +[mirror site](https://www.gnu.org/order/ftp.html). + + +<p id="linux"> </p> + +### GNU/Linux {#linux2} + +Packaged versions of Octave for GNU/Linux systems are provided by the +individual distributions described in the +[Octave wiki]({{ site.wiki_url }}/Category:Installation). +These packages are created by volunteers. +The delay between an Octave source release and the availability of a package +for a particular GNU/Linux distribution varies. + +Alternatively, +there are some distribution independent installation methods for more recent +versions of GNU Octave described in the +[Octave wiki]({{ site.wiki_url }}/Octave_for_GNU/Linux#Distribution_independent). + + +<p id="macos"> </p> + +### macOS {#macos2} + +The [Octave Wiki]({{ site.wiki_url }}/Octave_for_macOS) has instructions for +installing Octave on macOS systems. +Octave is also available in third-party package managers such as +[Homebrew](https://brew.sh/) and [MacPorts](https://www.macports.org). + + +<p id="bsd"> </p> + +### BSD {#bsd2} + +Executable versions of Octave for BSD systems are provided by the individual +distributions. +Both [FreeBSD](https://www.freebsd.org/) and [OpenBSD](https://www.openbsd.org/) +have Octave packages. +These packages are created by volunteers and the Octave project has no control +over that process. + + +<p id="ms-windows"> </p> + +### Microsoft Windows {#ms-windows2} + +<div class="primary callout small" data-closable> +<b>Note:</b> All installers below bundle several <b>Octave Forge packages</b> +so they don't have to be installed separately. +After installation type <code>pkg list</code> to list them. +<a href="{{ site.wiki_url }}/Octave_for_Microsoft_Windows">Read more.</a> +<a href="#ms-windows" class="close-button" aria-label="Dismiss alert" type="button" data-close> + <span aria-hidden="true">×</span> +</a> +</div> + +- Windows-64 (recommended) + - [octave-5.2.0_1-w64-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-installer.exe) + (~ 300 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-installer.exe.sig) + - [octave-5.2.0_1-w64.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.7z) + (~ 300 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.7z.sig) + - [octave-5.2.0_1-w64.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.zip) + (~ 530 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64.zip.sig) + +<p></p> + +- Windows-32 (old computers) + - [octave-5.2.0_1-w32-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32-installer.exe) + (~ 275 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32-installer.exe.sig) + - [octave-5.2.0_1-w32.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.7z) + (~ 258 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.7z.sig) + - [octave-5.2.0_1-w32.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.zip) + (~ 447 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w32.zip.sig) + +<p></p> + +- Windows-64 (64-bit linear algebra for large data) + <br><small> + Unless your computer has more than ~32GB of memory + <strong>and</strong> you need to solve linear algebra problems + with arrays containing more than ~2 billion elements, this + version will offer no advantage over the recommended Windows-64 + version above. + </small> + + - [octave-5.2.0_1-w64-64-installer.exe](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64-installer.exe) + (~ 286 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64-installer.exe.sig) + - [octave-5.2.0_1-w64-64.7z](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.7z) + (~ 279 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.7z.sig) + - [octave-5.2.0_1-w64-64.zip](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.zip) + (~ 490 MB) + [[signature]](https://ftpmirror.gnu.org/octave/windows/octave-5.2.0_1-w64-64.zip.sig) + +All Windows binaries with corresponding source code can be downloaded from +[https://ftpmirror.gnu.org/octave/windows/](https://ftpmirror.gnu.org/octave/windows/).
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/get-involved.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,45 @@ +--- +layout: page +title: Get Involved +menu: true +permalink: get-involved +--- + +We always need more help improving Octave +and there are many ways you can contribute. +You can help by fixing bugs, +developing new features, +writing [Octave Forge packages]({{ site.sourceforge_url }}), +answering questions in Discourse, +helping to improve the web pages. +If you are wondering what to work on, +we have a standard answer: +**What would you like to work on?** + +For some inspiration, +we do maintain a [list of possible projects]({{ site.wiki_url }}/Projects) +and a [Developer FAQ]({{ site.wiki_url }}/Developer_FAQ) on the Octave Wiki. + +If know what to contribute, +discuss your ideas with us on [Discourse]({{ site.discourse_url }}) +("maintainers" category) or on our IRC +[Freenode `{{ site.irc_channel }}` channel](https://webchat.freenode.net/#octave). + + +### Using the Development Sources + +The latest development sources of GNU Octave are available via +[Mercurial](https://www.mercurial-scm.org/) (hg). +The primary repository address is +[https://www.octave.org/hg/octave](https://www.octave.org/hg/octave), +which currently redirects to +[https://hg.savannah.gnu.org/hgweb/octave](https://hg.savannah.gnu.org/hgweb/octave). +You obtain the latest development version of Octave sources with the following +command: + +{% highlight text %} +hg clone https://www.octave.org/hg/octave +{% endhighlight %} + +The [Developer FAQ]({{ site.wiki_url }}/Developer_FAQ) on the Octave Wiki +contains more detailed and recent information about Octave development.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pages/menu/news.md Tue Sep 15 14:55:06 2020 +0900 @@ -0,0 +1,29 @@ +--- +layout: page +title: News +menu: true +permalink: news +--- + +{% for post in site.posts %} +<div class="primary callout"> + {% if post == site.posts.first %} + <a class="float-right button tiny warning" href="{{ "/feed.xml" | relative_url }}"> + RSS + </a> + {% endif %} + {% if post.title == "News Archive" %} + <h3 class="entry-title"> + <a href="{{ post.url | relative_url }}">{{ post.title }}</a> + </h3> + {% else %} + <h3 class="entry-title"> + <a href="{{ post.url | relative_url }}">{{ post.title }}</a> + </h3> + <p class="post-meta">{{ post.date | date: "%b %-d, %Y" }}</p> + <div class="entry-content"> + {{ post.excerpt }} + </div> + {% endif %} +</div> +{% endfor %}
--- a/pages/news.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ ---- -layout: page -title: News -menu: true -permalink: news ---- - -{% for post in site.posts %} -<div class="primary callout"> - {% if post == site.posts.first %} - <a class="float-right button tiny warning" href="{{ "/feed.xml" | relative_url }}"> - RSS - </a> - {% endif %} - {% if post.title == "News Archive" %} - <h3 class="entry-title"> - <a href="{{ post.url | relative_url }}">{{ post.title }}</a> - </h3> - {% else %} - <h3 class="entry-title"> - <a href="{{ post.url | relative_url }}">{{ post.title }}</a> - </h3> - <p class="post-meta">{{ post.date | date: "%b %-d, %Y" }}</p> - <div class="entry-content"> - {{ post.excerpt }} - </div> - {% endif %} -</div> -{% endfor %}
--- a/pages/support.md Tue Sep 15 14:51:27 2020 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,48 +0,0 @@ ---- -layout: page -title: Support/Help -menu: true -permalink: support ---- - -#### Contact the **user community** - -<div style="margin-left: 2em;" markdown="1"> -The Octave user community is a loosely organized association of **volunteers**. -Your interactions with the community will be better if you have the -[right expectations about the support options]({{ "support-expectations.html" | relative_url }}) -available to you. -</div> - -<div style="margin-left: 2em;" markdown="1"> -- [**Discourse**]({{ site.discourse_url }}) — - the main chat portal for Octave users and developers. -- **IRC**: Chat with users and developers on the - [Freenode `{{ site.irc_channel }}` channel](https://webchat.freenode.net/#octave). -- Browse the - [**mailing list archives**](https://lists.gnu.org/archive/html/help-octave/). -</div> - - -#### Get [**commercial support**]({{ "commercial-support.html" | relative_url }}) - -<div style="margin-left: 2em;" markdown="1"> -- Setup assistance -- Custom feature implementation -</div> - - -#### Read the **GNU Octave Manual** - -<div style="margin-left: 2em;" markdown="1"> -- [Web version]({{ site.docs_url }}) -- [PDF version]({{ "octave.pdf" | relative_url }}) -- Type `doc` inside Octave -</div> - - -#### Browse the [Octave Wiki]({{ site.wiki_url }}) - -<div style="margin-left: 2em;" markdown="1"> -- Read [Frequently Asked Questions (FAQ)]({{ site.faq_url }}) -</div>