Hi Jiawen,

I'm working on a response to the email thread to send some examples of generating sparse ITensors.

It is not such an easy question to answer, since different physics problems and tensor network algorithms can lead to very different levels of sparsity, block sizes, tensor orders, etc. Often in ITensor we do not create large sparse tensors directly. Instead, they result organically from algorithms like DMRG, where blocks are generated on the fly in the SVD. Therefore, a good place to start would be to run common calculations like DMRG and extract tensors from the resulting MPS (like one in the middle of the system) for a variety of different problems. Note that specifying different symmetries of your problem (for example for the Hubbard model, choosing parity conservation vs. particle number conservation) is another way to generate tensors with different levels of sparsity.

Cheers,

Matt