Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Tensor software
Class of mathematical software

Tensor software is a class of mathematical software designed for manipulation and calculation with tensors.

We don't have any images related to Tensor software yet.
We don't have any YouTube videos related to Tensor software yet.
We don't have any PDF documents related to Tensor software yet.
We don't have any Books related to Tensor software yet.
We don't have any archived web articles related to Tensor software yet.

Standalone software

  • SPLATT1 is an open source software package for high-performance sparse tensor factorization. SPLATT ships a stand-alone executable, C/C++ library, and Octave/MATLAB API.
  • Cadabra2 is a computer algebra system (CAS) designed specifically for the solution of problems encountered in field theory. It has extensive functionality for tensor polynomial simplification including multi-term symmetries, fermions and anti-commuting variables, Clifford algebras and Fierz transformations, implicit coordinate dependence, multiple index types and many more. The input format is a subset of TeX. Both a command-line and a graphical interface are available.
  • Tela3 is a software package similar to MATLAB and GNU Octave, but designed specifically for tensors.

Software for use with Mathematica

  • Tensor4 is a tensor package written for the Mathematica system. It provides many functions relevant for General Relativity calculations in general Riemann–Cartan geometries.
  • Ricci5 is a system for Mathematica 2.x and later for doing basic tensor analysis, available for free.
  • TTC6 Tools of Tensor Calculus is a Mathematica package for doing tensor and exterior calculus on differentiable manifolds.
  • EDC and RGTC,7 "Exterior Differential Calculus" and "Riemannian Geometry & Tensor Calculus," are free Mathematica packages for tensor calculus especially designed but not only for general relativity.
  • Tensorial8 "Tensorial 4.0" is a general purpose tensor calculus package for Mathematica.
  • xAct:9 Efficient Tensor Computer Algebra for Mathematica. xAct is a collection of packages for fast manipulation of tensor expressions.
  • GREAT10 is a free package for Mathematica that computes the Christoffel connection and the basic tensors of General Relativity from a given metric tensor.
  • Atlas 2 for Mathematica11 is a powerful Mathematica toolbox which allows to do a wide range of modern differential geometry calculations
  • GRTensorM12 is a computer algebra package for performing calculations in the general area of differential geometry.
  • MathGR13 is a package to manipulate tensor and GR calculations with either abstract or explicit indices, simplify tensors with permutational symmetries, decompose tensors from abstract indices to partially or completely explicit indices and convert partial derivatives into total derivatives.
  • TensoriaCalc14 is a tensor calculus package written for Mathematica 9 and higher, aimed at providing user-friendly functionality and a smooth consistency with the Mathematica language itself. As of January 2015, given a metric and the coordinates used, TensoriaCalc can compute Christoffel symbols, the Riemann curvature tensor, and Ricci tensor/scalar; it allows for user-defined tensors and is able to perform basic operations such as taking the covariant derivatives of tensors. TensoriaCalc is continuously under development due to time constraints faced by its developer.
  • OGRe15 is a modern free and open-source Mathematica package for tensor calculus, released in 2021 for Mathematica 12.0 and later. It is designed to be both powerful and user-friendly, and is especially suitable for general relativity. OGRe allows performing arbitrarily complicated tensor operations, and automatically transforms between index configurations and coordinate systems behind the scenes as needed for each operation.

Software for use with Maple

  • GRTensorII16 is a computer algebra package for performing calculations in the general area of differential geometry.
  • Atlas 2 for Maple17 is a modern differential geometry for Maple.
  • DifferentialGeometry18 is a package which performs fundamental operations of calculus on manifolds, differential geometry, tensor calculus, General Relativity, Lie algebras, Lie groups, transformation groups, jet spaces, and the variational calculus. It is included with Maple.
  • Physics19 is a package developed as part of Maple, which implements symbolic computations with most of the objects used in mathematical physics. It includes objects from general relativity (tensors, metrics, covariant derivatives, tetrads etc.), quantum mechanics (Kets, Bras, commutators, noncommutative variables) etc.

Software for use with Matlab

Software for use with Maxima

Maxima25 is a free open source general purpose computer algebra system which includes several packages for tensor algebra calculations in its core distribution. It is particularly useful for calculations with abstract tensors, i.e., when one wishes to do calculations without defining all components of the tensor explicitly. It comes with three tensor packages:26

  • itensor for abstract (indicial) tensor manipulation,
  • ctensor for component-defined tensors, and
  • atensor for algebraic tensor manipulation.

