Dear all,
I am currently trying to use the implementation of the vumps algorithm from the ITensorInfiniteMPS.jl
package.
The model I want to study consists of two wires of Josephson Junctions described by
bosonic modes b_{\alpha,j}, \alpha = a,b. The modes are defined w.r.t. the mean filling of the
superconducting islands, i.e. n = diag(\dots, -2, -1, 0 , 1 ,2, \dots).
The Hamiltonian looks similar to:
In previous finite size DMRG studies, I “enrolled” the unitcell to only have a local hilbertspace dimension of 2n_b + 1 with a chain of length 2L. I.e. I defined new operators:
The above Hamiltonian gets then transformed into a model with next nearest neighbor hoppings,
and interactions + hoppings only between even and odd sites 2j - 1 and 2j, but not between
2j and 2j+1.
I tried to define a new model with unit_cell terms as:
function ITensorInfiniteMPS.unit_cell_terms(::Model"JosphsonLadder"; Ej = 1, Ec = 1, V = 0, Omega = 0)
opsum = OpSum()
opsum += -Ej/2, "Cr", 1, "Anh", 3
opsum += -Ej/2, "Cr", 3, "Anh", 1
opsum += -Ej/2, "Cr", 2, "Anh", 4
opsum += -Ej/2, "Cr", 4, "Anh", 2
opsum += Ec, "N * N", 1
opsum += V, "N", 1, "N", 2
opsum += Omega, "Cr", 1, "Anh", 2
opsum += Omega, "Cr", 2, "Anh", 1
return opsum
end
But this is too naive, since it will not recognize that the \Omega term needs to be repeated only every
second site. What would be the correct way to define such a Hamiltonian?
Moreover, for \Omega = 0, the subspace expansion will fail with the error message:
Impossible to do a subspace expansion, probably due to conservation constraints
It seems, that there needs to be a nearest neighbor term for the subspace expansion.
Thanks for any help in advance!