0 votes
asked by (960 points)


I'm studying the Heisenberg model in 1D with periodic boundary conditions, and could really use a reduction in the dimension of the MPS. I'd like to make use of su(2) symmetry to achieve this.

Is su(2) symmetry included in ITensor (the C++ version)? Is it included in the Julia version?



1 Answer

+1 vote
answered by (14.1k points)
edited by

Hi Jon,

Unfortunately we don't have SU(2) symmetry implemented in either the C++ or Julia version.

Is there a particular reason you are interested in studying periodic systems? Often you can achieve the same things with open boundary conditions or infinite systems, see for example the nice blog post by Miles: https://www.itensor.org/docs.cgi?vers=cppv2&page=articles/periodic

We could also recommend techniques like writing to disk (https://github.com/ITensor/ITensors.jl/blob/main/examples/dmrg/write_to_disk/1d_heisenberg.jl ) if you are running out of memory.


commented by (960 points)
edited by
Hi Matt, thanks for the reply.

Is there a description of the write_to_disk function? For instance I'd like to know how much or if it will slow down the computation, as well as if a similar function exists for the C++ version (I haven't upgraded yet and don't want to before I finish this paper). Most importantly, does write_to_disk enable an increase in the effective memory (ram) at the processor level? This is my fundamental bottleneck, my maximum bond dimension M.

Regarding open boundaries -- yes, I am also going to try open boundaries, however it's unlikely to work due to the oscillations that appear in the entanglement. I'm looking for very small finite size corrections to central charge (the corrections are on the order of 10^-3 and the precision I'm going for is 10^-7).
commented by (960 points)
edited by
Ok I fixed the link, it was the ")" at the end.

EDIT: I edited my response above, so this comment is unneeded.
commented by (14.1k points)
In the C++ version, you can set the "WriteDim" argument as described here: http://itensor.org/docs.cgi?vers=cppv3&page=classes/dmrg to get the same feature.

For large bond dimensions (the main use case of the write-to-disk feature), the computation time should still be dominated by tensor contractions, but I haven't done in-depth profiling and benchmarking of the feature so please let us know if you see performance issues.

The point of the feature is that it stores tensors that are not being immediately used in a contraction on disk, so it decreases the amount of RAM being used.

I'm curious if studying the thermodynamic limit and computing correlation length corrections to the central charge instead of finite size corrections to the central charge would be sufficient for your use case. Modern infinite MPS method like VUMPS:


work quite well for critical 1D systems and they work directly in the thermodynamic limit so avoid finite size effects. In addition, there is a series of papers on so-called finite entanglement scaling/finite correlation length scaling which studies how certain quantities scale as a function of the bond dimension or correlation length of the MPS:

[1] https://arxiv.org/pdf/0712.1976.pdf
[2] https://arxiv.org/pdf/0812.2903.pdf
[3] https://arxiv.org/pdf/1204.3934.pdf

This technique has been used successfully to compute the central charge of MPS, for example in:


and other papers referenced in Ref [3].

If you are looking for other quantities beyond the central charge such as the excitation spectrum, I would also take a look at papers like:

[4] https://arxiv.org/pdf/1705.05423.pdf
[5] https://arxiv.org/pdf/2102.10982.pdf

along with papers cited within those references (particularly the introduction of [5]).
commented by (960 points)
Matt said: "I'm curious if studying the thermodynamic limit and computing correlation length corrections to the central charge instead of finite size corrections to the central charge would be sufficient for your use case."

Good question! In fact you are alluding to a potential followup paper. Want to help work on it?

However, getting back to the current project -- the main subject of the paper is to determine finite-size (and not finite correlation or entanglement) corrections to central charge. I expect the effect to be the opposite of finite entanglement or finite correlation corrections, because those two would be equivalent of taking the system away from the critical point. What I am observing is the effects of irrelevant operators at the critical point, which are only irrelevant in the infinite size limit; at finite sizes (i.e. those accessible in experiments) the irrelevant operators are contributing to the central charge and the thermodynamics of the system.

Like I said, I think studying the correlation length and finite-entanglement effects is also interesting and related, but I'm not sure it can answer the precise question, "finite size corrections to central charge due to irrelevant operators".

I have other projects I'd like to pursue that do focus on this general question in different critical points (as I said I'm open to collaborating on those studies).
Welcome to ITensor Support Q&A, where you can ask questions and receive answers from other members of the community.

Formatting Tips:
  • To format code, indent by four spaces
  • To format inline LaTeX, surround it by @@ on both sides
  • To format LaTeX on its own line, surround it by $$ above and below
  • For LaTeX, it may be necessary to backslash-escape underscore characters to obtain proper formatting. So for example writing \sum\_i to represent a sum over i.
If you cannot register due to firewall issues (e.g. you cannot see the capcha box) please email Miles Stoudenmire to ask for an account.

To report ITensor bugs, please use the issue tracker.