Re: [Wannier] k-gradient implementation

2023-11-08 Thread Lun Yue
Hi Junfeng, Thank you for the useful information! Indeed I looked into the kmesh.f90 file and they have a defined the internal_maxloc function for this purpose of getting repeatable ordering. I have now implemented the shell-search-approach in my own time-dependent code and it works very

Re: [Wannier] k-gradient implementation

2023-11-07 Thread Junfeng Qiao
Hi Lun, I did some experimentations with bvectors some while ago, as far as I understand, in principle, the bvectors can be independent of k-points. However, W90 sorts the bvecotors such that they are ordered according to some rules: this removes some arbitrariness so that the bvectors thus

Re: [Wannier] k-gradient implementation

2023-11-06 Thread Lun Yue
Dear Nicola and Jonathan, Thank you for the expedient reply! This has been very helpful! I have a followup question: in the output ".bvec" file, is there any particular reason why the set of b-vectors are written out for each k-point? Are there situations where the set of b-vectors differs

Re: [Wannier] k-gradient implementation

2023-11-04 Thread Jonathan Yates
Dear Yue, In support of Nicola’s comments: a long time I did some comparisons of the B1 approach from MV97, and the simpler 6 neighbour approach. I didn’t look at the resulting MLWF - rather I looked at the form of the position operator they lead to. Indeed, for the same k-point mesh the B1

Re: [Wannier] k-gradient implementation

2023-11-03 Thread Nicola Marzari
Dear Yue, admittedly both are easy - but think e.g. at a fcc lattice - its reciprocal lattice is bcc, 8 neighbours, and calculating the gradient using those 8 b_k vectors will be more accurate, at a given sampling, than just using 3. nicola On 03/11/2023 23:55, Lun Yue wrote: Dear

[Wannier] k-gradient implementation

2023-11-03 Thread Lun Yue
Dear all, I have a question regarding the implementation of the k-gradient. 1) In Wannier90, it is implemented by constructing the weights such that the completeness relation is fully satisfied [Eq. (B1), PRB 56, 12847 (1997)]. 2) Another approach would be to calculate the numerical