- #1
Ramil
- 2
- 1
- Homework Statement
- Hi there,
I'm trying to reproduce the results of one article and writing a program that performs calculation of two-point Green's function G(|x'-x|) in 4D using Quantum Monte-Carlo approach.
I'm cosidering the theory of a massive scalar field with a quartic potential (lambda-psi^4).
Here I will denote scalar field as 'psi' just not to mix it up with an azimuthal coordinate 'phi'.
I use spherical coordinates and want to calculate the Green's function along azimuthal coordinate and also to get its dependency on r-coordinate. I consider two points that have similar t, r and theta coordinates but phi-coordinates differ on pi. So that G(|x'-x|) = G(pi).
For different r-coordinates I will get different G(pi).
The problem is that I don't understand how to write down the exact computational formula to obtain this r-dependency.
- Relevant Equations
- After all the standard steps of Quantum Monte-Carlo simulation I get the configurations of the scalar fields psi(t, r, theta, phi).
Then G(pi) = <psi(t, r, theta, phi)*psi(t, r, theta, phi+pi)>
Introducing the spacetime spherical symmetric lattice, I use the following notifications in my program.
i - index enumerating the nodes along t-coordinate,
j - along the r-coordinate,
k - along the theta-coordinate,
l - along the phi-coordinate.
N_t - the number of nodes along t-coordinate.
N_r - along the r-coordinate,
N_theta - along the theta-coordinate,
N_phi - along the phi-coordinate.
I tried to get the r-dependency as following. I fixed the coordinate r by fixing the j-index, and then calculated G(pi) using the formula:
C++ code
Here (l+N_phi/2)%N_phi ensures that |x'-x| = π.
However, this algorithm seems to be incorrect. Comparing the results with an article, I obtain incorrect graphics for G(pi) dependence on r.
Would be glad if someone gives an advice on it. Thanks in advance!
i - index enumerating the nodes along t-coordinate,
j - along the r-coordinate,
k - along the theta-coordinate,
l - along the phi-coordinate.
N_t - the number of nodes along t-coordinate.
N_r - along the r-coordinate,
N_theta - along the theta-coordinate,
N_phi - along the phi-coordinate.
I tried to get the r-dependency as following. I fixed the coordinate r by fixing the j-index, and then calculated G(pi) using the formula:
C++ code
C++:
for(int j=0; j<N_r; j++)
{
G(j) = 0;
for(int i =0: i<N_t; i++)
{
for(int k=0; k<N_theta; k++)
{
for(int l = 0; l<N_phi; l++)
{
G(j)=G(j) + psi(i, j, k, l)*psi(i, j, k, (l+N_phi/2)%N_phi);
}
}
}
G(j) = G(j)/(N_t*N_theta*N_phi) //average along t, theta, phi directions
}
However, this algorithm seems to be incorrect. Comparing the results with an article, I obtain incorrect graphics for G(pi) dependence on r.
Would be glad if someone gives an advice on it. Thanks in advance!