Author Topic: Setting max_interaction_range for phonon dispersion  (Read 77 times)

0 Members and 1 Guest are viewing this topic.

Offline krabidix

  • Regular ATK user
  • **
  • Posts: 11
  • Country: fi
  • Reputation: 0
    • View Profile
Setting max_interaction_range for phonon dispersion
« on: March 18, 2023, 15:17 »
Hi, What general guidelines should be followed when setting "max_interaction_range" for phonon dispersion calculations to achieve reliable results, taking into account its effects on supercell size and the occurrence of imaginary frequencies? Specifically, when using the default interaction range, larger supercells are suggested 
repetitions = checkNumberOfRepetitions(bulk_configuration),
while specifying a smaller max_interaction_range leads to smaller supercells 
repetitions = checkNumberOfRepetitions(bulk_configuration, max_interaction_range=5.0*Angstrom).
Furthermore, the choice of interaction range can influence the presence or absence of imaginary frequencies in different cases. For some systems, the lower interaction range manages to eliminate imaginary frequencies, while the default value of the interaction range shows imaginary frequencies, and there are some cases in which situations got reversed i.e default interaction range eliminates imaginary frequency and the lower interaction range does not. So, is there any general rule which needs to be followed while calculating reliable phonon dispersion? Best regard, krabidix                                    

Offline Anders Blom

  • QuantumATK Staff
  • Supreme ATK Wizard
  • *****
  • Posts: 5182
  • Country: dk
  • Reputation: 87
    • View Profile
    • QuantumATK at Synopsys
Re: Setting max_interaction_range for phonon dispersion
« Reply #1 on: March 22, 2023, 22:37 »
It can be really useful to take advantage of the function to check the repetitions, instead of just blindly launching a calculation which may be extremely time-consuming. That said, no matter what value you set for the max_interaction_range, it will almost always correspond to an approximation, and is thus prone to inaccurate results, incl. negative frequencies. The exception is if you set a value for the range which is larger than the interaction range of all atoms, as then you just recover the default behavior, which is to include all atom interactions when determining the supercell size.

The real approximation you make is of course in the size of the supercell, but since any finite value of max_interaction_range gives a smaller supercell than the default, your second observation is logical: a smaller range will NOT eliminate imaginary frequencies, but rather increase their likelihood. As for the opposite case ("lower interaction range manages to eliminate imaginary frequencies"), I think that might just be luck, in some particular system; it is at least not something I would expect to be the general case.

Also note that imaginary frequencies are not only a result of a too small supercell. It is equally important to ensure the configuration itself is relaxed with high accuracy. This often requires a tighter tolerance on the forces and stress than the default values, which in turn typically can only be achieved with a lower convergence tolerance for the self-consistent loop.

Thus in conclusion, phonon calculations require tight SCF tolerance and well converged structures in forces and stress. Usually you can go with the default supercell; I usually check the supercell in the log file when the calculation starts, and interrupt it if I notice it's giving strange values, like not identifying a 2D sheet if there is not enough vacuum around it, or just generally giving too large cell compared to the computer hardware or time I am prepared to wait.

Finally, and I admit I might be wrong on this, but I suppose the main use for checking the supercell size with a given max_interaction_range is if you have a short-range forcefield, where using all atoms will yield an unnecessarily large supercell. But then again, forcefields are so fast that it doesn't really matter what supercell size is used.
« Last Edit: March 23, 2023, 00:02 by Anders Blom »