Hierarchical Tucker Toolbox

Numerical Linear Algebra Group

Hierarchical Tucker Toolbox

A MATLAB Toolbox for the construction and manipulation of tensors in the Hierarchical Tucker (H-Tucker) format, see references [1-3]. The H-Tucker format is an approximate SVD-based data-sparse representation of a tensor, admitting the storage of higher-order tensors. It has similarities with the Tucker decomposition, but avoids exponential growth of storage requirements inherent in the Tucker format.

In computational physics, in particular for quantum-many body systems [4], tensor networks play a crucial role and correspond to a generalization of the H-Tucker format. In particular, the H-Tucker format corresponds to a tree network (i.e. a network that has no cycles), composed of tensors of order at most three.

Related Toolboxes

Other publicly available Matlab toolboxes for storing and manipulating tensors in data-sparse format are the Matlab Tensor Toolbox (T. Kolda and B. Bader) and the TT toolbox (I. Oseledets). The Hierarchical Tucker toolbox provides interfaces to the Tensor Toolbox.

MATLAB plot of a tensor in H-Tucker format

Download Hierarchical Tucker Toolbox

htucker_1.2.tar.gz, htucker_1.2.zip (Version 1.2, February 2013)
This code is research code and not intended for production use. If you publish a research paper using this code, we would appreciate a reference to the paper [3] describing our implementation.


Download the tar or zip file, expand it and add the directory to your MATLAB path. For more detailed instructions, see INSTALL.txt in the toolbox.

This toolbox requires MATLAB Version 7.6 (R2008a) or later. It has been tested under Linux, with MATLAB Versions 7.6 (R2008a) and 7.14 (R2012a).



  1. L. Grasedyck, Hierarchical Singular Value Decomposition of Tensors, 2010.
  2. W. Hackbusch and S. Khn, A New Scheme for the Tensor Representation, 2009.
  3. D. Kressner and C. Tobler, htucker - A MATLAB toolbox for tensors in hierarchical Tucker format. Preprint submitted to ACM Trans. Math. Software, 2012.
  4. F. Verstraete and J. I. Cirac, Renormalization algorithms for Quantum-Many Body Systems in two and higher dimensions, 2004.


Algorithms using the toolbox

  1. Geometric hierarchical Tucker, see here.
    MATLAB code by Bart Vandereycken, implementing the methods of
  2. Black Box approximation of a tensor in HTD, blackbox.tar.gz, blackbox.zip.
    MATLAB code by Christine Tobler, based on the methods described in


The toolbox is published under the FreeBSD License. Note the following disclaimer:

This software is provided by the author ``as is'' and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the author or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.