Adding binary for four phonons thermal conductivity#91
Adding binary for four phonons thermal conductivity#91flokno merged 24 commits intotdep-developers:mainfrom
Conversation
|
I changed the binary to |
… it on q-points where calculation have been done
|
I had to increase the symmetry tolerance here from |
|
Increasing the symmetry tolerance should be fine. |
… with the derivation
* needed for large 4ph cutoffs (rc4)
nullspace | increase symmetry tolerance for quartets
|
Remaining for me:
|
flokno
left a comment
There was a problem hiding this comment.
First round of comments, mostly on docs and user stuff
flokno
left a comment
There was a problem hiding this comment.
More comments, let's discuss them before you change anything
|
When the paper is out: Document for which materials |
|
One more comment: Now that we have testfiles:
extract_forceconstants -rc2 0 -rc3 3 -rc4 0 --polar
ln -sf outfile.forceconstant infile.forceconstant
ln -sf outfile.forceconstant_thirdorder infile.forceconstant_thirdorder
ln -sf outfile.forceconstant_fourthorder infile.forceconstant_fourthorder
thermal_conductivity -qg 5 5 5 --fourthorder -qg4ph 3 3 3 --seed 1which takes 3s on my computer. Alternatively it takes 0.5s with a 2x2x2 4ph grid |
Co-authored-by: Florian Knoop <florian.knoop@liu.se>
|
Thanks @OrbitalC ! Great development! |
This commit a new binary for the thermal conductivity, adding four phonon and including single mode, collective and off-diagonal contributions.
The code is less demanding in terms of memory, significantly faster than the previous one and implement a Monte-Carlo double grid sampling to reduce drastically the cost of the scattering computation.
Changes compared with the previous binary (in no particular order)
Added
xykappa from the iterative or off-diagonal contributionslo_fftgrid_helpin libolle. This contains the thing related to the Monte-Carlo grid and the functions to get a third or fourth q-point conserving quasi-momentum for a fft grid. I put it here to make it possible to use these tools for other binaries.lo_timertypes to provide a detailed summary of the timing of the different part of the codeRemoved
Modified
lineshapein grid mode. With this, I actually have single mode results agreeing with RTA results fromlineshape(not the case before !)type_phonons_dispersion. This is because the old version only printed it ifp_minuswas allocated and, as stated above, we don't have access to it now.The documentation and test are included for this binary. Also, a note to warn about this new binary has been included in the documentation for the
thermal_conductivitybinary.Only thing missing is the link to the paper going with this implementation, that can be added as soon as the preprint is out.