Y'all are really amazing. Thank you for the responses.
Let me be more precise. When I Print() MPOs Ha and Hb, I see the following output:
Ha =
/--------------IQTensor--------------
r=4 div=(Sz=0,Nf=0) log(scale)=0
IQIndex("site=1",4,Site|515) <In>
("Emp 1",1,Site|493) (Sz=0,Nf=0)
("Up 1",1,Site|707) (Sz=1,Nf=1)
("Dn 1",1,Site|313) (Sz=-1,Nf=1)
("UpDn 1",1,Site|681) (Sz=0,Nf=2)
IQIndex("site=1",4,Site|515)' <Out>
("Emp 1",1,Site|493)' (Sz=0,Nf=0)
("Up 1",1,Site|707)' (Sz=1,Nf=1)
("Dn 1",1,Site|313)' (Sz=-1,Nf=1)
("UpDn 1",1,Site|681)' (Sz=0,Nf=2)
IQIndex("l1",7,Link|557) <In>
("q0_0",7,Link|565) (Sz=0,Nf=0)
IQIndex("l1",7,Link|244) <Out>
("q0_1",7,Link|600) (Sz=0,Nf=0)
for the first site tensor of Ha, and
Hb =
/--------------IQTensor--------------
r=4 div=(Sz=0,Nf=0) log(scale)=0
IQIndex("site=1",4,Site|515) <In>
("Emp 1",1,Site|493) (Sz=0,Nf=0)
("Up 1",1,Site|707) (Sz=1,Nf=1)
("Dn 1",1,Site|313) (Sz=-1,Nf=1)
("UpDn 1",1,Site|681) (Sz=0,Nf=2)
IQIndex("site=1",4,Site|515)' <Out>
("Emp 1",1,Site|493)' (Sz=0,Nf=0)
("Up 1",1,Site|707)' (Sz=1,Nf=1)
("Dn 1",1,Site|313)' (Sz=-1,Nf=1)
("UpDn 1",1,Site|681)' (Sz=0,Nf=2)
IQIndex("l1",7,Link|557) <In>
("q0_0",7,Link|565) (Sz=0,Nf=0)
IQIndex("l1",7,Link|244) <Out>
("q0_1",7,Link|600) (Sz=0,Nf=0)
for the first site tensor of Hb. The other site tensors follow this pattern -- they appear to have identical index structure.
I've created this Github page for my code, which is written for ITensorV2. I hope this helps y'all reproduce the issue. In my code, Ha=Hupup and Hb=Hdndn. The background: I'm building a long-range Hubbard model as an exercise in constructing MPOs. The Hamiltonian Hupup is the inter-site density-density interaction between the up-spin particles, which has this Hamiltonian and these local tensors (where the interaction is truncated to range=2). Hdndn is the same as Hupup, save the local density operators have the opposite spin; which is what I meant by "nearly identical".
It would really be amazing if sum(Hupup,Hdndn) works for two MPOs. If it doesn't, my backup plan is to use directSum (which I believe Matt wrote). I've had some success summing local IQTensors this way.
I hope I made clear the issue without diverging too much into background!