Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.6%) to scientific vocabulary
Keywords
Repository
Tensor network algorithms in MATLAB
Basic Info
Statistics
- Stars: 5
- Watchers: 2
- Forks: 4
- Open Issues: 1
- Releases: 3
Topics
Metadata Files
README.md
An open-source tensor network library for MATLAB.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
About The Project
This is a package which aims to efficiently implement the various elementary algorithms that arise in the context of tensor networks. Currently, this includes:
- Various basic and utility tensor operations, such as creation routines, various linear algebra routines (norms, traces, overlaps, ...), index permutations, ...
- Tensor contraction routines, both pairwise as well as through a network contraction routine.
- Tensor factorizations, such as QR, LQ and polar decompositions, eigendecompositions and singular value decompositions.
- Solver algorithms for eigen systems and linear systems.
Additionally, these tensors support a general global symmetries, in which case both memory and CPU usage are optimized. The framework is able to support both Abelian and non-Abelian symmetries, as well as symmetry groups with multiplicities, which can have bosonic or fermionic braiding rules. The design of the algorithms is chosen such that the inclusion of symmetries should not alter the code after the creation of the tensors. Currently, the following symmetries are implemented:
- Z(N)
- U1
- A4
- SU(N)
- O2
- Fermionic Z2
- Direct product groups
Getting Started
Requirements
This project depends on the following: - MATLAB version R2020b or newer - Parallel Computing Toolbox - Deep Learning Toolbox - A C++ compiler compatible with your MATLAB version for MEX-file compilation.
Installation
Clone the repo into a local folder.
sh git clone https://github.com/quantumghent/TensorTrack.git mylocalfolderAdd the folder and subfolders to your MATLAB path.
- Via the MATLAB UI: Home > Environment > Set Path > Add with Subfolders > mylocalfolder/src
- Via the MATLAB Command Window:
matlabsession addpath(genpath('mylocalfolder/src'))By default, the path is reset every time you close the application. You can permanently add this package to the path by callingsavepath.
Precompile the necessary mex files. Within the MATLAB Command Window, call:
matlabsession GetMD5 uninit
Usage
For examples, please refer to the Documentation
Contributing
Contributions as well as feature requests are greatly appreciated.
If you have a suggestion that would make this project better, please do not hesitate to open an issue with the tag "enhancement". Alternatively, you could also fork the repo and create a pull request:
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Don't forget to give the project a star! Thanks again!
License
Distributed under the MIT License. See LICENSE.txt for more information.
Contact
Lukas Devos - lkdvos - Lukas.Devos@ugent.be
Lander Burgelman - leburgel - Lander.Burgelman@ugent.be
Project Link: https://github.com/quantumghent/TensorTrack
Acknowledgments
This project has been made possible through the work of the following people: * Lukas Devos * Lander Burgelman * Bram Vanhecke * Jutho Haegeman * Frank Verstraete * Laurens Vanderstraeten * ...
Owner
- Name: quantumghent
- Login: quantumghent
- Kind: organization
- Repositories: 6
- Profile: https://github.com/quantumghent
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Devos" given-names: "Lukas" orcid: "https://orcid.org/0000-0002-0256-4200" - family-names: "Burgelman" given-names: "Lander" orcid: "https://orcid.org/0000-0003-1724-5330" - family-names: "Vanhecke" given-names: "Bram" orcid: "https://orcid.org/0000-0001-9557-1591" - family-names: "Haegeman" given-names: "Jutho" orcid: "https://orcid.org/0000-0002-0858-291X" - family-names: "Verstraete" given-names: "Frank" orcid: "https://orcid.org/0000-0003-0270-5592" - family-names: "Vanderstraeten" given-names: "Laurens" orcid: "https://orcid.org/0000-0002-3227-9822" title: "TensorTrack" version: 0.0.1 doi: 10.5281/zenodo.6619296 date-released: 2022-06-07 url: "https://github.com/lkdvos/TensorTrack"
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2
Dependencies
- linkify-it-py ==2.0.0
- myst-parser ==0.17.2
- nbsphinx ==0.8.9
- sphinx ==4.5.0
- sphinx-gallery ==0.10.1
- sphinx-prompt *
- sphinx-rtd-theme ==0.5.1
- sphinxcontrib-matlabdomain ==0.12.0
- actions/checkout v2 composite
- codecov/codecov-action v2 composite
- matlab-actions/run-tests v1 composite
- matlab-actions/setup-matlab v1 composite
- mikepenz/action-junit-report v3 composite