I think I got an error message from ITensor. When I set 7 sites MPO(it will be made to ITensor with 14 Index), I got:
Contraction resulted in ITensor with 14 indices, which is greater than or equal to
the ITensor order warning threshold 14. You can modify the threshold with macros
like `@set_warn_order N`, `@reset_warn_order`, and `@disable_warn_order`
or functions like `ITensors.set_warn_order(N::Int)`, `ITensors.reset_warn_order()`, and `ITensors.disable_warn_order()`.
Stacktrace:
[1] _contract(A::ITensor, B::ITensor)
@ ITensors ~/.julia/packages/ITensors/KifqM/src/itensor.jl:1778
[2] contract(A::ITensor, B::ITensor)
@ ITensors ~/.julia/packages/ITensors/KifqM/src/itensor.jl:1872
[3] *(A::ITensor, B::ITensor)
@ ITensors ~/.julia/packages/ITensors/KifqM/src/itensor.jl:1860
[4] top-level scope
@ ~/code/try_trace.jl:33
[5] eval
@ ./boot.jl:373 [inlined]
[6] include_string(mapexpr::typeof(identity), mod::Module, code::String, filename::String)
@ Base ./loading.jl:1196
[7] include_string(m::Module, txt::String, fname::String)
@ Base ./loading.jl:1206
[8] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./essentials.jl:716
[9] invokelatest(::Any, ::Any, ::Vararg{Any})
@ Base ./essentials.jl:714
[10] inlineeval(m::Module, code::String, code_line::Int64, code_column::Int64, file::String; softscope::Bool)
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:211
[11] (::VSCodeServer.var"#65#69"{Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})()
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:155
[12] withpath(f::VSCodeServer.var"#65#69"{Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams}, path::String)
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/repl.jl:184
[13] (::VSCodeServer.var"#64#68"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})()
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:153
[14] hideprompt(f::VSCodeServer.var"#64#68"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/repl.jl:36
[15] (::VSCodeServer.var"#63#67"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})()
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:124
[16] with_logstate(f::Function, logstate::Any)
@ Base.CoreLogging ./logging.jl:511
[17] with_logger
@ ./logging.jl:623 [inlined]
[18] (::VSCodeServer.var"#62#66"{VSCodeServer.ReplRunCodeRequestParams})()
@ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:201
[19] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[20] invokelatest(::Any)
@ Base ./essentials.jl:714
[21] macro expansion
@ ~/.vscode/extensions/julialang.language-julia-1.6.17/scripts/packages/VSCodeServer/src/eval.jl:34 [inlined]
[22] (::VSCodeServer.var"#60#61")()
@ VSCodeServer ./task.jl:423
But it works for 6 sites MPO.