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 2 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 (11.4%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Basic Info
Statistics
  • Stars: 38
  • Watchers: 4
  • Forks: 8
  • Open Issues: 9
  • Releases: 11
Created about 2 years ago · Last pushed 11 months ago
Metadata Files
Readme License Citation

README.md

TensorCrossInterpolation

Dev CI

The TensorCrossInterpolation module implements the tensor cross interpolation algorithm for efficient interpolation of multi-index tensors and multivariate functions.

This algorithm is used in the quantics tensor cross interpolation (QTCI) method for exponentially efficient interpolation of functions with scale separation. QTCI is implemented in the QuanticsTCI.jl module.

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("TensorCrossInterpolation")

Usage

This section only contains the bare minimum to get you started. An example with more explanation can be found in the user manual.

Given a multivariate function f, the function crossinterpolate2 will generate a tensor cross interpolation for f. For example, to interpolate the 8d lorentzian $f(\mathbf v) = 1/(1 + \mathbf v^2)$ on an 8-dimensional lattice of integers, $\mathbf{v} \in {1, 2, ..., 10}^8$: ```julia import TensorCrossInterpolation as TCI f(v) = 1/(1 + v' * v)

There are 8 tensor indices, each with values 1...10

localdims = fill(10, 8) tolerance = 1e-8 tci, ranks, errors = TCI.crossinterpolate2(Float64, f, localdims; tolerance=tolerance) `` Note: -fis defined as a function that takes a singleVectorof integers. - The return type off(Float64in this case) must be stated explicitly in the call tocrossinterpolate2`.

The resulting TensorCI2 object can be further manipulated, see user manual. To evaluate the TCI interpolation, simply call your TensorCI2 object like you would call the original function: julia originalvalue = f([1, 2, 3, 4, 5, 6, 7, 8]) interpolatedvalue = tci([1, 2, 3, 4, 5, 6, 7, 8]) The sum of all function values on the lattice can be obtained very efficiently from a tensor train: julia sumvalue = sum(tci)

Online user manual

An example with more explanation can be found in the user manual.

Related modules

TCIITensorConversion.jl

A small helper module for easy conversion of TensorCI1, TensorCI2 and TensorTrain objects into ITensors MPS objects. This should be helpful for those integrating TCI into a larger tensor network algorithm. For this conversion, simply call the MPS constructor on the object: julia mps = MPS(tci)

QuanticsTCI.jl

A module that implements the quantics representation and combines it with TCI for exponentially efficient interpolation of functions with scale separation.

Contributions

  • If you are having have technical trouble, feel free to contact me directly.
  • Feature requests and bug reports are always welcome, feel free to open an issue for those.
  • If you have implemented something that might be useful for others, we'd appreciate a merge request!

Authors

This project is maintained by - Marc K. Ritter @marc_ritter - Hiroshi Shinaoka @h.shinaoka

For their contributions to this library's code, we thank - Satoshi Terasaki @terasakisatoshi


References

Owner

  • Name: tensor4all
  • Login: tensor4all
  • Kind: organization

Citation (CITATION.bib)

@misc{TensorCrossInterpolation.jl,
	author  = {Ritter.Marc <Ritter.Marc@physik.uni-muenchen.de> and contributors},
	title   = {TensorCrossInterpolation.jl},
	url     = {https://gitlab.com/marc.ritter/TensorCrossInterpolation.jl},
	version = {v0.1.0},
	year    = {2022},
	month   = {12}
}

GitHub Events

Total
  • Create event: 10
  • Release event: 2
  • Issues event: 9
  • Watch event: 16
  • Delete event: 9
  • Issue comment event: 18
  • Member event: 1
  • Push event: 41
  • Pull request review event: 2
  • Pull request event: 19
  • Fork event: 5
Last Year
  • Create event: 10
  • Release event: 2
  • Issues event: 9
  • Watch event: 16
  • Delete event: 9
  • Issue comment event: 18
  • Member event: 1
  • Push event: 41
  • Pull request review event: 2
  • Pull request event: 19
  • Fork event: 5

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 5
  • Total pull requests: 8
  • Average time to close issues: 8 days
  • Average time to close pull requests: 6 days
  • Total issue authors: 4
  • Total pull request authors: 3
  • Average comments per issue: 0.2
  • Average comments per pull request: 0.38
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 5
  • Pull requests: 8
  • Average time to close issues: 8 days
  • Average time to close pull requests: 6 days
  • Issue authors: 4
  • Pull request authors: 3
  • Average comments per issue: 0.2
  • Average comments per pull request: 0.38
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • shinaoka (17)
  • RaimelMedina (3)
  • clarkmiyamoto (1)
  • Buantum (1)
  • chiamin (1)
  • JuliaTagBot (1)
  • sakurairihito (1)
  • rittermarc (1)
Pull Request Authors
  • shinaoka (24)
  • terasakisatoshi (4)
  • rittermarc (1)
  • YoshihiroMichishita (1)
  • clarkmiyamoto (1)
Top Labels
Issue Labels
enhancement (2)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • julia 39 total
  • Total dependent packages: 2
  • Total dependent repositories: 0
  • Total versions: 20
juliahub.com: TensorCrossInterpolation
  • Versions: 20
  • Dependent Packages: 2
  • Dependent Repositories: 0
  • Downloads: 39 Total
Rankings
Dependent repos count: 3.2%
Downloads: 6.2%
Average: 12.0%
Dependent packages count: 14.8%
Forks count: 15.7%
Stargazers count: 20.1%
Last synced: 10 months ago

Dependencies

.github/workflows/CI.yml actions
  • 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
.github/workflows/CompatHelper.yml actions
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite