Dear All,
I have a question about the ALPS implementation of the Worm algorithm. In every paper I read about the Worm algorithm the same idea pervades: the Worm algorithm can easily sample Green's function(in imaginary time) because the movements of the worm do precisely that. Or in other words, Green's functions can be measured by histogramming the relative position of the head and tail of the worm(adding a 1 to the G(i-j,tau2-tau1) entry whenever the head is at i,tau2 and the tail is at j,tau1).
The current version of the ALPS Worm code(alps 2.1) does not measure Green's functions and the issue was discussed, albeit briefly, earlier this year in a couple of e-mails, and it was mentioned that it would actually be too costly computationally to get all the N^2 values and only the relative distances would be measured. Is it because of the computational time needed in the Green's function configuration space would be too long and the current implementation samples mostly the partition function configuration space(by shifting/moving closed loops)? Or is it due to some technical detail that is usually not mentioned in the papers?(or that I might have not understood it correctly).
Cheers, Francisco Cordobes
On Dec 15, 2012, at 9:18 PM, Francisco Cordobés ghiret@gmail.com wrote:
Dear All,
I have a question about the ALPS implementation of the Worm algorithm. In every paper I read about the Worm algorithm the same idea pervades: the Worm algorithm can easily sample Green's function(in imaginary time) because the movements of the worm do precisely that. Or in other words, Green's functions can be measured by histogramming the relative position of the head and tail of the worm(adding a 1 to the G(i-j,tau2-tau1) entry whenever the head is at i,tau2 and the tail is at j,tau1).
The current version of the ALPS Worm code(alps 2.1) does not measure Green's functions and the issue was discussed, albeit briefly, earlier this year in a couple of e-mails, and it was mentioned that it would actually be too costly computationally to get all the N^2 values and only the relative distances would be measured. Is it because of the computational time needed in the Green's function configuration space would be too long and the current implementation samples mostly the partition function configuration space(by shifting/moving closed loops)? Or is it due to some technical detail that is usually not mentioned in the papers?(or that I might have not understood it correctly).
For small systems you can measure all pairs of sites in a worm code. Storing all N^2 values just takes lots of memory. Imagine a 100^3 lattice, you would need to store measurements for 10^12 pairs of sites. That's why one has to go to relative distances and average.
Matthias
Thanks for your prompt answer.
Yes, I should have specified I had in mind 1D or 2D cases and not very large systems. Looking at the Worm code(as found in alps 2.1) I can see that the Green's function measurement block is commented out. Is it because of the storage problem or because that bit of code is untested?.
Given that the model definitions are given in the occupation number representation, am I right to assume that the worm algorithm is implemented in real space?
Thank you very much in advance,
Francisco Cordobes
On 16 December 2012 10:38, Matthias Troyer troyer@phys.ethz.ch wrote:
On Dec 15, 2012, at 9:18 PM, Francisco Cordobés ghiret@gmail.com wrote:
Dear All,
I have a question about the ALPS implementation of the Worm algorithm.
In every paper I read about the Worm algorithm the same idea pervades: the Worm algorithm can easily sample Green's function(in imaginary time) because the movements of the worm do precisely that. Or in other words, Green's functions can be measured by histogramming the relative position of the head and tail of the worm(adding a 1 to the G(i-j,tau2-tau1) entry whenever the head is at i,tau2 and the tail is at j,tau1).
The current version of the ALPS Worm code(alps 2.1) does not measure
Green's functions and the issue was discussed, albeit briefly, earlier this year in a couple of e-mails, and it was mentioned that it would actually be too costly computationally to get all the N^2 values and only the relative distances would be measured. Is it because of the computational time needed in the Green's function configuration space would be too long and the current implementation samples mostly the partition function configuration space(by shifting/moving closed loops)? Or is it due to some technical detail that is usually not mentioned in the papers?(or that I might have not understood it correctly).
For small systems you can measure all pairs of sites in a worm code. Storing all N^2 values just takes lots of memory. Imagine a 100^3 lattice, you would need to store measurements for 10^12 pairs of sites. That's why one has to go to relative distances and average.
Matthias
On Dec 16, 2012, at 15:41, Francisco Cordobés ghiret@gmail.com wrote:
Thanks for your prompt answer.
Yes, I should have specified I had in mind 1D or 2D cases and not very large systems. Looking at the Worm code(as found in alps 2.1) I can see that the Green's function measurement block is commented out. Is it because of the storage problem or because that bit of code is untested?.
The code is untested and we don't plan to test it since a completely new worm code is close to being finished. Please let us know if you want to be an alpha tester.
Given that the model definitions are given in the occupation number representation, am I right to assume that the worm algorithm is implemented in real space?
Yes.
Thank you very much in advance,
Francisco Cordobes
On 16 December 2012 10:38, Matthias Troyer troyer@phys.ethz.ch wrote:
On Dec 15, 2012, at 9:18 PM, Francisco Cordobés ghiret@gmail.com wrote:
Dear All,
I have a question about the ALPS implementation of the Worm algorithm. In every paper I read about the Worm algorithm the same idea pervades: the Worm algorithm can easily sample Green's function(in imaginary time) because the movements of the worm do precisely that. Or in other words, Green's functions can be measured by histogramming the relative position of the head and tail of the worm(adding a 1 to the G(i-j,tau2-tau1) entry whenever the head is at i,tau2 and the tail is at j,tau1).
The current version of the ALPS Worm code(alps 2.1) does not measure Green's functions and the issue was discussed, albeit briefly, earlier this year in a couple of e-mails, and it was mentioned that it would actually be too costly computationally to get all the N^2 values and only the relative distances would be measured. Is it because of the computational time needed in the Green's function configuration space would be too long and the current implementation samples mostly the partition function configuration space(by shifting/moving closed loops)? Or is it due to some technical detail that is usually not mentioned in the papers?(or that I might have not understood it correctly).
For small systems you can measure all pairs of sites in a worm code. Storing all N^2 values just takes lots of memory. Imagine a 100^3 lattice, you would need to store measurements for 10^12 pairs of sites. That's why one has to go to relative distances and average.
Matthias
The code is untested and we don't plan to test it since a completely new worm code is close to being finished. Please let us know if you want to be an alpha tester.
Yes, I am very interested in being an alpha tester. How do I "apply" for it?
Thanks for your answer.
Francisco Cordobes
comp-phys-alps-users@lists.phys.ethz.ch