Software for use with R

  • Tensor27 is an R package for basic tensor operations.
  • rTensor28 provides several tensor decomposition approaches.
  • nnTensor29 provides several non-negative tensor decomposition approaches.
  • ttTensor30 provides several tensor-train decomposition approaches.
  • tensorBF31 is an R package for Bayesian Tensor decomposition.
  • MTF32 Bayesian Multi-Tensor Factorization for data fusion and Bayesian versions of Tensor PCA and Tensor CCA. Software: MTF.

Software for use with Python

  • TensorLy33 provides several tensor decomposition approaches.
  • OGRePy34 is Python port of the Mathematica package OGRe (see § Software for use with Mathematica), released in 2024 for Python 3.12 and later. It utilizes SymPy for symbolic computations and Jupyter as a notebook interface. OGRePy allows calculating arbitrary tensor formulas using any combination of addition, multiplication by scalar, trace, contraction, partial derivative, covariant derivative, and permutation of indices, and provides facilities for calculating various curvature tensors and geodesic equations.
  • Tensorgrad, an open-source python package for symbolic tensor manipulation. Supports general symbolic tensor derivatives using Penrose graphical notation, and gaussian expectations via Isserlis' theorem.

Software for use with Julia

  • TensorDecompositions.jl35 provides several tensor decomposition approaches.
  • TensorToolbox.jl36 provides several tensor decomposition approaches. This follows the functionality of MATLAB Tensor toolbox and Hierarchical Tucker Toolbox.
  • ITensors.jl37 is a library for rapidly creating correct and efficient tensor network algorithms. This is the Julia version of ITensor, not a wrapper around the C++ version but full implementations by Julia language.

Software for use with SageMath

  • SageManifolds: tensor calculus on smooth manifolds; all SageManifolds38 code is included in SageMath since version 7.5; it allows for computations in various vector frames and coordinate charts, the manifold not being required to be parallelizable.

Software for use with Java

  • ND4J: N-dimensional arrays for the JVM 39 is a Java library for basic tensor operations and scientific computing.
  • Tensor: computation for regular or unstructured multi-dimensional tensors. Scalar entries are either in numeric or exact precision. API inspired by Mathematica. Java 8 library in with no external dependencies.

Libraries

  • Redberry40 is an open source computer algebra system designed for symbolic tensor manipulation. Redberry provides common tools for expression manipulation, generalized on tensorial objects, as well as tensor-specific features: indices symmetries, LaTeX-style input, natural dummy indices handling, multiple index types etc. The HEP package includes tools for Feynman diagrams calculation: Dirac and SU(N) algebra, Levi-Civita simplifications, tools for calculation of one-loop counterterms etc. Redberry is written in Java and provides extensive Groovy-based programming language.
  • libxm41 is a lightweight distributed-parallel tensor library written in C.
  • FTensor42 is a high performance tensor library written in C++.
  • TL43 is a multi-threaded tensor library implemented in C++ used in Dynare++. The library allows for folded/unfolded, dense/sparse tensor representations, general ranks (symmetries). The library implements Faa Di Bruno formula and is adaptive to available memory. Dynare++ is a standalone package solving higher order Taylor approximations to equilibria of non-linear stochastic models with rational expectations.
  • vmmlib44 is a C++ linear algebra library that supports 3-way tensors, emphasizing computation and manipulation of several tensor decompositions.
  • Spartns45 is a Sparse Tensor framework for Common Lisp.
  • FAstMat46 is a thread-safe general tensor algebra library written in C++ and specially designed for FEM/FVM/BEM/FDM element/edge wise computations.
  • Cyclops Tensor Framework 47 is a distributed memory library for efficient decomposition of tensors of arbitrary type and parallel MPI+OpenMP execution of tensor contractions/functions.
  • TiledArray48 is a scalable, block-sparse tensor library that is designed to aid in rapid composition of high-performance algebraic tensor equation. It is designed to scale from a single multicore computer to a massively-parallel, distributed-memory system.
  • libtensor 49 is a set of performance linear tensor algebra routines for large tensors found in post-Hartree–Fock methods in quantum chemistry.
  • ITensor 50 features automatic contraction of matching tensor indices. It is written in C++ and has higher-level features for quantum physics algorithms based on tensor networks.
  • Fastor 51 is a high performance C++ tensor algebra library that supports tensors of any arbitrary dimensions and all their possible contraction and permutation thereof. It employs compile-time graph search optimisations to find the optimal contraction sequence between arbitrary number of tensors in a network. It has high level domain specific features for solving nonlinear multiphysics problem using FEM.
  • Xerus 52 is a C++ tensor algebra library for tensors of arbitrary dimensions and tensor decomposition into general tensor networks (focusing on matrix product states). It offers Einstein notation like syntax and optimizes the contraction order of any network of tensors at runtime so that dimensions need not be fixed at compile-time.

