In the context of Monte Carlo simulations, I am trying to learn how I should ensure that the configurations of my system are not correlated for the chosen interval of measurements. I have found out that one way is to compute the autocorrelation function for a relevant observable.
Let us suppose we have a system of 1000 particles in a box. In case of a simple scalar observable $A$ that can be measured for each generated configuration (i.e. a function of particle positions), then the autocorrelation is, with $t$ denoting the Monte Carlo sweep step:
$$ C(t)=\frac{\langle A(t=0)A(t)\rangle - \langle A(t) \rangle}{\langle A^2 \rangle - \langle A\rangle^2} \propto \exp(-t/t_d) \tag{1} $$
where $A(t=0)$ is the initial value of our observable at the start of the simulation, $A(t)$ is the value corresponding to the configuration generated at MC sweep step $t,$ $\langle A^2\rangle$ is the average of the observable squared thus far, i.e. if we are at step $t$ then $\langle A^2\rangle = \frac{1}{t}\sum_{i=0}^{t} A^2_i,$ and finally if the exponential decay behaviour holds, the found time scale $t_d$ would tell us how many MC sweep steps apart should our subsequent measurements be to ensure they are not correlated.
- Have I made any mistakes with the eq. $(1)$ and the description of the involved terms?
My last question: usually if $A$ is an order parameter of the system of particles, then once equilibrium is reached $A$ becomes a constant with small fluctuations (e.g. $A$ can be the energy of the system), and in such case, to ensure our measurements are still uncorrelated, should we compute the autocorrelation for the particle positions? That is, it would tell us how many steps it would be needed until the positions of the particles are sufficiently different from the previous configuration.
- But if we have $N$ particles, how do we compute a position autocorrelation function for the entire system? That is, given we have $N$ particles and each have a $3$-component position vector, how will $A$ be defined in eq. $(1)$?