The logic behind change of q-points generation

Hi Dynasor developer,

I noticed that the generation code for q-points has changed. Previously it was generated in the first quadrant (i.e., q_i >= 0, i=x,y,z), thereby, technically one-eighth of a sphere. The pruned value of q was accounted for by using the angle factor.

Now it is constructed in the whole quadrants, and so precisely spherically distributed.

I tried to generate q-points by these two methods using 2000 q-points as input, and the difference is the q_prune value, e.g., 0.16 vs 0.055 (and final q-points 2239 vs 1973). So it looks the new method covered more q-points in the low-q region, which is nice to increase statistics.

1, Apart from this, are there any other reasons for the change of q-points generation? I observed just slight difference in study of molecular liquids (where isotropic assumption is valid).

2, Is there any change of the requirements for the generation (e.g., max_qpoints)?

Thanks,
Guang

Hi
Yes we made this change to make sure not to miss any (important) q-points that might lie outside first quadrant.

Glad to hear it didnt effect results much.

No it shouldn’t require any changes to how you generate qpoints, but ofcourse it is always a good idea to check that results are converged with respect to max_qpoints.