Home > manopt > manifolds > ttfixedrank > TTeMPS_1.1 > @TTeMPS > norm.m

# norm

## PURPOSE NORM Norm of a TT/MPS tensor.

## SYNOPSIS function res = norm( x, safe )

## DESCRIPTION ```NORM Norm of a TT/MPS tensor.
norm(X) computes the Frobenius norm of the TT/MPS tensor X.

norm(X, SAFE) with SAFE=true computes the Frobenius norm of the TT/MPS tensor X
with reorthogonalization to increase the accuracy

## CROSS-REFERENCE INFORMATION This function calls:
• innerprod INNERPROD Inner product between two TT/MPS tensors.
• norm NORM Norm of a TT/MPS tensor.
• orthogonalize ORTHOGONALIZE Orthogonalize tensor.
• innerprod INNERPROD Inner product between two TT/MPS tensors.
• norm NORM Norm of a TT/MPS block-mu tensor.
• orthogonalize ORTHOGONALIZE Orthogonalize TT/MPS Block-mu tensor.
• orthogonalize Orthonormalizes a basis of tangent vectors in the Manopt framework.
This function is called by:

## SOURCE CODE ```0001 function res = norm( x, safe )
0002     %NORM Norm of a TT/MPS tensor.
0003     %   norm(X) computes the Frobenius norm of the TT/MPS tensor X.
0004     %
0005     %   norm(X, SAFE) with SAFE=true computes the Frobenius norm of the TT/MPS tensor X
0006     %       with reorthogonalization to increase the accuracy
0007     %
0009
0010     %   TTeMPS Toolbox.
0011     %   Michael Steinlechner, 2013-2016
0012     %   Questions and contact: michael.steinlechner@epfl.ch
0014
0015     if ~exist('safe','var')
0016         safe = true;
0017     end
0018
0019     if safe
0020         x = orthogonalize(x, x.order );
0021         res = norm( x.U{end}(:) );
0022     else
0023         res = sqrt(innerprod( x, x ));
0024
0025         if res < 1e-7
0026             x = orthogonalize(x, x.order );
0027             res = norm( x.U{end}(:) );
0028         end
0029     end
0030
0031 end```

Generated on Sun 05-Sep-2021 17:57:00 by m2html © 2005