# Transfer Matrices¶

ctm.one_site_c4v.transferops_c4v.get_EH_spec_Ttensor(n, L, state, env_c4v, verbosity=0)[source]
Parameters
• n (int) – number of leading eigenvalues of a transfer operator to compute

• L (int) – width of the cylinder

• state (IPEPS_C4V) – wavefunction

• env_c4v (ENV_C4V) – corresponding environment

Returns

leading n-eigenvalues, returned as n x 2 tensor with first and second column encoding real and imaginary part respectively.

Return type

torch.Tensor

Compute the leading part of spectrum of $$exp(EH)$$, where EH is boundary Hamiltonian. Exact $$exp(EH)$$ is given by the leading eigenvector of a transfer matrix

 ...         PBC                          /
|           |                  |     --a*--
--A--       --A(0)--           --A-- =  /|
--A--       --A(1)--             |       |/
--A--        ...                       --a--
|         --A(L-1)--                  /
...          |
PBC

infinite exact TM; exact TM of L-leg cylinder


The $$exp(EH)$$ is then given by reshaping the $$(D^2)^L$$ leading eigenvector of transfer matrix into $$D^L \times D^L$$ operator.

We approximate the $$exp(EH)$$ of L-leg cylinder as MPO formed by T-tensors of the CTM environment. Then, the spectrum of this approximate $$exp(EH)$$ is obtained through iterative solver using matrix-vector product:

  0
|            __
--T(0)----  --|  |
--T(1)----  --|v0|
...       ...|  |
--T(L-1)--  --|__|
0(PBC)

ctm.one_site_c4v.transferops_c4v.get_Top2_spec_c4v(n, state, env_c4v, verbosity=0)[source]
Parameters
• n (int) – number of leading eigenvalues of a transfer operator to compute

• state (IPEPS_C4V) – wavefunction

• env_c4v (ENV_C4V) – corresponding environment

Returns

leading n-eigenvalues, returned as n x 2 tensor with first and second column encoding real and imaginary part respectively.

Return type

torch.Tensor

Compute the leading n eigenvalues of width-2 transfer operator of 1-site C4v symmetric iPEPS:

--T--          --\               /---
--A--          --\               /---
--A-- = \sum_i ---v_i \lambda_i v_i--
--T--          --/               \---


where A is a double-layer tensor.

ctm.one_site_c4v.transferops_c4v.get_Top_spec_c4v(n, state, env_c4v, normalize=True, eigenvectors=False, verbosity=0)[source]
Parameters
• n (int) – number of leading eigenvalues of a transfer operator to compute

• state (IPEPS_C4V) – wavefunction

• env_c4v (ENV_C4V) – corresponding environment

• normalize (bool) – normalize eigenvalues such that $$\lambda_0=1$$

• eigenvectors (bool) – compute eigenvectors

Returns

leading n-eigenvalues, returned as n x 2 tensor with first and second column encoding real and imaginary part respectively.

Return type

torch.Tensor

Compute the leading n eigenvalues of width-1 transfer operator of 1-site C4v symmetric iPEPS:

--T--          --\               /---
--A-- = \sum_i ---v_i \lambda_i v_i--
--T--          --/               \---


where A is a double-layer tensor.