Hello Miles,

I've encountered a strange convergence issue with DMRG using periodic boundary conditions, and conservation of total Sz (iqdmrg). The system is the simple spin-1 AKLT model (I know, we wouldn't need to run GS DMRG on it ... !). Anyway, it appears that the following commands

```
Args argsH = Args("Exact=",true);
IQMPO H = toMPO<IQTensor>(ampo,argsH);
```

lead to:

1) incorrect evaluation of the energy of the initial state,

2) no convergence of DMRG to the ground state.

I was using the two lines of code above instead of the simple

```
IQMPO H = toMPO<IQTensor>(ampo);
```

because the latter displays "Using approx/svd conversion of AutoMPO->IQMPO".

My questions are the following:

1) What is happening in the "exact" case ? How does `toMPO<IQTensor>`

work in that case ?

2) In the "approx/svd conversion" case, is there a way to know how accurate is the compression of the Hamiltonian ? (in terms of singular values/truncation, for example)

3) Is there a way to set a precision to this compression ?

4) Why is the "exact" case not working on the AKLT Hamiltonian, but works fine for the Haldane chain ? Is it due to the additional biquadratic terms which make it hard to have an exact representation ? (the W-operator valued matrix (Schollwöck's notation) grows fast in this case, is that the reason ?)

5) Finally, why does this behavior occur only when using the QN-conserving code ? (running DMRG without symmetry works fine with the "exact" conversion to MPO, using `MPO H = toMPO<ITensor>(ampo,argsH)`

).

Thanks a lot, and have a nice Easter holiday !

Samuel

Thanks a lot for your answers. I guess there is a bug in the conversion AutoMPO->IQMPO using Periodic Boundary Conditions. However this possible bug is "model dependent", which is even more bizarre ...

Here is a link to two files which exhibit the strange behavior of the conversion

https://www.dropbox.com/sh/xulabc7qvmif3a7/AACO8BBCl99a1b8h5K-470_7a?dl=0

Best,

Samuel