# Tracking DMRG progress in ITensors

**URL:** <https://discourse.julialang.org/t/tracking-dmrg-progress-in-itensors/66907>\
**Category:** Numerics\
**Tags:** itensors\
**Created:** [August 24, 2021, 12:09pm UTC](https://discourse.julialang.org/t/tracking-dmrg-progress-in-itensors/66907 "2021-08-24T12:09:26Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![wujinq](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/wujinq/32/22221_2.png) [@wujinq](https://discourse.julialang.org/u/wujinq)\
**Post date:** [August 24, 2021, 12:09pm UTC](https://discourse.julialang.org/t/tracking-dmrg-progress-in-itensors/66907/1 "2021-08-24T12:09:26Z")

</div>

I’m using ITensors to do some DMRG calculation. When running `dmrg(H, ψ_0, sweeps)`, is there a way to track the progress? For example, if I want to displa a progress bar to keep an eye on the calculation, what should I do?

---

<div class="post-metadata">

**Author:** ![miles](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/miles/32/29112_2.png) [@miles](https://discourse.julialang.org/u/miles)\
**Post date:** [August 27, 2021, 4:26pm UTC](https://discourse.julialang.org/t/tracking-dmrg-progress-in-itensors/66907/2 "2021-08-27T16:26:10Z")

</div>

Hi, thanks for the question. Currently, the way we let you keep track of the progress is that the `dmrg` function prints a line of output after each DMRG sweep is completed. Are you seeing that kind of printout? If you want a more detailed printout, you can adjust the `outputlevel` keyword argument. For example, calling DMRG as `dmrg(H,psi,sweeps; outputlevel=2)` will show more information about every single step of DMRG, and not just each sweep.

The idea of having a progress bar is an interesting one. I think we have been planning to look into it, although the current approach of printing text has the advantage of letting us report details like the accuracy (truncation error) currently reached.

Finally, we have a very customizable system called the “Observer” system which lets you customize the output of our DMRG code, in essentially an arbitrary way. It may interest you to learn about and use this system. Here is some documentation about it with detailed examples:  
[https://itensor.github.io/ITensors.jl/dev/Observer.html](https://itensor.github.io/ITensors.jl/dev/Observer.html)
