Dear Michele or others,
In your paper (arXiv:1407.0872)'s abstract you mentioned the MPS code can handle 2D system. Is it as simple as setting the 'LATTICE' parameter to "open square lattice", or do I need to build a custom 1D lattice with long-range coupling?
I tried setting 'LATTICE' to "open square lattice" but the results seems different from my ED result. The system is spinful fermionic. Could it be due to fermion signs not properly taken care of internally?
Ultimately I need to simulate a small 3D system (3x3x3). Can I use the internal cubic lattice or do I need to build a custom 1D lattice with long-range coupling?
Hello,
Yes, the code can handle 2d systems. Yes, to use it you just have to specify the lattice.
Which sizes do you want to run? Unfortunately running higher dimensional DMRG simulations is a highly non trivial task. Special care has to be taken for understanding the convergence with respect to the number of sweeps and the MPS bond dimension. For an example on how to treat it for “just ladders”, you can have a look here: https://doi.org/10.1103/PhysRevB.92.195139 https://doi.org/10.1103/PhysRevB.92.195139
Best regards, Michele
On 6 Jul 2017, at 06:32, H w.boson@gmail.com wrote:
Dear Michele or others,
In your paper (arXiv:1407.0872)'s abstract you mentioned the MPS code can handle 2D system. Is it as simple as setting the 'LATTICE' parameter to "open square lattice", or do I need to build a custom 1D lattice with long-range coupling?
I tried setting 'LATTICE' to "open square lattice" but the results seems different from my ED result. The system is spinful fermionic. Could it be due to fermion signs not properly taken care of internally?
Ultimately I need to simulate a small 3D system (3x3x3). Can I use the internal cubic lattice or do I need to build a custom 1D lattice with long-range coupling?
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch.
Dear Michele,
I am in strong need of simulating the dynamics of higher dimensional but small systems.
I tried use mps_evolve on a trivial 2D system, but I cannot get it to work.
I put a particle on the corner of a LxW lattice, and measure <n> at its neighbor site as a function of time. The matlab code and the python (alps) codes are attached.
When L=3, W=1, for 1D system, they agree quite well:
[image: Inline image 1][image: Inline image 2]
When L=W=3, they are completely different (left is the correct result from matlab):
[image: Inline image 3][image: Inline image 4]
Is there something I am missing? I think I have installed the newest version: ALPS/MPS Time Evolution version MAQUIS repo r4143 (2013-2014)
On Thu, Jul 6, 2017 at 2:37 PM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Hello,
Yes, the code can handle 2d systems. Yes, to use it you just have to specify the lattice.
Which sizes do you want to run? Unfortunately running higher dimensional DMRG simulations is a highly non trivial task. Special care has to be taken for understanding the convergence with respect to the number of sweeps and the MPS bond dimension. For an example on how to treat it for “just ladders”, you can have a look here: https://doi.org/10.1103/PhysRevB.92.195139
Best regards, Michele
On 6 Jul 2017, at 06:32, H w.boson@gmail.com wrote:
Dear Michele or others,
In your paper (arXiv:1407.0872)'s abstract you mentioned the MPS code can handle 2D system. Is it as simple as setting the 'LATTICE' parameter to "open square lattice", or do I need to build a custom 1D lattice with long-range coupling?
I tried setting 'LATTICE' to "open square lattice" but the results seems different from my ED result. The system is spinful fermionic. Could it be due to fermion signs not properly taken care of internally?
Ultimately I need to simulate a small 3D system (3x3x3). Can I use the internal cubic lattice or do I need to build a custom 1D lattice with long-range coupling?
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@ lists.phys.ethz.ch.
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@ lists.phys.ethz.ch.
Note that by default mps_evolve only works for nearest neighbors lattices. In higher dimensions this is not the case, since the lattice is unrolled into a one dimensional chain with longer range interactions.
We have a second flavor of the time evolution algorithm for these cases, you can use it via the parameter: te_type=mpo Quite some improvements to this variant was introduced in ALPS 2.3, so I suggest you to use that version.
Best, Michele
On 8 Jul 2017, at 00:11, H w.boson@gmail.com wrote:
Dear Michele,
I am in strong need of simulating the dynamics of higher dimensional but small systems.
I tried use mps_evolve on a trivial 2D system, but I cannot get it to work.
I put a particle on the corner of a LxW lattice, and measure <n> at its neighbor site as a function of time. The matlab code and the python (alps) codes are attached.
When L=3, W=1, for 1D system, they agree quite well:
<1D.jpg><image.png>
When L=W=3, they are completely different (left is the correct result from matlab):
<2D.jpg><image.png>
Is there something I am missing? I think I have installed the newest version: ALPS/MPS Time Evolution version MAQUIS repo r4143 (2013-2014)
On Thu, Jul 6, 2017 at 2:37 PM, Michele Dolfi <dolfim@phys.ethz.ch mailto:dolfim@phys.ethz.ch> wrote: Hello,
Yes, the code can handle 2d systems. Yes, to use it you just have to specify the lattice.
Which sizes do you want to run? Unfortunately running higher dimensional DMRG simulations is a highly non trivial task. Special care has to be taken for understanding the convergence with respect to the number of sweeps and the MPS bond dimension. For an example on how to treat it for “just ladders”, you can have a look here: https://doi.org/10.1103/PhysRevB.92.195139 https://doi.org/10.1103/PhysRevB.92.195139
Best regards, Michele
On 6 Jul 2017, at 06:32, H <w.boson@gmail.com mailto:w.boson@gmail.com> wrote:
Dear Michele or others,
In your paper (arXiv:1407.0872)'s abstract you mentioned the MPS code can handle 2D system. Is it as simple as setting the 'LATTICE' parameter to "open square lattice", or do I need to build a custom 1D lattice with long-range coupling?
I tried setting 'LATTICE' to "open square lattice" but the results seems different from my ED result. The system is spinful fermionic. Could it be due to fermion signs not properly taken care of internally?
Ultimately I need to simulate a small 3D system (3x3x3). Can I use the internal cubic lattice or do I need to build a custom 1D lattice with long-range coupling?
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/ http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch mailto:comp-phys-alps-users-leave@lists.phys.ethz.ch.
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/ http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch mailto:comp-phys-alps-users-leave@lists.phys.ethz.ch.
<matlab.m><alps.py>
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch.
Thank you. I have indeed overlooked this important parameter.
It now works smoothly with spinless fermions or bosons. However for spinful fermions the time it takes is more than a thousand times (or more) longer. Even for tiny 2D systems the time it takes is huge. Is it a known limitation and is there a physical reason?
On Sat, Jul 8, 2017 at 2:48 AM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Note that by default mps_evolve only works for nearest neighbors lattices. In higher dimensions this is not the case, since the lattice is unrolled into a one dimensional chain with longer range interactions.
We have a second flavor of the time evolution algorithm for these cases, you can use it via the parameter: te_type=mpo Quite some improvements to this variant was introduced in ALPS 2.3, so I suggest you to use that version.
Best, Michele
Well, there are multiple factors that makes it more computationally expensive, but not really thousand times…
The relevant factor are: - hamiltonian terms are applied on two-sites, i.e. each will cost M^2*d^2. when you change from spinless d=2 to spinfull d=4, you are at least 4 times slower - because of the fermionic sign, each term in the trotter decomposition requires multiple operations - the compression to keep the MPS of a controllable dimension is done using an iterative scheme. depending on how strong you are compressing, it might take more iterations
The algorithm used is described in section 2.3 of our paper https://doi.org/10.1016/j.cpc.2014.08.019 https://doi.org/10.1016/j.cpc.2014.08.019, or more a bit more extensively in section 2.5 of my thesis http://dx.doi.org/10.3929/ethz-a-010735455 http://dx.doi.org/10.3929/ethz-a-010735455.
Best, Michele
On 8 Jul 2017, at 21:39, H w.boson@gmail.com wrote:
Thank you. I have indeed overlooked this important parameter.
It now works smoothly with spinless fermions or bosons. However for spinful fermions the time it takes is more than a thousand times (or more) longer. Even for tiny 2D systems the time it takes is huge. Is it a known limitation and is there a physical reason?
On Sat, Jul 8, 2017 at 2:48 AM, Michele Dolfi <dolfim@phys.ethz.ch mailto:dolfim@phys.ethz.ch> wrote: Note that by default mps_evolve only works for nearest neighbors lattices. In higher dimensions this is not the case, since the lattice is unrolled into a one dimensional chain with longer range interactions.
We have a second flavor of the time evolution algorithm for these cases, you can use it via the parameter: te_type=mpo Quite some improvements to this variant was introduced in ALPS 2.3, so I suggest you to use that version.
Best, Michele
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lists.phys.ethz.ch.
Thank you.
For a mere 10 timesteps on a 3 by 3 system, the time for 'spinless fermions' model is ~1s while the time for 'fermion Hubbard' model is ~475s Is this within your expectation? The source codes are attached
I tried changing 'mpo_compression' to 'singlesite' but the result becomes incorrect.
Sorry for keep bothering you. I just want to get the most out of this excellent library.
On Sun, Jul 9, 2017 at 4:26 AM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Well, there are multiple factors that makes it more computationally expensive, but not really thousand times…
The relevant factor are:
- hamiltonian terms are applied on two-sites, i.e. each will cost M^2*d^2.
when you change from spinless d=2 to spinfull d=4, you are at least 4 times slower
- because of the fermionic sign, each term in the trotter decomposition
requires multiple operations
- the compression to keep the MPS of a controllable dimension is done
using an iterative scheme. depending on how strong you are compressing, it might take more iterations
The algorithm used is described in section 2.3 of our paper https://doi.org/10.1016/j.cpc.2014.08.019, or more a bit more extensively in section 2.5 of my thesis http://dx.doi.org/10.3929/ethz-a-010735455.
Best, Michele
On 8 Jul 2017, at 21:39, H w.boson@gmail.com wrote:
Thank you. I have indeed overlooked this important parameter.
It now works smoothly with spinless fermions or bosons. However for spinful fermions the time it takes is more than a thousand times (or more) longer. Even for tiny 2D systems the time it takes is huge. Is it a known limitation and is there a physical reason?
On Sat, Jul 8, 2017 at 2:48 AM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Note that by default mps_evolve only works for nearest neighbors lattices. In higher dimensions this is not the case, since the lattice is unrolled into a one dimensional chain with longer range interactions.
We have a second flavor of the time evolution algorithm for these cases, you can use it via the parameter: te_type=mpo Quite some improvements to this variant was introduced in ALPS 2.3, so I suggest you to use that version.
Best, Michele
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@ lists.phys.ethz.ch.
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@ lists.phys.ethz.ch.
Something you should still consider is to avoid recomputing the Hamiltonian at all time steps. At the moment you are forcing this with the option "update_each=1". Just set it to "steps". For a test, you could do the same also with "measure_each".
On Sun, Jul 9, 2017 at 8:25 PM, H w.boson@gmail.com wrote:
Thank you.
For a mere 10 timesteps on a 3 by 3 system, the time for 'spinless fermions' model is ~1s while the time for 'fermion Hubbard' model is ~475s Is this within your expectation? The source codes are attached
I tried changing 'mpo_compression' to 'singlesite' but the result becomes incorrect.
Sorry for keep bothering you. I just want to get the most out of this excellent library.
On Sun, Jul 9, 2017 at 4:26 AM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Well, there are multiple factors that makes it more computationally expensive, but not really thousand times…
The relevant factor are:
- hamiltonian terms are applied on two-sites, i.e. each will cost
M^2*d^2. when you change from spinless d=2 to spinfull d=4, you are at least 4 times slower
- because of the fermionic sign, each term in the trotter decomposition
requires multiple operations
- the compression to keep the MPS of a controllable dimension is done
using an iterative scheme. depending on how strong you are compressing, it might take more iterations
The algorithm used is described in section 2.3 of our paper https://doi.org/10.1016/j.cpc.2014.08.019, or more a bit more extensively in section 2.5 of my thesis http://dx.doi.org/10.3929/ethz -a-010735455.
Best, Michele
On 8 Jul 2017, at 21:39, H w.boson@gmail.com wrote:
Thank you. I have indeed overlooked this important parameter.
It now works smoothly with spinless fermions or bosons. However for spinful fermions the time it takes is more than a thousand times (or more) longer. Even for tiny 2D systems the time it takes is huge. Is it a known limitation and is there a physical reason?
On Sat, Jul 8, 2017 at 2:48 AM, Michele Dolfi dolfim@phys.ethz.ch wrote:
Note that by default mps_evolve only works for nearest neighbors lattices. In higher dimensions this is not the case, since the lattice is unrolled into a one dimensional chain with longer range interactions.
We have a second flavor of the time evolution algorithm for these cases, you can use it via the parameter: te_type=mpo Quite some improvements to this variant was introduced in ALPS 2.3, so I suggest you to use that version.
Best, Michele
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lis ts.phys.ethz.ch.
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@lis ts.phys.ethz.ch.
Comp-phys-alps-users Mailing List for the ALPS Project http://alps.comp-phys.org/
List info: https://lists.phys.ethz.ch//listinfo/comp-phys-alps-users Archive: https://lists.phys.ethz.ch//pipermail/comp-phys-alps-users
Unsubscribe by writing a mail to comp-phys-alps-users-leave@ lists.phys.ethz.ch.
comp-phys-alps-users@lists.phys.ethz.ch