Dear Zhian,
On 2011/07/23, at 23:29, zhian asadzadeh wrote:
L=100, T=0.32859 Exact:: E(T)=-105.29789708270407, Mx(T)=0.27030367598168420 looper:: E(T)=-105.61795 (0.00554), M(T)=0.4093185 (0.000138) ( I think it is in z direction) with SWEEPS:6000000, THERMALIZATION=2000000
The magnetization ("Magnetization" or "Magnetization Density") measured in the looper code is in z direction, and it should be exactly zero in the present case due to the symmetry. From which observable did you take the above figures?
and also other question: that magnetization which looper calculates is in the z direction?
Yes.
can I also measure M_{x} just with declaring it in parm file?
Please try the following patch to applications/qmc/looper/path_integral.C, which adds an observable named "Number of Site Operators". Since the average number of site operators is related to the total site-term energy (in this case Zeeman term by the transverse field) by
- Gamma * <Sum(S_i^x)> = - T * <Number of Site Operators> + C
with C = Gamma/2 in the present specific case, the transverse magnetization per site is given by
<S_i^x> = T * <Number of Site Operators> / N / Gamma - 1/2
where T is the temperature, N the number of sites.
Best, Synge