Page 1 of 1

Interpolate exciton dispersion

Posted: Wed Mar 19, 2025 11:06 am
by Danslie
Dear yambo developers,
I want to analyze the exciton dispersion at finite momentum q. BSE was done with the variable:
%BSEQptR
1 | 110 | # [BSK] Transferred momenta range
%

Then run ypp to interpolate the excitons energies along with the line Gamma->K. The output file "o.excitons_interpolated" shows:

|q| (a.u.) e1 e2 e3 e4 q_x (rlu) q_y (rlu) q_z (rlu)
0.00000000 2.30056953 2.30601096 2.33896685 2.34212995 0.00000000 0.00000000 0.00000000
0.73277773E-02 2.2860415 2.2913213 2.3250015 2.3281801 0.66666002E-02 0.66665979E-02 -0.41359031E-24
0.14655555E-01 2.2494206 2.2542806 2.2898545 2.2930717 0.13333200E-01 0.13333196E-01 -0.82718061E-24
....

However, when BSE was done with the variable:
%BSEQptR
1 | 1 | # [BSK] Transferred momenta range
%
The first four exciton energy are:
E [ev] Strength Index
1.97210479 0.591598791E-5 1.00000000
1.97552884 0.673281147E-5 2.00000000
2.02403736 0.166392666E-8 3.00000000
2.02718115 0.159633606E-8 4.00000000
...

There are apparent discrepancy of the exciton energy at q->0 between the two calculations. Why?

Re: Interpolate exciton dispersion

Posted: Wed Mar 19, 2025 11:28 am
by Daniele Varsano
Dear Dan,
can you provide more information, e.g. ypp/yambo input/output/report files?

Best,

Daniele

Re: Interpolate exciton dispersion

Posted: Thu Mar 20, 2025 2:02 am
by Danslie
Dear Daniele,
Thank you for your quick reply.
Please see attached input/output files.


Best,

Re: Interpolate exciton dispersion

Posted: Thu Mar 20, 2025 10:11 am
by Daniele Varsano
Dear Dan,

it is possible that there is a problem in the interpolation, a possible solution would be to use the yambopy utility instead of ypp (expert on yambopy can guide you in the procedure).

Anyway, I can see some inconsistencies in your calculations. Different cutoff are used for GW and BSE, and also an Error is emitted when reading the Q0 BSE matrix regarding the energies in the diagonal elements (check in the report for "ERR" and "WRN".). Most probably these are harmless anyway, to be sure that the issue is given by the interpolation can you check the Q0 exciton energies in the ./inter-BSE//ndb.BS_diago_Q1 file. You can either use ypp, the command line should be:

Code: Select all

> ypp -e s -b 1 -J inter-BSE 
or you can inspect directly the database, converting it in readable format using the ncdump command. Note that energy in the database are in Hartree.

Best,
Daniele

Re: Interpolate exciton dispersion

Posted: Fri Mar 21, 2025 12:47 pm
by palful
Dear Dan,

We are working on adding more support for BSE finite-q in yambopy including a tool to easily interpolate the exciton dispersion, which is not available yet.

However, this can be done also by a user in their own script by combining the various yambopy tools to for reciprocal space, excitons, and interpolation, but it requires a little bit of pre-existing knowledge of the various tools.

Best,
Fulvio

Re: Interpolate exciton dispersion

Posted: Sat Mar 22, 2025 5:33 am
by Danslie
Thank you Daniele and palful. Thank you for your suggestions.

Best,