quanticstci.jl
Science Score: 67.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
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org, aps.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (10.4%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: tensor4all
- License: mit
- Language: Jupyter Notebook
- Default Branch: main
- Homepage: https://tensor4all.github.io/QuanticsTCI.jl/
- Size: 16.3 MB
Statistics
- Stars: 13
- Watchers: 4
- Forks: 3
- Open Issues: 2
- Releases: 3
Metadata Files
README.md
QuanticsTCI
This module contains utilities for interpolations of functions in the quantics TCI / quantics tensor train (QTT) format. It is a small wrapper around TensorCrossInterpolation.jl and QuanticsGrids.jl with more convenient functionality intended to cover the most common use cases. For more advanced or unusual use cases, it is likely that you will need to rely on those two libraries directly.
Installation
This module has been registered in the General registry. It can be installed by typing the following in a Julia REPL:
julia
using Pkg; Pkg.add("QuanticsTCI.jl")
This module depends on: - TensorCrossInterpolation.jl - QuanticsGrids.jl
Usage
This section only contains the bare minimum to get you started. More examples, including more advanced use cases, can be found in the the tensor4all website. For a documentation of the API, see the package documentation.
The easiest way to construct a quantics tensor train is the quanticscrossinterpolate function. For example, the function f(x, y) = (cos(x) - cos(x - 2y)) * abs(x + y) can be interpolated as follows.
julia
using QuanticsTCI
f(x, y) = (cos(x) - cos(x - 2y)) * abs(x + y)
xvals = range(-6, 6; length=256)
yvals = range(-12, 12; length=256)
qtt, ranks, errors = quanticscrossinterpolate(Float64, f, [xvals, yvals]; tolerance=1e-8)
The output object qtt now represents a quantics tensor train. It can then be evaluated a function of indices enumerating the xvals and yvals arrays:
julia
@show qttvalue = qtt(212, 92)
@show truevalue = f(xvals[212], yvals[92])
@show error = abs(qttvalue - truevalue)
Output:
qttvalue = qtt(212, 92) = -0.2525252152789011
truevalue = f(xvals[212], yvals[92]) = -0.2525252152789314
error = abs(qttvalue - truevalue) = 3.0309088572266774e-14
The output shows that the approximation has an error of only 3 * 10^-14 at [212, 92].
This example is continued in the package documentation, and more examples can be found in the the tensor4all website.
Related libraries
- TensorCrossInterpolation.jl to calculate tensor cross interpolations.
- QuanticsGrids.jl for conversion between quantics and direct representations. More advanced use cases can be implemented directly using this library.
- ITensors.jl for MPS / MPO algorithms.
References
- M. K. Ritter, Y. N. Fernández, M. Wallerberger, J. von Delft, H. Shinaoka, and X. Waintal, Quantics Tensor Cross Interpolation for High-Resolution, Parsimonious Representations of Multivariate Functions in Physics and Beyond, arXiv:2303.11819, Phys. Rev. Lett. 132, 056501 (2024).
Owner
- Name: tensor4all
- Login: tensor4all
- Kind: organization
- Repositories: 1
- Profile: https://github.com/tensor4all
Citation (CITATION.bib)
@misc{QuanticsTCI.jl,
author = {Ritter.Marc <Ritter.Marc@physik.uni-muenchen.de> and contributors},
title = {QuanticsTCI.jl},
url = {https://gitlab.com/marc.ritter/QuanticsTCI.jl},
version = {v0.1.0},
year = {2022},
month = {11}
}
GitHub Events
Total
- Create event: 3
- Release event: 1
- Issues event: 2
- Watch event: 4
- Issue comment event: 4
- Push event: 4
- Pull request event: 6
- Fork event: 2
Last Year
- Create event: 3
- Release event: 1
- Issues event: 2
- Watch event: 4
- Issue comment event: 4
- Push event: 4
- Pull request event: 6
- Fork event: 2
Dependencies
- actions/checkout v4 composite
- codecov/codecov-action v3 composite
- julia-actions/cache v1 composite
- julia-actions/julia-buildpkg v1 composite
- julia-actions/julia-docdeploy v1 composite
- julia-actions/julia-processcoverage v1 composite
- julia-actions/julia-runtest v1 composite
- julia-actions/setup-julia v2 composite
- JuliaRegistries/TagBot v1 composite