张量分解工具
TensorToolbox的Python项目详细描述
张量工具箱提供了张量序列格式[1]和谱张量序列格式[2]的张量分解功能。
工具箱提供以下工具:
- TT SVD
- TT交叉
- TT DMRG
- TT向量
- TT矩阵
- 四元tt向量/矩阵(cross和dmrg)
- TT集成
- TT格式的基本操作
- tt格式的多线性代数(最速下降、cg和gmres)
- STT结构
- stt投影/插值
- 单个数量和字段的stt
安装
确保安装了最新版本的pip:
$ pip install –upgrade pip
自动安装
您可以首先使用
$ pip install TensorToolbox
如果不起作用,请继续逐步安装
逐步安装
为了使一切顺利进行,我建议您首先单独安装一些依赖项:numpy,scipy,matplotlib可以通过以下方式安装:
$ pip install numpy scipy matplotlib
如果在tensortoolbox中需要mpi支持,则需要在计算机上安装mpi后端,并在$LD_LIBRARY_PATH上添加正确的路径,以便mpi4py可以链接到它。您应该通过
手动安装mpi4py$ pip install mpi4py
tensortoolbox现在通过python包在cPickle文件和hd5中存储数据。然后,您需要在您的计算机上拥有必需的库包libhdf5和libhdf5-dev,或类似的库包。有关手动安装h5py的详细信息,请单击here。
一旦满足了hdf5依赖项,我们就可以继续了。包依赖于Cython,需要链接到mpi后端,并找到文件mpi.h。为了手动解决依赖关系,请执行以下操作:
$ pip install cython
$ C_INCLUDE_PATH=<path-to-mpi.h-folder> pip install h5py
设置好所有内容后,可以使用:
安装TensorToolbox。$ pip install TensorToolbox
有些用户可能希望在不支持mpi的情况下安装工具箱。这是可能的,但不能通过pip命令:
$ pip download TensorToolbox
$ cd /pth/to/downloaded/files
$ tar xzf TensorToolbox-x.x.x.tar.gz
$ cd TensorToolbox-x.x.x
$ python setup.py install –without-mpi4py
测试安装
您可以通过运行单元测试来测试所有功能是否工作。
>>> import TensorToolbox >>> TensorToolbox.RunUnitTests(maxprocs=None)
其中maxprocs定义在激活MPI支持时要使用的处理器数。耐心点。单元测试的数量随着软件中实现的功能的数量而增长。
示例
示例可以在包中找到。要找到它们,请下载源代码:
$ pip download TensorToolbox
$ cd /pth/to/downloaded/files
$ tar xzf TensorToolbox-x.x.x.tar.gz
$ cd TensorToolbox-x.x.x
$ cd Examples
参考文献
[1]Oseledets,I.(2011年)。张量列分解。暹罗科学计算杂志,33(5),2295-2317。检索自http://epubs.siam.org/doi/pdf/10.1137/090752286
[2]Bigoni,D.和Marzouk,Y.M.和Engsig Karup,A.P.(2014)谱张量序列分解。(已提交)arxiv:http://arxiv.org/abs/1405.5713
更改日志
- 1.0.2:
- 修复了tensorwrapper中的错误
- 1.0.1:
- 修正了tensorwrapper单元测试
- 1.0.0:
- 增加了对python3的支持。更新了SpectralToolbox 0.2.0的接口。