Skip to content

lineshape: integrate each tetrahedron three-phonon term at its own energy - #190

Open
ramic-k wants to merge 1 commit into
tdep-developers:mainfrom
ramic-k:lineshape-tetrahedron-band-swap
Open

ramic-k wants to merge 1 commit into
tdep-developers:mainfrom
ramic-k:lineshape-tetrahedron-band-swap

Conversation

@ramic-k

@ramic-k ramic-k commented Oct 12, 2026 •

Copy link
Copy Markdown

Fixes #187.

In threephonon_imaginary_selfenergy_tetrahedron, the block marked ! Adjusted version added the swapped matrix element |psi(b1,b3,b2)|² to the (b2, b3) entry. The band loop then ran over b3 ≥ b2 only. The swapped term couples mode b3 at q′ with mode b2 at q″, but it was integrated at ω_b2(q′) + ω_b3(q″) with the occupations of the unswapped modes.

This change removes the block and restores the full loop over b3. The full band sum computed just before the block is kept as it was.

Test (details in #187): MgO at 300 K, seven q-points, 40 mode sets, against phono3py 4.8.2 on the same force constants. The median relative difference in Γ at the mode energy falls from 19% to 0.75%. The largest falls from a factor of 7.0 to 3.2%.

Built with Meson and gfortran 16.2.0.

…ergy

The "Adjusted version" block in threephonon_imaginary_selfenergy_tetrahedron
added |psi(b1,b3,b2)|^2 to the (b2,b3) entry and then summed only b3 >= b2.
The swapped term couples mode b3 at q' with mode b2 at q'', so it belongs at
omega_b3(q') + omega_b2(q''), but it was integrated with the tetrahedron
weights of omega_b2(q') + omega_b3(q''). Its occupation factors were also
those of the unswapped modes.

Remove the block, which keeps the full band sum computed just before it,
and loop over all b3 again.

Fixes tdep-developers#187.
@ramic-k
ramic-k force-pushed the lineshape-tetrahedron-band-swap branch from d00e3c6 to 671d254 Compare October 12, 2026 13:55

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

lineshape: tetrahedron three-phonon routine integrates band-swapped matrix elements at the unswapped energy

1 participant