Home > tt2 > @tt_tensor > core.m

core

PURPOSE ^

Converts TT-tensor TT1 to old-cell array format.

SYNOPSIS ^

function [tt] = core(tt1,varargin)

DESCRIPTION ^

Converts TT-tensor TT1 to old-cell array format.
   [TT]=CORE(TT1) transforms to the TT1.0 format

   [TT]=CORE(TT1,K) extracts the k-th core 


 TT-Toolbox 2.2, 2009-2012

This is TT Toolbox, written by Ivan Oseledets et al.
Institute of Numerical Mathematics, Moscow, Russia
webpage: http://spring.inm.ras.ru/osel

For all questions, bugs and suggestions please mail
ivan.oseledets@gmail.com
---------------------------

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function [tt] = core(tt1,varargin)
0002 %Converts TT-tensor TT1 to old-cell array format.
0003 %   [TT]=CORE(TT1) transforms to the TT1.0 format
0004 %
0005 %   [TT]=CORE(TT1,K) extracts the k-th core
0006 %
0007 %
0008 % TT-Toolbox 2.2, 2009-2012
0009 %
0010 %This is TT Toolbox, written by Ivan Oseledets et al.
0011 %Institute of Numerical Mathematics, Moscow, Russia
0012 %webpage: http://spring.inm.ras.ru/osel
0013 %
0014 %For all questions, bugs and suggestions please mail
0015 %ivan.oseledets@gmail.com
0016 %---------------------------
0017 
0018 if (nargin==1)
0019 d=tt1.d;
0020 tt=cell(d,1);
0021 r=tt1.r;
0022 n=tt1.n;
0023 core=tt1.core;
0024 pos=tt1.ps;
0025 mat=core(pos(1):pos(2)-1);
0026 mat=reshape(mat,[n(1),r(2)]);
0027 tt{1}=mat;
0028 for i=2:d-1
0029   cr=core(pos(i):pos(i+1)-1);
0030   cr=reshape(cr,[r(i),n(i),r(i+1)]);
0031   cr=permute(cr,[2,1,3]);
0032   tt{i}=cr;
0033 end
0034 mat=core(pos(d):pos(d+1)-1);
0035 mat=reshape(mat,[r(d),n(d)]);
0036 mat=permute(mat,[2,1]);
0037 tt{d}=mat;
0038 else
0039   i=varargin{1};
0040 
0041   % New version with normal address references
0042   % We don't have to extract the whole core and other vars.
0043   
0044   tt = tt1.core(tt1.ps(i):tt1.ps(i+1)-1);
0045   tt = reshape(tt,[tt1.r(i),tt1.n(i),tt1.r(i+1)]); 
0046 
0047 end
0048 return
0049 end

Generated on Wed 08-Feb-2012 18:20:24 by m2html © 2005