The units of Dipoles obtained using yambopy

Post here any question you encounter when running the scripts of the yambo-py suite. Post here problem strictly to the python interface as problem coming from the yambo runs should go in the appropriate subforum.

Moderators: palful, amolina, mbonacci

Post Reply
Guo_BIT
Posts: 41
Joined: Tue Jun 06, 2023 2:55 am

The units of Dipoles obtained using yambopy

Post by Guo_BIT » Wed Aug 06, 2025 10:49 am

Dear Developers,

I have obtained the dipoles along different directions using Yambopy, following the website:
viewtopic.php?t=1889

The extracted data is as follows:

Code: Select all

0.12008734 - 0.18181457j
-0.36308822 - 0.017739873j
-2.1394248 - 0.07620608j
-4.828707 + 4.8151965j
20.601658 + 17.380335j
-7.0335217 - 4.9788766j
-1.5650864 - 0.9189489j
-0.08713954 - 0.15790565j
-0.058562797 - 0.31479385j
Furthermore, on the website mentioned above, it is stated that the unit of the dipoles obtained in this case is Bohr. According to my understanding, the square of the real part plus the square of the imaginary part of the dipole determines whether the exciton is bright or dark.

Therefore, is the unit of the exciton oscillator strengths obtained in the *_E_* file also be Bohr²?
Jingda Guo
Beijing Institute of Technology

User avatar
Daniele Varsano
Posts: 4285
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: The units of Dipoles obtained using yambopy

Post by Daniele Varsano » Fri Sep 12, 2025 7:22 am

Dear Jingda,

sorry for the late reply, in the last month we had problem with the forum website and it is back only now.
Yes, the intensity should be Bohr^2, please note that in the output file they are normalized to their maximum.
Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Guo_BIT
Posts: 41
Joined: Tue Jun 06, 2023 2:55 am

Re: The units of Dipoles obtained using yambopy

Post by Guo_BIT » Mon Sep 15, 2025 1:48 pm

Dear Daniele,
Thank you very much for your kind reply. We are aware that the envelope function of the selected exciton can be obtained in graphical form (via Yambopy) as well as in percentage form (via ypp). We were wondering whether it would also be possible to extract the raw Avc, similar to the dipoles mentioned above.

Best regards,
Jingda Guo
Jingda Guo
Beijing Institute of Technology

User avatar
palful
Posts: 101
Joined: Tue Jan 26, 2016 11:23 am
Location: Modena and Milan

Re: The units of Dipoles obtained using yambopy

Post by palful » Mon Sep 15, 2025 2:42 pm

Dear Jingda,

You can easily obtain the BSE eigenvector in the format of numpy array by using yambopy. When you read the BSE database with `YamboExcitonDB`, you automatically have an array called `eigenvectors` containing the A_cvk coefficients.

You can follow this tutorial (section Exciton intro 1) to see how this can be done.

Cheers,
Fulvio
Dr. Fulvio Paleari
S3-CNR Institute of Nanoscience and MaX Center
Modena, Italy

Guo_BIT
Posts: 41
Joined: Tue Jun 06, 2023 2:55 am

Re: The units of Dipoles obtained using yambopy

Post by Guo_BIT » Tue Sep 16, 2025 1:02 pm

Dear Fulvio,

Thank you very much for your reply, and apologies for not being clear enough about our request earlier.

We have already obtained the contributions (or weights) of the selected exciton for the specified transitions (K, V, C) using Yambopy.
In my opinion, the data we obtained are still expressed in percentage form, similar to the results in the weights file produced by ypp. For example

Code: Select all

(0.9837849-0.056339588j)
This value indicates that the selected exciton essentially originates entirely from the specified transitions (K, V, C).

However, my supervisor would like to access more “raw” data — for example, the actual numerator and denominator values used in calculating the percentages. May I ask whether such data can be extracted, and whether they carry a clear physical meaning?

Best regards,
Jingda Guo
Jingda Guo
Beijing Institute of Technology

User avatar
Daniele Varsano
Posts: 4285
Joined: Tue Mar 17, 2009 2:23 pm
Contact:

Re: The units of Dipoles obtained using yambopy

Post by Daniele Varsano » Wed Sep 17, 2025 3:06 pm

Dear Jingda,

The A_cvk are not the weight expressed in percentage, they are the eigenvectors obtained by the BSE solution. Its square module is indeed the weight=|A_cvk|^2 and you can intepret as percentage as they obey the normalization: \sum_cvk |A_cvk|^2=1

Please note that if you are considering degenerate exciton, you'll have \sum_cvk |A_cvk|^2=N_deg

Best,

Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/

Post Reply