Category:Packages: Difference between revisions

1,396 bytes removed ,  6 May 2023
Update link, remove duplicate entries.
(Update link, remove duplicate entries.)
 
(21 intermediate revisions by 4 users not shown)
Line 3: Line 3:
:''This is a list of Packages and Codes available for GNU Octave.''
:''This is a list of Packages and Codes available for GNU Octave.''


= Octave packages =
Octave [https://octave.org/doc/latest/Packages.html packages] extend the functionality of GNU Octave by particular useful features and can be developed and distributed by anyone.  Currently there are two collections of Octave packages:


[https://octave.org/doc/latest/Packages.html Octave packages] extend the functionality of GNU Octave by particular useful features and can be developed and distributed by anyone.  Currently there are two collections of Octave packages:
* https://packages.octave.org
* [[:Category:Octave Forge|Octave Forge]] (legacy)


* [[:Category:Octave Forge|Octave Forge]]
== About Octave packages ==
* [https://gnu-octave.github.io/pkg-index/ Package extensions index]


The format and requirements of Octave packages is specified in the [https://octave.org/doc/latest/Creating-Packages.html GNU Octave manual].  There is an [https://github.com/gnu-octave/pkg-example example package] as well.
The format and requirements of Octave packages is specified in the [https://octave.org/doc/latest/Creating-Packages.html GNU Octave manual].  There is an [https://github.com/gnu-octave/pkg-example example package] as well.
Line 17: Line 17:
# <code>pkg install https://github.com/gnu-octave/pkg-example/archive/1.0.0.tar.gz</code>
# <code>pkg install https://github.com/gnu-octave/pkg-example/archive/1.0.0.tar.gz</code>


If your packages meets [https://octave.sourceforge.io/developers.php additional criteria] and is added to the Octave Forge index, you can furthermore install it with the <code>-forge</code> flag, for example:
If you created your own package, it can be added to the [https://github.com/gnu-octave/packages/blob/master/CONTRIBUTING.md Octave Package] index.
 
Existing packages of the Octave Forge index can be installed with the <code>-forge</code> flag, for example:


* <code>pkg install -forge image</code>
* <code>pkg install -forge image</code>


= Other codes =
The Octave Forge index is a legacy project and does not accept new packages.


== With <code>pkg</code> install ==
== Free and open-source code with custom installation ==


{| class="wikitable sortable"
Those codes have to be installed as described on the respective website.
|-
! scope="col" | Name
! scope="col" class="unsortable" | Description
! scope="col" class="unsortable" | Links
|-
| MPI
| Octave bindings for basic Message Passing Interface (MPI) functions for parallel computing.
| https://github.com/carlodefalco/octave-mpi
|-
| Packajoozle
| An experimental alternative package manager for Octave.
| https://github.com/apjanke/octave-packajoozle
|-
| Tablicious
| Matlab-compatible table, datetime, and categorical data types (Like "pandas for Octave").
| https://github.com/apjanke/octave-tablicious
|-
| Websockets
| The Websockets package is a simple implementation of a websocket client for GNU Octave. It contains the elemental functions to communicate with a websockets server.
| https://github.com/gnu-octave/octave-websockets
|-
| [[Pythonic]]
| The Pythonic package provides a Python language binding for Octave, to allow any Python package to be loaded and used directly, with automatic translation from Octave to Python data types.
| https://gitlab.com/mtmiller/octave-pythonic
|}
 
== Custom installation method ==


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 84: Line 59:
| https://aeolianine.github.io/octave-networks-toolbox/
| https://aeolianine.github.io/octave-networks-toolbox/
|-
|-
| [[Symbolic package | octsympy]]
| [[sci cosim]]
| An implementation of a symbolic toolbox using SymPy.
| Scilab co-simulation package.
| https://github.com/cbm755/octsympy https://octave.sourceforge.io/symbolic
| https://github.com/amromanov/sci_cosim
|-
| shogun
| The Shogun Machine Learning Toolbox®.
| https://github.com/shogun-toolbox/shogun
|-
| vlfeat
| The VLFeat open source library implements popular computer vision algorithms including HOG, SIFT, MSER, k-means, hierarchical k-means, agglomerative information bottleneck, SLIC superpixels, and quick shift.
| https://github.com/vlfeat/vlfeat https://www.vlfeat.org/
|-
| epanet-octave
| The epanet-octave open source library is a wrapper, including some scripts, to call Epanet Toolkit. Functions are adapted to improve its usability in GNU Octave (e.g. allowing vectors as EpaNet Toolkit function inputs). Still under development.
| https://forja.cica.es/projects/epanet-octave/
|-
| mexopencv
| Collection and a development kit of mex functions for OpenCV library.
| https://github.com/kyamagu/mexopencv/ https://kyamagu.github.io/mexopencv/
|-
| gpml
| Gaussian processes for machine learning.
| https://gitlab.com/hnickisch/gpml-matlab/ http://gaussianprocess.org/gpml/code/matlab/doc/
|-
| ekfukf
| Kalman filtering and smoothing.
| https://github.com/kakila/ekfukf/
|}
|}


 
== Commercial ==
=== sci cosim ===
 
: ''Main article: [[sci cosim]]''
 
Scilab co-simulation package
 
* https://github.com/amromanov/sci_cosim
 
=== shogun ===
 
The Shogun Machine Learning Toolbox®
 
* https://github.com/shogun-toolbox/shogun
 
=== vlfeat ===
 
The VLFeat open source library implements popular computer vision algorithms including HOG, SIFT, MSER, k-means, hierarchical k-means, agglomerative information bottleneck, SLIC superpixels, and quick shift.
 
* http://www.vlfeat.org/index.html
 
=== epanet-octave ===
 
The epanet-octave open source library is a wrapper, including some scripts, to call Epanet Toolkit. Functions are adapted to improve its usability in GNU Octave (e.g. allowing vectors as EpaNet Toolkit function inputs). Still under development.
 
* https://forja.cica.es/projects/epanet-octave/
 
=== mexopencv ===
 
Collection and a development kit of matlab mex functions for OpenCV library
 
* http://kyamagu.github.io/mexopencv
* https://github.com/kyamagu/mexopencv
 
=== gpml ===
 
Gaussian processes for machine learning
 
* [http://www.gaussianprocess.org/gpml/code/matlab/doc/ Webpage of the author]
* [https://gitlab.com/hnickisch/gpml-matlab Repository]
* Downloads or pkg installation: https://gitlab.com/hnickisch/gpml-matlab/-/releases
 
=== ekfukf ===
 
Kalman filtering and smoothing
 
* [https://github.com/kakila/ekfukf Repository]
 
=== fda ===
 
Functional data analysis
 
* [http://www.psych.mcgill.ca/misc/fda/ Webpage of the author]
* [https://gitlab.com/kakila/fda Repository]
 
== Commercial code ==


{| class="wikitable sortable"
{| class="wikitable sortable"
Line 153: Line 97:
|-
|-
| FEATool
| FEATool
| [https://www.featool.com/multiphysics/ FEATool Multiphysics] is a commercial and proprietary Octave and Matlab FEM toolbox for modeling and simulation of physics and engineering applications with the finite element method. FEATool features an easy to use GUI and fully integrated CAD, geometry tools, automatic grid generation and solvers.  
| [https://www.featool.com/multiphysics/ FEATool Multiphysics] is a commercial and proprietary FEM toolbox for modeling and simulation of physics and engineering applications with the finite element method. FEATool features an easy to use GUI and fully integrated CAD, geometry tools, automatic grid generation and solvers.  
| https://www.featool.com/
| https://www.featool.com/
|}
|}


= See also =
== See also ==


* [https://octave.org/doc/latest/Creating-Packages.html Octave manual - Creating packages]
* [https://octave.org/doc/latest/Creating-Packages.html Octave manual - Creating packages]
* [https://github.com/gnu-octave/pkg-example Octave package example]
* [https://github.com/gnu-octave/pkg-example Octave package example]
* [[:Category:User Codes]]


[[Category:Contents]]
[[Category:Contents]]