Posdoppler Problems  [SOLVED]

Total energy, geometry optimization, DFT+U, spin....

Moderator: bguster

Locked
ehecht
Posts: 2
Joined: Fri May 12, 2017 3:48 pm

Posdoppler Problems  [SOLVED]

Post by ehecht » Fri May 12, 2017 3:52 pm

Hello,

Im a Master student at the Technichal University of Munich working on CDBS measurements and their simulation. My main topic is on a new and improved data analysis of two dimensional CDBB spectra alongside with DBS and CDBS measurements on oxide heterostructures.
In order to verify my data analysis I would like to compare my results against previous measurements and simulation results of selected bulk materials.
For this I chose Al, Au, Cr, Cu, Ni, and Si as all of those has been measured previously by our group. For the simulation I chose to use Abinit. Now I do have some problems in obtaining valid results from the posdoppler module in Abinit and am thus looking for some advice or help in determining the error.
I started with the example from the internal test t35 from version 7 of Abinit. First I determined appropriate values for ecut, pawecut and made use oft the optcell mechanism to test my model. Lastly I did some positron calculations with varying posocc in order to get a bulk doppler spectra and positron lifetime.
For the paw potentials I chose the ones provided by the web page of Abinit and generated the core wave function files by modifying the output part of the correspondent input files, enclosed in the XML files.
The doppler output generated with the post processing script posdopspectra.F90 seem to be quite unreasonable. The raw rho_xxx files start with negative numbers and the overall shape does not match what I expected. Assuming that rho is a probability negative numbers negative values are obviously wrong. Further the information in the doppler_out file isn't any better.
The resolution seems not to change with the chosen FWHM and is quite coarse all the time. The convoluted probabilities are also often in the range lower 1e-150 whereas the raw ones are in the order of 1e-9. As to verify my paw input files I choose aluminium where the Abinit Psps for tests provided me with a GGA type PAW pseudopotential. With this Input the results seem to be in much better coincidence with the experimental results. Now I examined my Input files but couldn't identify any significant differences. I further change my input to a GGA from an LDA without any major changes in the results.

If you want to take a look at my input and output I uploaded some recent ones here:
https://tumde-my.sharepoint.com/persona ... YwPnplCTdU
If you do have further questions I'm happy to answer them.

Best regards

Eicke Hecht

Julia
Posts: 7
Joined: Wed Aug 08, 2012 7:54 pm

Re: Posdoppler Problems

Post by Julia » Wed May 24, 2017 8:50 pm

Dear Eicke,

From your files it looks like you won't have to change too much to get better results. There are only few details that you should change.

In the example file t35 (it is actually just a fast test to see if the code is working properly, that's why it does not give good results) the k point grid is not the optimal one for Doppler calculations. In Abinit, the parameters kptopt 1 and ngkpt 4 4 4 result in a grid taking advantage of the crystal symmetries. In the Doppler calculations we cannot take advantage of the symmetries, so we should use a full grid. It can be achieved by setting for instance:

kptopt 0
istwfk *1
nkpt 8
kpt
0 0 0
0 0 0.5
0 0.5 0
0.5 0 0
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0
0.5 0.5 0.5

This will give you a regular 2x2x2 grid. You can check the results with denser grids. As this is the grid for the momentum space, the denser it is, the more data points you will have in you doppler file. The raw data is then written in the doppler_out file. To generate the rho_xxx file, the raw data is first interpolated on a denser, regular grid, and then convoluted using FWHM chosen by you. If the grid in doppler_out is not correct or dense enough, you will have numerical problems in the interpolation and convolution (the negative values you noticed).

Your results for Al look weird first because you had few points in the reciprocal space (k-grid). The second reason is that you chose a very small FWHM, 0.1 mrad, which is much less than your doppler grid spacing. In the Doppler calculations the resolution is given by the k-grid (and corresponds to the spacing in the doppler_out file, raw data). If you use the 2x2x2 grid I proposed above, you will get the spacing of 2.995 mrad in the 001 direction. This is quite low, so you can try denser grids. Then, convolution with experimental FWHM can be done to mimic the experimental resolution (in most experiments I saw it to be equal to 3-5 mrad). The postprocessing tool can be only used to mimic a lower, experimental resolution, but will never give you a higher one. You can only increase the resolution through the choice of the k-point grid in your input file. In the files you send me, you used FWHM=1 mrad in one of the folders and the spectrum looked better already.

Another thing you have to be careful about, is the number of valence electrons in the PAW dataset.
If you don't have enough functions in the dataset, you will have unphysically large contributions from the annihilation with core electrons. We discussed the problem in this paper (let me know if you have any questions about this problem):
https://journals.aps.org/prb/abstract/1 ... .92.125113

In the example for Al, you only had 3 valence electrons and it is not enough to get a converged Doppler spectrum. You can find the inputs to generate datasets including semicore electrons for most of the elements you are interested in here:
http://users.wfu.edu/natalie/papers/pwp ... table.html
and here:
http://users.wfu.edu/natalie/papers/pwp ... e2013.html

I also noticed that you tried to calculate the doppler spectrum with positron>0 (two step calculation). This is not possible, because the code does not have the electronic wavefunction in the memory and cannot calculate the spectra. You always have to use negative positron for Doppler calculations. Two step calculations are only possible for the lifetime, where only densities are needed and they can be read from disk.

Best regards,
Julia

Locked