References

  1. "SPLATT - Parallel Sparse Tensor Decomposition | Karypis Lab". http://www-users.cs.umn.edu/~splatt/

  2. "Cadabra: A field-theory motivated approach to computer algebra". http://cadabra.science

  3. http://www.ava.fmi.fi/prog/tela.html Tela http://www.ava.fmi.fi/prog/tela.html

  4. "Cartan: A Mathematica package for tensor analysis". Archived from the original on 2009-05-31. Retrieved 2010-01-01. Tensors in Physics https://web.archive.org/web/20090531083427/http://www.adinfinitum.no/cartan/

  5. http://www.math.washington.edu/~lee/Ricci/ Ricci http://www.math.washington.edu/~lee/Ricci/

  6. https://sites.google.com/view/xjaen-ttc/home TTC https://sites.google.com/view/xjaen-ttc/home

  7. http://www.inp.demokritos.gr/~sbonano/RGTC/ EDC and RGTC http://www.inp.demokritos.gr/~sbonano/RGTC/

  8. http://home.comcast.net/~djmpark/TensorialPage.html Tensorial http://home.comcast.net/~djmpark/TensorialPage.html

  9. http://www.xact.es/ xAct http://www.xact.es/

  10. http://library.wolfram.com/infocenter/MathSource/4781/ GREAT http://library.wolfram.com/infocenter/MathSource/4781/

  11. http://digi-area.com/Mathematica/atlas/ atlas 2 for Mathematica http://digi-area.com/Mathematica/atlas/

  12. http://grtensor.phy.queensu.ca/ GRTensorII http://grtensor.phy.queensu.ca/

  13. https://github.com/tririver/MathGR; https://arxiv.org/abs/1306.1295 MathGR https://github.com/tririver/MathGR

  14. http://www.stargazing.net/yizen/Tensoria.html TensoriaCalc http://www.stargazing.net/yizen/Tensoria.html

  15. Shoshany, Barak (2021). "OGRe: An Object-Oriented General Relativity Package for Mathematica". Journal of Open Source Software. 6 (65). The Open Journal: 3416. arXiv:2109.04193. Bibcode:2021JOSS....6.3416S. doi:10.21105/joss.03416. https://github.com/bshoshany/OGRe https://doi.org/10.21105/joss.03416

  16. http://grtensor.phy.queensu.ca/ GRTensorII http://grtensor.phy.queensu.ca/

  17. http://digi-area.com/Maple/atlas/ atlas 2 for Maple http://digi-area.com/Maple/atlas/

  18. "Utah State University Differential Geometry Software Project | Utah State University Research | DigitalCommons@USU". http://digitalcommons.usu.edu/dg/

  19. "Overview of the Physics Package - Maple Programming Help". https://www.maplesoft.com/support/help/Maple/view.aspx?path=Physics&cid=496

  20. "Tensorlab | A Matlab package for tensor computations". http://www.tensorlab.net

  21. http://sandia.gov/~tgkolda/TensorToolbox Tensor Toolbox http://sandia.gov/~tgkolda/TensorToolbox

  22. http://www.mathworks.com/matlabcentral/fileexchange/26168 MPCA and MPCA+LDA http://www.mathworks.com/matlabcentral/fileexchange/26168

  23. UMPCA http://www.mathworks.com/matlabcentral/fileexchange/35432

  24. http://www.mathworks.com/matlabcentral/fileexchange/35782 UMLDA http://www.mathworks.com/matlabcentral/fileexchange/35782

  25. http://maxima.sourceforge.net/ Maxima on sourceforge.net http://maxima.sourceforge.net/

  26. http://maxima.sourceforge.net/docs/manual/en/maxima_27.html#SEC90 The itensor Package Guide http://maxima.sourceforge.net/docs/manual/en/maxima_27.html#SEC90

  27. Rougier, Jonathan (2012-05-05), tensor: Tensor product of arrays, retrieved 2016-12-10 https://cran.r-project.org/web/packages/tensor/index.html

  28. Wells, James Li and Jacob Bien and Martin (2015-12-15), rTensor: Tools for Tensor Analysis and Decomposition, retrieved 2016-12-10 https://cran.r-project.org/web/packages/rTensor/index.html

  29. Tsuyuzaki, Koki (2020-06-04), nnTensor: Non-Negative Tensor Decomposition, retrieved 2021-03-04 https://cran.r-project.org/web/packages/nnTensor/index.html

  30. Tsuyuzaki, Koki (2019-03-06), ttTensor: Tensor-Train Decomposition, retrieved 2021-03-04 https://cran.r-project.org/web/packages/nnTensor/index.html

  31. Khan, Suleiman A.; Ammad-ud-din, Muhammad (2016-12-29), tensorBF: Bayesian Tensor Factorization, retrieved 2017-01-07 https://cran.r-project.org/web/packages/tensorBF/index.html

  32. Khan, Suleiman A.; Leppäaho, Eemeli; Kaski, Samuel (2016-06-10). "Bayesian multi-tensor factorization". Machine Learning. 105 (2): 233–253. arXiv:1412.4679. doi:10.1007/s10994-016-5563-y. ISSN 0885-6125. S2CID 11871330. /wiki/ArXiv_(identifier)

  33. Kossaifi, Jean; Panagakis, Yannis; Anandkumar, Anima; Pantic, Maja (2019). "TensorLy: Tensor Learning in Python". Journal of Machine Learning Research. 20 (26): 1–6. http://jmlr.org/papers/v20/18-277.html

  34. "OGRePy: An Object-Oriented General Relativity Package for Python". GitHub. https://github.com/bshoshany/OGRePy

  35. yunjhongwu/TensorDecompositions.jl, 2018-09-16, retrieved 2021-03-04 https://github.com/yunjhongwu/TensorDecompositions.jl

  36. Periša, Lana; Arslan, Alex (2019-11-13), lanaperisa/TensorToolbox.jl, doi:10.5281/zenodo.3540787, retrieved 2021-03-04 https://github.com/lanaperisa/TensorToolbox.jl

  37. Fishman, Matthew; Shite, Steven R.; Stoudenmire, E. Miles (2020-06-28). "The ITensor Software Library for Tensor Network Calculations". Mathematical Software. arXiv:2007.14822v1. /wiki/ArXiv_(identifier)

  38. http://sagemanifolds.obspm.fr/ SageManifolds http://sagemanifolds.obspm.fr/

  39. Gibson, Adam (2017-11-11), ND4J: N-dimensional arrays for the JVM, retrieved 2016-12-10 http://nd4j.org/

  40. Homepage: http://redberry.cc . Redberry project at Bitbucket: http://bitbucket.org/redberry/redberry http://redberry.cc

  41. https://github.com/ilyak/libxm libxm https://github.com/ilyak/libxm

  42. http://www.wlandry.net/Projects/FTensor FTensor http://www.wlandry.net/Projects/FTensor

  43. http://www.cepremap.cnrs.fr/juillard/mambo/download/manual/dynare++/tl.pdf TL http://www.cepremap.cnrs.fr/juillard/mambo/download/manual/dynare++/tl.pdf

  44. https://vmml.github.com/vmmlib/ vmmlib https://vmml.github.com/vmmlib/

  45. http://aleph0.info/spartns/ Spartns http://aleph0.info/spartns/

  46. http://www.cimec.org.ar/petscfem FastMat http://www.cimec.org.ar/petscfem

  47. "Fork of cyclops-community/ctf repository updated haphazardly, previously this was main repo location: Solomonik/ctf". GitHub. 2018-10-31. https://github.com/solomonik/ctf

  48. "A massively-parallel, block-sparse tensor framework written in C++: ValeevGroup/tiledarray". GitHub. 2019-02-03. https://github.com/ValeevGroup/tiledarray

  49. "Downloads - iOpenShell". http://iopenshell.usc.edu/downloads/tensor/

  50. "ITensor - Intelligent Tensor Library". http://itensor.org

  51. "A light-weight high performance SIMD based tensor algebra framework in C++11/14/17: Romeric/Fastor". GitHub. 2019-01-11. https://github.com/romeric/Fastor

  52. "Xerus Documentation - Xerus". https://libxerus.org