Metadata-Version: 2.4
Name: decoupling
Version: 0.0.0
Summary: Decoupling multivariate functions using tensor decompositions, in Jax.
Author-email: Maxime Rochkoulets <mrochkoulets@gmail.com>
Project-URL: Homepage, https://github.com/mrochk/untangle
Project-URL: Repository, https://github.com/mrochk/untangle
Project-URL: Issues, https://github.com/mrochk/untangle/issues
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: jax>=0.9.0.1
Requires-Dist: jaxtyping>=0.3.9
Requires-Dist: beartype>=0.22.9
Requires-Dist: tqdm>=4.67.3
Requires-Dist: bsplx>=0.1.1
Dynamic: license-file

![Logo](logo.png)

# Untangle

Fast tensor decoupling in Jax. Collection of algorithms for decoupling multivariate functions using tensor decompositions.

This project was built using `uv` (https://docs.astral.sh/uv). 

### Installation

You can easily get `untangle` from PyPI:
```bash
pip install tensor-decoupling # (untangle was already taken...)
```
Otherwise, for a local `uv` installation:
```bash
git clone git@github.com:mrochk/untangle.git
uv add untangle
```

### Algorithms

- Basic Tensor Decoupling: `untangle/algorithm/basic`
- Polynomial Constrained Tensor Decoupling: `untangle/algorithm/ctd_polynomial`
- CMTF-BSD: `untangle/algorithm/cmtf_bspline`
- CMTF-PSD: `untangle/algorithm/cmtf_pspline`
