deepmodeling / abacus-develop

An electronic structure package based on either plane wave basis or numerical atomic orbitals.
http://abacus.ustc.edu.cn
GNU Lesser General Public License v3.0
171 stars 130 forks source link

Question about the "ATOMIC_POSITIONS" section in the STRU file for TiO2 polaron calculation #4253

Closed chenjunh closed 4 months ago

chenjunh commented 5 months ago

Details

Following the reference (DOI:10.1063/1674-0068/cjcp2108136, see Fig. Procedure_DFT_plus_U_with_excess_electron), I'm trying to perform a scf calculation on a super-cell TiO2 (containing two TiO2 molecules) with one excess electron. I want to confirm that I'm setting up STRU file correctly by confirming two questions:

  1. Question about magnetic: Does setting the magnetic for one Ti as +1.0 and the other Ti as 0.0 mean that I add one excess electron to the super-cell (because the electron configuration for Ti is 4d25s2, Ti3+ has one unpaired electron with a magnetic moment of 1 and Ti4+ has no unpaired electron with a magnetic moment of 0, see the following detailed set-up in STRU file)?
  2. Question about super-cell: Since the polaron is formed by a Ti3+/Ti4+ pair, I construct the super-cell with two copies of TiO2 primitive cell. From the unit cell of TiO2 rutile structure (see Fig. TiO2_rutile), I extracted my TiO2 primitive cell 1 as: Ti (0, 0, 0) O(-0.25, 0.25, 0.5) O(0.25, -0.25, 0.50) and primitive cell 2 as a translation operation (0.5, 0.5, 0.5) on the cell 1: Ti(0.5, 0.5, 0.5) O(0.25, 0.75, 1.0) O(0.75, 0.25, 1.0). Am I setting up the TiO2 super-cell correctly?

I provide with my detailed set-up in STRU file below:

ATOMIC_POSITIONS Direct

Ti1 1.0 1 0.00 0.00 0.00 0 0 0

Ti2 0.0 1 0.50 0.50 0.50 0 0 0

O 0.0 4 -0.25 0.25 0.50 0 0 0 0.25 -0.25 0.50 0 0 0 0.25 0.75 1.00 0 0 0 0.75 0.25 1.00 0 0 0

And the attached figures are:

  1. Fig. Procedure_DFT_plus_U_with_excess_electron: the procedure described in the reference (DOI:10.1063/1674-0068/cjcp2108136).
  2. Fig. TiO2_rutile: the unit cell of TiO2 rutile structure.
  3. Fig. SPIN1_CHG: VESTA visualization of spin charge 1 with the STRU file set-up above
  4. Fig. SPIN2_CHG: VESTA visualization of spin charge 2 with the STRU file set-up above

Procedure_DFT_plus_U_with_excess_electron TiO2_rutile SPIN1_CHG bmp SPIN2_CHG bmp

Have you read FAQ on the online manual http://abacus.deepmodeling.com/en/latest/community/faq.html

Task list for Issue attackers (only for developers)

kirk0830 commented 5 months ago

Hi,

Starting magnetization is usually used for symmetry breaking of wavefunction. If you need a charged state (with one electron gain or loss), you should explicitly change the number of electrons with keyword nelec_delta in INPUT, together with symmetry breaking setting. However, it is not guaranteed with only these two aspects of setting, you can always get the state you want. There are also other things you should take into consideration: how to set/tune parameters so that let Ti favor a 4+ ionic state configuration, it is something like cooking but physical intuition is also somehow needed.

The second seems to question about the construction of primitive cell, while for rutile, as far as I remember, what you posted is already the primitive cell, it means rutile has the minimal structural unit in which there are 2 Ti (and certainly 4 O) atoms and atoms are not equivalent. Thus it is hard to answer whether you have constructed properly the supercell because:

  1. supercell is the duplication of primitive cell but actually seems you did not duplicate the primitive one in any direction
  2. a satisfying Ti3+/Ti4+ pair may physically resides in a lager cell (or I mean the supercell), then it would be the "real" primitive cell or minimal structural unit in aspect of electronic structure.
chenjunh commented 5 months ago

Starting magnetization is usually used for symmetry breaking of wavefunction. If you need a charged state (with one electron gain or loss), you should explicitly change the number of electrons with keyword nelec_delta in INPUT, together with symmetry breaking setting.

Hi kirk,

Thanks for your reply.

I interpret the "symmetry breaking setting" you mentioned above as setting nupdown to be 1 in my case. Please correct me if I'm wrong. By forcing this asymmetric spin, I can get different atomic magnetism on two Ti atoms, Ti1: 0.96 and Ti2: 0.23. In comparison, if I turn off nupdown by default, I will get atomic magnetism 0.7 for both Ti atoms. All calculation results I report above are based on a relax calculation of a primitive cell. And I find the cell-relax calculation hard to converge. I will submit another issue labeled by DFT+U to discuss this cell-relax problem.

Thanks!