@@ -595,15 +595,18 @@ function InfiniteMPOHamiltonian(lattice::AbstractArray{<:VectorSpace},
595595 return InfiniteMPOHamiltonian (lattice, local_operators... )
596596end
597597
598- for MPOHamType in (:FiniteMPOHamiltonian , :InfiniteMPOHamiltonian )
599- @eval begin
600- function $MPOHamType (local_operator:: TensorMap{E,S,N,N} ) where {E,S,N}
601- lattice_space = space (local_operator, 1 )
602- n_sites = length (domain (local_operator))
603- lattice = fill (lattice_space, n_sites)
604- return $ MPOHamType (lattice, (tuple (collect (1 : n_sites)... ) => local_operator))
605- end
606- end
598+ function FiniteMPOHamiltonian (local_operator:: TensorMap{E,S,N} ) where {E,S,N}
599+ lattice_space = space (local_operator, 1 )
600+ n_sites = length (domain (local_operator))
601+ lattice = fill (lattice_space, n_sites)
602+ return FiniteMPOHamiltonian (lattice, (tuple (collect (1 : n_sites)... ) => local_operator))
603+ end
604+
605+ function InfiniteMPOHamiltonian (local_operator:: TensorMap{E,S,N,N} ) where {E,S,N}
606+ lattice_space = space (local_operator, 1 )
607+ n_sites = length (domain (local_operator))
608+ lattice = PeriodicArray ([lattice_space])
609+ return InfiniteMPOHamiltonian (lattice, (tuple (collect (1 : n_sites)... ) => local_operator))
607610end
608611
609612Base. parent (H:: AbstractMPOHamiltonian ) = H. data
0 commit comments