Hi all,
I found a strange behavior of ngs mcresult operators "+" and "*". I made a fresh instalation of ALPS-2.1.1-r6193, edited /alps/applications/dmft/qmc/hybridization2/main.C and added the following code between lines 52 and 53:
alps::mcresult img, temp; img = results["gw_im"]; temp = img + img; std::vector<double> temp_mean, img_mean; temp_mean = temp.mean<std::vector<double> >(); img_mean = img.mean<std::vector<double> >();
I would expect temp_mean to be just twice the img_mean. However, it seems to be 2*img_mean*img.bin_size()/img_mean.size(). Similarly, the "*" oerator yields wrongly scalled result as well (I do not know what the scaling factor is). On the contrary, "img-img" and "img/img" gives correct answers. Is it a bug or just my misunderstanding of what these operators should do?
Besides that, I would like to use the mcresult::covariance method, but it is not implemented yet. Could I ask anyone to change that?
Thank you for any help or comments!
Best regards,
Pavel
comp-phys-alps-users@lists.phys.ethz.ch