[CP2K-user] Fermi energy too high?

Phil G. phil... at aol.com
Mon Jan 21 11:25:54 UTC 2019


Dear Matt,

thank you very much for the suggestions and after some tests it also worked 
! :-) 
To check the effect of dipole correction on the calculation, I started 
different slab systems and used cell length in y-direction at 50 Angstrom 
(much more than this value will lead to error (index to radix array not 
found)):
The slab systems are defined as in the first message above (9th January)
 
 a)  without dipole correction:  E_F = -3.31475 eV
      with dipole correction:  E_F = -3.2983 eV

 b)  without dipole correction:  E_F = -4.642 eV
      with dipole correction:  E_F = -4.72 eV

It seems that the dipole correction leads to a marginal reduction of the 
Fermi energy.
Now I want to check, if the vacuum level has another value that the Fermi 
energy as you showed (+/- 0.75 eV) by plotting pdos as a function of atom 
coordinates, i.e. in slab y-direction.

Thanks again for your helpful suggestions! :-)

Kind regards,

Phil


Am Mittwoch, 16. Januar 2019 14:20:18 UTC+1 schrieb Matt W:
>
> I added
>
> &CENTER_COORDS
> &END
>
> in the topology section. I get the 'fermi level' reported at -4.61 eV. And 
> the vacuum levels at +- 0.75 eV
>
> So the work functions of the two faces are ~5.4 and 3.8 eV respectively. I 
> got the profile of the potential by adding &V_HARTREE_CUBE and using the 
> cubecruncher utility (bundled in the tools directory) to extract the 
> averaged y profile to find the vacuum levels.
>
> Matt
>
>
>
> On Wednesday, January 16, 2019 at 9:26:32 AM UTC, Matt W wrote:
>>
>> Hi,
>>
>> the xyz file you sent doesn't have the y coords centred in the cell. The 
>> cell goes from 0 to L. You centre as if it goes from -L/2 to L/2.
>>
>> If you print V_HARTREE_CUBE you can work out the potential profile across 
>> the slab. 
>>
>> BTW your slab is too small in X and Z for reliable results without 
>> k-point sampling...
>>
>> Matt
>>
>> On Wednesday, January 16, 2019 at 8:54:56 AM UTC, Phil G. wrote:
>>>
>>> yes, the slab was centered in y-direction (xyz file attached here), but 
>>> in x- and z- direction from 0 to the corresponding lengths of the slab.
>>> Maybe I should extend the size of vacuum space or turn on the dipole 
>>> correction?
>>> For searching for reason, the input file is also attached here.
>>>
>>> Phil
>>>
>>> Am Dienstag, 15. Januar 2019 16:07:55 UTC+1 schrieb Matt W:
>>>>
>>>> Is your slab in the centre of the cell (Y direction)? -  the cell runs 
>>>> from 0 to L, so the slab must be centred at L/2.
>>>>
>>>> Matt
>>>>
>>>> On Tuesday, January 15, 2019 at 2:21:26 PM UTC, Phil G. wrote:
>>>>>
>>>>> Dear Matt,
>>>>>
>>>>> thank you for the suggestions and after centering the slab in 
>>>>> y-direction and turning off the surface dipole correction, the program 
>>>>> finally runs and I get the result, but there are some error messages such 
>>>>> as:
>>>>>
>>>>>  *** WARNING in pw/ps_wavelet_methods.F:236 :: Density non-zero on the 
>>>>> ***
>>>>>  *** edges of the unit cell: wrong results in WAVELET solver           
>>>>> ***
>>>>>
>>>>>     89 Broy./Diag. 0.10E+00    2.3     0.00000880     
>>>>> -3020.8753805067  4.85E-05
>>>>>
>>>>>   *** SCF run converged in    89 steps ***
>>>>>
>>>>> I have chosen the cell length of 40 angstroms in Y direction (slab 
>>>>> length in y-direction is about 27.6 angstroms).
>>>>> For the LiNbO3 slab consisting of 14 trilayers as stated in the 
>>>>> message of 9th January, I obtain the result of the Fermi energy:
>>>>>
>>>>>   E_F = 11.174 eV    (in comparison to the -0.8516 eV in case b) )
>>>>>
>>>>> This is unrealistic...should I have to enlarge the cell length in 
>>>>> y-direction or should I turn on the dipole correction?
>>>>>
>>>>> Phil
>>>>>
>>>>>
>>>>>
>>>>> Am Dienstag, 15. Januar 2019 12:31:22 UTC+1 schrieb Matt W:
>>>>>>
>>>>>> Ah, OK. The extended FFT lengths only works with FFTW not with the 
>>>>>> wavelet FFT.
>>>>>>
>>>>>> You do not need such a large vacuum with the wavelet solver as it is 
>>>>>> genuinely non-periodic. Place the slab in the center and 5A of vacuum 
>>>>>> either side should be sufficient - allow 10 A either side to get a clear 
>>>>>> decay to vacuum level(s). You will get two vacuum levels if you have  a 
>>>>>> dipole. I don't know if wavelet will work with the dipole correction, I'd 
>>>>>> turn it off to start with.
>>>>>>
>>>>>> Matt
>>>>>>
>>>>>> On Tuesday, January 15, 2019 at 8:52:35 AM UTC, Phil G. wrote:
>>>>>>>
>>>>>>> Hello again,
>>>>>>>
>>>>>>> have tried some attempts to start calculation with WAVELET poisson 
>>>>>>> solver, but all attempts have failed due to following error messages:
>>>>>>>
>>>>>>> 1)  the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>      (pw/ps_wavelet_util.F:358)
>>>>>>>
>>>>>>>      ===== Routine Calling Stack ===== 
>>>>>>>
>>>>>>>            13 S_FFT_dimensions
>>>>>>>            12 RS_z_slice_distribution
>>>>>>>            11 ps_wavelet_create
>>>>>>>      the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>            10 pw_poisson_rebuild
>>>>>>>             9 pw_poisson_solve
>>>>>>>             8 qs_ks_build_kohn_sham_matrix
>>>>>>>             7 rebuild_ks_matrix
>>>>>>>      the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>      the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>      the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>      the FFT in the x direction is not allowed
>>>>>>>      n01 dimension         154
>>>>>>>             6 qs_ks_update_qs_env
>>>>>>>             5 scf_env_do_scf_inner_loop
>>>>>>>             4 scf_env_do_scf
>>>>>>>             3 qs_energies
>>>>>>>             2 qs_forces
>>>>>>>             1 CP2K
>>>>>>>
>>>>>>>
>>>>>>> 2)  after that I turn off the command EXTENDED_FFT_LENGTHS, then:
>>>>>>>
>>>>>>>     Index to radix array not found.
>>>>>>>     (pw/fft_tools.F:293)
>>>>>>>
>>>>>>>      ===== Routine Calling Stack ===== 
>>>>>>>
>>>>>>>             6 pw_grid_setup
>>>>>>>             5 pw_env_rebuild
>>>>>>>             4 qs_env_rebuild_pw_env
>>>>>>>             3 qs_env_setup
>>>>>>>             2 qs_init_subsys
>>>>>>>             1 CP2K
>>>>>>>
>>>>>>>
>>>>>>> That's strange and I don't know what to do. 
>>>>>>> In my input file there are some info about commands:
>>>>>>>
>>>>>>> [...]
>>>>>>>     SURFACE_DIPOLE_CORRECTION .TRUE.
>>>>>>>     SURF_DIP_DIR Y
>>>>>>> [...]
>>>>>>>     &MGRID
>>>>>>>       CUTOFF 600
>>>>>>>       NGRIDS 5
>>>>>>>       REL_CUTOFF 50
>>>>>>>     &END MGRID
>>>>>>> [...]
>>>>>>>     &POISSON
>>>>>>>       POISSON_SOLVER WAVELET
>>>>>>>       PERIODIC XZ
>>>>>>>     &END POISSON
>>>>>>> [...]
>>>>>>>
>>>>>>> [...]
>>>>>>>     &CELL
>>>>>>>       A    5.148      0.0         0.0
>>>>>>>       B    0.000      100.0      0.0
>>>>>>>       C    0.0          0.0         8.9166         
>>>>>>>       PERIODIC XZ
>>>>>>>     &END CELL
>>>>>>> [...]
>>>>>>>
>>>>>>> Phil
>>>>>>>
>>>>>>>
>>>>>>> Am Donnerstag, 10. Januar 2019 10:56:24 UTC+1 schrieb Phil G.:
>>>>>>>>
>>>>>>>> Dear Matt,
>>>>>>>>
>>>>>>>> how can find the potential in the vacuum (which type of potential? 
>>>>>>>> potential energy or electric/electrostatic potential?) ?
>>>>>>>> For the case of electric/electrostatic potential, there is a flat 
>>>>>>>> curve with a step near the vacuum center as a consequence of dipole 
>>>>>>>> correction in Z direction, while in the bulk slab there is a periodic 
>>>>>>>> curve. 
>>>>>>>>
>>>>>>>> I will try to use the wavelet solver with PERIODIC XY.
>>>>>>>>
>>>>>>>> Phil
>>>>>>>>
>>>>>>>> Am Mittwoch, 9. Januar 2019 14:05:04 UTC+1 schrieb Matt W:
>>>>>>>>>
>>>>>>>>> Hello again,
>>>>>>>>>
>>>>>>>>> did you find the potential in the vacuum and align to that? You 
>>>>>>>>> need to set a reference to get absolute values.
>>>>>>>>>
>>>>>>>>> You could also try using the wavelet solver 
>>>>>>>>>
>>>>>>>>> &POISSON
>>>>>>>>>    PSOLVER WAVELET
>>>>>>>>>    PERIODIC XZ
>>>>>>>>> &END
>>>>>>>>>
>>>>>>>>> and PERIODIC XZ  in the &CELL section. The Y direction must be the 
>>>>>>>>> non-periodic one. That gives an absolute reference (if there is no dipole 
>>>>>>>>> in the cell otherwise you need the  dipole correction switched on).
>>>>>>>>>
>>>>>>>>> Matt
>>>>>>>>>
>>>>>>>>> On Wednesday, January 9, 2019 at 8:18:58 AM UTC, Phil G. wrote:
>>>>>>>>>>
>>>>>>>>>> Dear Matt,
>>>>>>>>>>
>>>>>>>>>> thank you for your reply and good suggestions. Now I have let 
>>>>>>>>>> different LiNbO3 slab systems to be calculated:
>>>>>>>>>>
>>>>>>>>>> a) 14 trilayer system as from Sanna et al., *Appl. Surf. Sci.* 
>>>>>>>>>> *301* (2014), 70-78 with Nb-O3-Li2 surface termination on the 
>>>>>>>>>> one side of the slab and Li-O surface termination on the other side. Vacuum 
>>>>>>>>>> space of at least 40 Angstroms was included. The bulk region was already 
>>>>>>>>>> geometry-optimized and bulk atoms were fixed in the inner 6 trilayers. 
>>>>>>>>>> Geometry optimization on the whole slab system was performed and then the 
>>>>>>>>>> pdos of the system was calculated and plotted for every atom layers.
>>>>>>>>>> Result: E_F = 0.1552 eV  (fermi energy is overall constant, in 
>>>>>>>>>> every atom layers)
>>>>>>>>>>
>>>>>>>>>> b) the same as a), but the bulk region was not already 
>>>>>>>>>> geometry-optimized before. Geometry optimization was performed and 
>>>>>>>>>> calculation of pdos.
>>>>>>>>>> Result: E_F = - 0.8516 eV
>>>>>>>>>>
>>>>>>>>>> c) the same as b), but 26 trilayers instead of 14 trilayers. 
>>>>>>>>>> Geometry optimization and calculation of pdos were performed.
>>>>>>>>>> Result: E_F = 2.3372 eV
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> So, I am wondering why these values differ so much. Should I need 
>>>>>>>>>> band structure calculation of the bulk LiNbO3 in order to find the global 
>>>>>>>>>> valence band edge maximum (with KPOINT calculation)?
>>>>>>>>>>
>>>>>>>>>> Kind regards,
>>>>>>>>>>
>>>>>>>>>> Phil
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Am Freitag, 14. Dezember 2018 17:41:03 UTC+1 schrieb Matt W:
>>>>>>>>>>>
>>>>>>>>>>> In a periodic system the zero of the one electron levels is 
>>>>>>>>>>> arbitrary. If you need a reference you need to run a slab calculation with 
>>>>>>>>>>> vacuum or try to align semi-core states to something.
>>>>>>>>>>>
>>>>>>>>>>> Matt
>>>>>>>>>>>
>>>>>>>>>>> On Friday, December 14, 2018 at 4:33:13 PM UTC, Phil G. wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> Dear people and experts of CP2K,
>>>>>>>>>>>>
>>>>>>>>>>>> after the geometry optimization of the lithium niobate (LiNbO3) 
>>>>>>>>>>>> unit cell I would like to obtain pdos in order to determine the band gap 
>>>>>>>>>>>> and Fermi energy of the bulk system.
>>>>>>>>>>>> After the calculation with ENERGY_FORCE I got pdos files of the 
>>>>>>>>>>>> three atoms (indexing depends on the z-position of the atoms) and I'm 
>>>>>>>>>>>> wondering about the value of Fermi energy: E_F = 0.300174 a.u. which is 
>>>>>>>>>>>> 8.168 eV. Is that not too high? And which energy has the value 0 and what 
>>>>>>>>>>>> is the reference? What is the Fermi energy defined in the language of CP2K?
>>>>>>>>>>>> The energy band gap (HOMO-LUMO gap) of 3.62 eV agrees well with 
>>>>>>>>>>>> experimental values of 3.7 to 3.9 eV. But I cannot imagine that Fermi level 
>>>>>>>>>>>> has too high energy values.
>>>>>>>>>>>>
>>>>>>>>>>>> Has anyone an idea what is the reason for such high Fermi 
>>>>>>>>>>>> energy values?
>>>>>>>>>>>>
>>>>>>>>>>>> Here the input and output files are attached here.
>>>>>>>>>>>>
>>>>>>>>>>>> Kind regards,
>>>>>>>>>>>>
>>>>>>>>>>>> Phil
>>>>>>>>>>>>
>>>>>>>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20190121/06f42279/attachment.htm>


More information about the CP2K-user mailing list