Dear Yambo Community,
I am currently working on calculating the absorption spectra of a charged supercell with an open shell using TDDFT with ALDA. While my results at the IPA level yield a smooth and "normal" spectrum, I encounter significant oscillations in the spectrum when using ALDA.
Could anyone provide insights into the potential causes of these oscillations? I have attached all the relevant files for reference.
Thank you very much for your assistance!
Best,
Idan Haritan,
Postdoc fellow at The Faculty of Engineering,
Bar-Ilan University.
Oscillations in Absorption Spectra with ALDA in Open Shell Calculations
Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan
-
- Posts: 2
- Joined: Sun Mar 31, 2024 7:41 pm
Oscillations in Absorption Spectra with ALDA in Open Shell Calculations
You do not have the required permissions to view the files attached to this post.
- Daniele Varsano
- Posts: 4231
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: Oscillations in Absorption Spectra with ALDA in Open Shell Calculations
Dear Idan,
one possibility is that the oscillations are caused by numerical instabilities appearing in the low density regions.
A test you can do is to switch the calculation from G-space to transition space. This can be done generating the input via:
the advantage here is that the alda kernel is evaluated in real space and all the components are automatically included.
The price to pay is that you will need to limit the number of bands (247 in your input) otherwise you could have very large matrix to diagonalize.
You can anyway limit the number of bands (now BSEBands) to a window around the gap and increase them until convergence.
If the matrix becomes too large for a direct diagonalization you can use iterative methods as Haydock (BSSmod="h").
Best,
Daniele
one possibility is that the oscillations are caused by numerical instabilities appearing in the low density regions.
A test you can do is to switch the calculation from G-space to transition space. This can be done generating the input via:
Code: Select all
>yambo -o b -k alda -y d
The price to pay is that you will need to limit the number of bands (247 in your input) otherwise you could have very large matrix to diagonalize.
You can anyway limit the number of bands (now BSEBands) to a window around the gap and increase them until convergence.
If the matrix becomes too large for a direct diagonalization you can use iterative methods as Haydock (BSSmod="h").
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/
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/
-
- Posts: 2
- Joined: Sun Mar 31, 2024 7:41 pm
Re: Oscillations in Absorption Spectra with ALDA in Open Shell Calculations
Dear Daniele,
First of all, thank you for the fast reply!
It helped me a lot.
I'm sorry it took me this long to answer - I wanted to implement what you said, and all the different runs took some time.
First, I tried to move to transition space in my case to remove the oscillations - It worked and there were no oscillations in ALDA lever.
However, the IPA and ALDA looked too similar, so I moved to a former calculation on a slightly different case I already done in G-space.
In that calculation the G-space ALDA didn't show significant oscillations, but was very different from the IPA.
When I repeated that case with the transition space (with 230 bands out of 247), I got that the ALDA and IPA were roughly the same, and the ALDA transition space results were very different from the ALDA G-space results.
Now I don't understand where is the mistake? In the ALDA G-space or ALDA transition space?
What do you think?
Attached is a graph with the results, and 2 zip files, each containing the relevant files for each run. Thank you so much for the help.
Idan Haritan,
Postdoc fellow at The Faculty of Engineering,
Bar-Ilan University.
First of all, thank you for the fast reply!
It helped me a lot.
I'm sorry it took me this long to answer - I wanted to implement what you said, and all the different runs took some time.
First, I tried to move to transition space in my case to remove the oscillations - It worked and there were no oscillations in ALDA lever.
However, the IPA and ALDA looked too similar, so I moved to a former calculation on a slightly different case I already done in G-space.
In that calculation the G-space ALDA didn't show significant oscillations, but was very different from the IPA.
When I repeated that case with the transition space (with 230 bands out of 247), I got that the ALDA and IPA were roughly the same, and the ALDA transition space results were very different from the ALDA G-space results.
Now I don't understand where is the mistake? In the ALDA G-space or ALDA transition space?
What do you think?
Attached is a graph with the results, and 2 zip files, each containing the relevant files for each run. Thank you so much for the help.
Idan Haritan,
Postdoc fellow at The Faculty of Engineering,
Bar-Ilan University.
You do not have the required permissions to view the files attached to this post.
- Daniele Varsano
- Posts: 4231
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: Oscillations in Absorption Spectra with ALDA in Open Shell Calculations
Dear Idan,
in general,
going from G space to transition state it is just a basis set change so the results, in principle should be the same.
In reality they are not as it is not easy to go at full convergence in the two cases.
Now, the IP should be exactly the same, now in your case they are slightly different as you are using a different number of bands (247 vs 230)
Coming to the ALDA, your kernel is Hartree+ALDA. In Gpsace you need to set energy cutoff for both term and you have 3Ry for both term. In transition space you have 392149 RL for Hartree and automatically all the G vector for the ALDA (as it is computed in real space).
Having said that it seems that the calculation in transition space is the right one and the G-space calculation has some problem: it seems that the spectrum is highly redshifted wrt the IP one, and this is strange has ALDA does not have a binding term between electron and hole that usually is the responsible for the redshift. Moreover I would not expect a large effect of the ALDA term over the Hartree term (which should provide a blueshift), you can try to do a Hartree only calculation anyway (again they should provide the same results if the two calculation are equivalent in terms of bands, G-vectors and also ordering).
PS: I noticed you are doing a gamma only calculation, is this intentional? Please note that if you want to do a calculation of an isolated system, Coulomb cutoff technique are recommended as convergence wrt the vacuum size can be very slow.
Best,
Daniele
in general,
going from G space to transition state it is just a basis set change so the results, in principle should be the same.
In reality they are not as it is not easy to go at full convergence in the two cases.
Now, the IP should be exactly the same, now in your case they are slightly different as you are using a different number of bands (247 vs 230)
Coming to the ALDA, your kernel is Hartree+ALDA. In Gpsace you need to set energy cutoff for both term and you have 3Ry for both term. In transition space you have 392149 RL for Hartree and automatically all the G vector for the ALDA (as it is computed in real space).
Having said that it seems that the calculation in transition space is the right one and the G-space calculation has some problem: it seems that the spectrum is highly redshifted wrt the IP one, and this is strange has ALDA does not have a binding term between electron and hole that usually is the responsible for the redshift. Moreover I would not expect a large effect of the ALDA term over the Hartree term (which should provide a blueshift), you can try to do a Hartree only calculation anyway (again they should provide the same results if the two calculation are equivalent in terms of bands, G-vectors and also ordering).
PS: I noticed you are doing a gamma only calculation, is this intentional? Please note that if you want to do a calculation of an isolated system, Coulomb cutoff technique are recommended as convergence wrt the vacuum size can be very slow.
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/
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/