Dear All,
I'm currently using the ALPS DMRG algorithm to calculate energy eigenvalues for a given quantum model. After running many simulations and analyzing the results I have a few questions that I'm hoping you can answer.
1) The lattice model I'm looking at is an open ladder with 2-legs. Is the DMRG code supplied in ALPS capable of correctly handling such a lattice configuration?
2) I've also noticed that the results from these DMRG simulations are non-deterministic, that is the result is only consistent to a specific decimal point every run, given the same input parameters. Other DMRG programs I have used previously gave deterministic results given the same input parameters. I'm assuming that the inconsistency of the ALPS DMRG results is due to the utilization of the Lanczos algorithm to calculate the energy eigensets on each run. Can someone confirm that this is the case? Additionally, I have tried changing the 'LANCZOS_TOLERANCE' parameter, which I'm assuming would give better and more consistent results, but this has no effect on the results. Given that my assumption is correct what is the proper way to code this input parameter.
Thanks, Tyler Hewitt
Hi,
On 2016/01/11 22:20, T.J.Hewitt wrote:
- The lattice model I'm looking at is an open ladder with 2-legs. Is
the DMRG code supplied in ALPS capable of correctly handling such a lattice configuration?
If you consider 'snake-like' configuration, ALPS DMRG code can handle this. I had an experience on 2-leg ladder. See applications/dmrg/dmrg/dmtk/lattice.h file for more information.
- I've also noticed that the results from these DMRG simulations are
non-deterministic, that is the result is only consistent to a specific decimal point every run, given the same input parameters. Other DMRG programs I have used previously gave deterministic results given the same input parameters. I'm assuming that the inconsistency of the ALPS DMRG results is due to the utilization of the Lanczos algorithm to calculate the energy eigensets on each run. Can someone confirm that this is the case? Additionally, I have tried changing the 'LANCZOS_TOLERANCE' parameter, which I'm assuming would give better and more consistent results, but this has no effect on the results. Given that my assumption is correct what is the proper way to code this input parameter.
I sometimes encountered the non-deterministic results, too, and yes, as far as I know, this difference comes from Lanczos part. This is because Lanczos algorithm sometimes get stuck to high energy state and Lanczos step censored at ~100 step. I have not found how can I avoid this by setting some parameters.
Checking this problem is relatively easy. Usually a few Lanczos step is necessary for each DMRG step, therefore I re-run the simulation if suddenly one of the DMRG step get stuck.
Best regards,
Hi,
Thanks for your reply. You're right, the algorithm does account for the topology of the lattice, I hadn't noticed this because due to the time constraints on my current project I haven't be able to get as familiar with the code as I would like.
The project I'm working on is examining the spin gap and subsequent phase transitions of these ladder systems which makes getting accurate and consistent results important. I've run a few test simulations and it does seem that adjusting the 'LANCZOS_TOLERANCE' parameter has an effect, the simulation runs for quite a bit longer. However there are still no improvement in the results. Is there no way to adjust the sensitivity of the lanczos convergence?
Thanks, Tyler Hewitt
On Tue, 2016-01-12 at 15:31 +0900, Ryo IGARASHI wrote:
Hi,
On 2016/01/11 22:20, T.J.Hewitt wrote:
- The lattice model I'm looking at is an open ladder with 2-legs.
Is the DMRG code supplied in ALPS capable of correctly handling such a lattice configuration?
If you consider 'snake-like' configuration, ALPS DMRG code can handle this. I had an experience on 2-leg ladder. See applications/dmrg/dmrg/dmtk/lattice.h file for more information.
- I've also noticed that the results from these DMRG simulations
are non-deterministic, that is the result is only consistent to a specific decimal point every run, given the same input parameters. Other DMRG programs I have used previously gave deterministic results given the same input parameters. I'm assuming that the inconsistency of the ALPS DMRG results is due to the utilization of the Lanczos algorithm to calculate the energy eigensets on each run. Can someone confirm that this is the case? Additionally, I have tried changing the 'LANCZOS_TOLERANCE' parameter, which I'm assuming would give better and more consistent results, but this has no effect on the results. Given that my assumption is correct what is the proper way to code this input parameter.
I sometimes encountered the non-deterministic results, too, and yes, as far as I know, this difference comes from Lanczos part. This is because Lanczos algorithm sometimes get stuck to high energy state and Lanczos step censored at ~100 step. I have not found how can I avoid this by setting some parameters.
Checking this problem is relatively easy. Usually a few Lanczos step is necessary for each DMRG step, therefore I re-run the simulation if suddenly one of the DMRG step get stuck.
Best regards,
comp-phys-alps-users@lists.phys.ethz.ch