full name: tenpy.algorithms.truncation.svd_theta
- tenpy.algorithms.truncation.svd_theta(theta, trunc_par, qtotal_LR=[None, None], inner_labels=['vR', 'vL'])[source]¶
Performs SVD of a matrix theta (= the wavefunction) and truncates it.
Perform a singular value decomposition (SVD) with
svd()and truncates with
truncate(). The result is an approximation
theta ~= tensordot(U.scale_axis(S*renormalization, 1), VH, axes=1)
(M, N)) – The matrix, on which the singular value decomposition (SVD) is performed. Usually, theta represents the wavefunction, such that the SVD is a Schmidt decomposition.
trunc_par (dict) – truncation parameters as described in
qtotalLR ((charges, charges)) – The total charges for the returned U and VH.
inner_labels ((string, string)) – Labels for the U and VH on the newly-created bond.
Array) – Matrix with left singular vectors as columns. Shape
(M, K)depending on full_matrices.
S (1D ndarray) – The singluar values of the array. If no cutoff is given, it has lenght
min(M, N). Normalized to
Array) – Matrix with right singular vectors as rows. Shape
(K, N)depending on full_matrices.
TruncationError) – The truncation error introduced.
renormalization (float) – Factor, by which S was renormalized.