MPOModel¶
full name: tenpy.models.model.MPOModel
parent module:
tenpy.models.modeltype: class
Inheritance Diagram

Methods
|
Initialize self. |
|
Calculate the bond Hamiltonian from the MPO Hamiltonian. |
|
Repeat the unit cell for infinite MPS boundary conditions; in place. |
|
Load instance from a HDF5 file. |
|
Modify self in place to group sites. |
|
Export self into a HDF5 file. |
|
-
class
tenpy.models.model.MPOModel(lattice, H_MPO)[source]¶ Bases:
tenpy.models.model.ModelBase class for a model with an MPO representation of the Hamiltonian.
In this class, the Hamiltonian gets represented by an
MPO. Thus, instances of this class are suitable for MPO-based algorithms like DMRGdmrgand MPO time evolution.Todo
implement MPO for time evolution…
- Parameters
H_MPO (
MPO) – The Hamiltonian rewritten as an MPO.
-
H_MPO¶ MPO representation of the Hamiltonian. If the explicit_plus_hc flag of the MPO is True, the represented Hamiltonian is
H_MPO + hermitian_cojugate(H_MPO).
-
enlarge_mps_unit_cell(factor=2)[source]¶ Repeat the unit cell for infinite MPS boundary conditions; in place.
This has to be done after finishing initialization and can not be reverted.
- Parameters
factor (int) – The new number of sites in the MPS unit cell will be increased from N_sites to
factor*N_sites_per_ring. Since MPS unit cells are repeated in the x-direction in our convetion, the lattice shape goes from(Lx, Ly, ..., Lu)to(Lx*factor, Ly, ..., Lu).
-
group_sites(n=2, grouped_sites=None)[source]¶ Modify self in place to group sites.
Group each n sites together using the
GroupedSite. This might allow to do TEBD with a Trotter decomposition, or help the convergence of DMRG (in case of too long range interactions).This has to be done after finishing initialization and can not be reverted.
- Parameters
n (int) – Number of sites to be grouped together.
grouped_sites (None | list of
GroupedSite) – The sites grouped together.
- Returns
grouped_sites – The sites grouped together.
- Return type
list of
GroupedSite
-
calc_H_bond_from_MPO(tol_zero=1e-15)[source]¶ Calculate the bond Hamiltonian from the MPO Hamiltonian.
- Parameters
tol_zero (float) – Arrays with norm < tol_zero are considered to be zero.
- Returns
H_bond – Bond terms as required by the constructor of
NearestNeighborModel. Legs are['p0', 'p0*', 'p1', 'p1*']- Return type
list of
Array
:raises ValueError : if the Hamiltonian contains longer-range terms.:
-
classmethod
from_hdf5(hdf5_loader, h5gr, subpath)[source]¶ Load instance from a HDF5 file.
This method reconstructs a class instance from the data saved with
save_hdf5().
-
save_hdf5(hdf5_saver, h5gr, subpath)[source]¶ Export self into a HDF5 file.
This method saves all the data it needs to reconstruct self with
from_hdf5().This implementation saves the content of
__dict__withsave_dict_content(), storing the format under the attribute'format'.