Closed nikita-astronaut closed 3 years ago
I cannot ensure uncommenting lda = 2*n
would make it work, but leading dimension for that matrix is indeed 2.
Dear RuQing,
thank you very much for clarifying this. Could you please tell, what are the all changes required to be done in calculateNewPfMN_child
and perhaps in M_ZSKPFA
to make everything work?
Could you please share the version of the src/mVMC/locgrn.c
file used in obtaining the results of https://arxiv.org/pdf/2005.14142.pdf ?
Thanks a lot!
Best wishes, Nikita
Dear Nikita,
Because I and RuXing are not authors of the arXiv paper, we do not know the details of the codes used in the arXiv paper. If you want to use the code, please contact the authors of the arXiv paper.
By the way, on the GreenFuncN, it is used in the power Lanczos calculations. For example, in lslocgrn.c, we calculate the 3-body and 4-body Green functions using GreenFuncN. Could you refer to the usages of GreenFuncN?
Best, Takahiro Misawa
Dear Takahiro,
thanks a lot, this is a very good comment.
However, it is unclear to me how the function GreenFuncN
can work properly in its current implementation.
As RuXing and me found out above, GreenFuncN
calls calculateNewPfMN_child
, where currently the parameter lda
is uninitialized, and most likely during equals lda = 0
during execution (though this is not guaranteed).
Then pointer to lda
is passed to M_ZSKPFA
as 5th argument &lda
, and I get an error from PFAPACK that 5th argument is invalid (note that LDA >= max(1, N)
).
So, as I understand, in the lslocgrn.c
file, where you calculate 3-body and 4-body GF, the execution of GreenFuncN
never goes further line 254
(reduction stage, if some of the operators have matching indices).
I still believe that calculateNewPfMN_child
in its currently commited way has an unexpected behavior.
Thanks for the advice, I will contact the authors of the very paper.
Best wishes, Nikita
Dear all,
I have correctly modified calculateNewPfMN_child
and checked the result by explicitly looking at the Pfaffians ratios. Now I have the working 4-point function. I thank you a lot for your assistance.
Closing this.
Best, Nikita
Dear mVMC developers,
as I tried to apply the
GreenFuncN
function I encountered several errors connected to invalid memory reads/writes. It seems like in the current mVMC release, in thesrc/mVMC/locgrn.c:325
functioncalculateNewPfMN_child
the parameterlda
is unitialized, which causes unexpected behavior of Pfaffian computationM_ZSKPFA(&uplo, &mthd, &n, mat, &lda, &pfaff, iwork, work, &lwork, rwork, &info);
Could you please comment on that? Should I set
lda = 2 * n;
somewhere before applyingM_ZSKPFA
?It seems to me that this very function could not probably be used in a recent paper https://arxiv.org/pdf/2005.14142.pdf, at least since this bug (?) is present. Would mind to please commit the properly and surely working version?
Thanks a lot!
Best wishes, Nikita