-
Notifications
You must be signed in to change notification settings - Fork 145
Description
Details
Alpha-Fe2O3 is an anti-ferromagnetic material. In most of published papers, the bandgap of alpha-Fe2O3 is around 2.0-2.2 eV, while VASP or CP2K theoretical calculation results of HSE06 (default 25% HFX) will give 3.44 eV or 3.62 eV in paper:
- VASP: [1] Meng, Y.; Liu, X.-W.; Huo, C.-F.; Guo, W.-P.; Cao, D.-B.; Peng, Q.; Dearden, A.; Gonze, X.; Yang, Y.; Wang, J.; Jiao, H.; Li, Y.; Wen, X.-D. When Density Functional Approximations Meet Iron Oxides. J. Chem. Theory Comput. 2016, 12 (10), 5132–5144. https://doi.org/10.1021/acs.jctc.6b00640.
- CP2K: [2] Ahart, C. S.; Blumberger, J.; Rosso, K. M. Polaronic Structure of Excess Electrons and Holes for a Series of Bulk Iron Oxides. Phys. Chem. Chem. Phys. 2020, 22 (19), 10699–10709. https://doi.org/10.1039/C9CP06482F.
In the DFT simulation process of these paper above, the HFX ratio in HSE06 are adjusted to 12% to match the expt. bandgap.
I've done a serires of tests for ABACUS LCAO-HSE calculation on alpha-Fe2O3 and found that my HSE06 calculation will give around 2.10-2.18 eV, which will directly matched the expt. data but did not match other computation results.
e.g. For alpha-Fe2O3 in MP database:
Fe 55.8450 Fe_ONCV_PBE-1.2.upf upf201
O 15.9990 O.upf upf201
NUMERICAL_ORBITAL
Fe_gga_8au_100Ry_4s2p2d1f.orb
O_gga_7au_100Ry_2s2p1d.orb
LATTICE_CONSTANT
1.8897260000
LATTICE_VECTORS
5.3606087069 -0.0355819230 -0.0243419516
3.0181533813 4.4303583370 -0.0243415945
3.0181561858 1.5830648288 4.1379455681
ATOMIC_POSITIONS
Direct
Fe #label
0.0000 #magnetism
4 #number of atoms
0.8554415563 0.8554414312 0.8554415417 m 1 1 1 mag 4.1987
0.1445585225 0.1445586478 0.1445585366 m 1 1 1 mag -4.1987
0.6445584144 0.6445585645 0.6445586522 m 1 1 1 mag 4.1987
0.3554415070 0.3554413568 0.3554412695 m 1 1 1 mag -4.1987
O #label
0.0000 #magnetism
6 #number of atoms
0.4476308549 0.0523687669 0.7500001922 m 1 1 1 mag -0.1112
0.5523693911 0.9476309869 0.2499998078 m 1 1 1 mag 0.1112
0.0523687872 0.7500000210 0.4476312024 m 1 1 1 mag -0.1112
0.9476309666 0.2499999789 0.5523690439 m 1 1 1 mag 0.1112
0.7499999891 0.4476308155 0.0523692519 m 1 1 1 mag -0.1112
0.2500000108 0.5523694305 0.9476305020 m 1 1 1 mag 0.1112
The bandgap calculated by ABACUS HSE06-LCAO will be 2.184 eV after cell-relaxation
E_bandgap 0.1605277821 2.1840925238
E_bandgap 0.1605279461 2.1840947548
And the calculated magnetic moment in STRU is above (without onsite_radius 3 but can be as reference)
Before cell-relaxation, the E_bandgap will also be around 2.15 - 2.16 eV
By using alpha-Fe2O3 in paper [2], the ABACUS LCAO-HSE bandgap will be 2.109 eV
E_bandgap 0.1549853266 2.1086835485
E_bandgap 0.1549854333 2.1086850000
With magnetic moment of Fe being +- 4.14 and O being ~0
My INPUT:
#Parameters (1.General)
suffix ABACUS # suffix of OUTPUT DIR
#ntype 4 # number of element
nspin 2 # 1/2/4 4 for SOC
symmetry 1 # 0/1 1 for open, default
esolver_type ksdft # ksdft, ofdft, sdft, tddft, lj, dp
dft_functional hse # same as upf file, can be lda/pbe/scan/hf/pbe0/hse
ks_solver genelpa # default for ksdft-lcao
vdw_method none # d3_bj
pseudo_dir /data/home/liuzq/example/PP-2025
orbital_dir /data/home/liuzq/example/ORB-2025
# HSE parameters
exx_separate_loop 1
exx_cauchy_threshold 0 #default 1e-7, 0 to turn off
exx_cauchy_force_threshold 0
exx_cauchy_stress_threshold 0
#exx_ccp_rmesh_times 1 # default 1.5
#exx_dm_threshold 1e-3 # default 1e-4
#exx_real_number 1
exx_mixing_beta 1.0
#Parameters (2.Iteration)
calculation cell-relax # scf relax cell-relax md
ecutwfc 100
scf_thr 1e-7
scf_nmax 300
relax_nmax 400
relax_method bfgs_trad
force_thr_ev 0.03 # ev
stress_thr 0.1
#Parameters (3.Basis)
basis_type lcao # lcao or pw
kspacing 0.16 0.16 0.16 # replace KPT
# gamma_only 1 # 0/1, replace KPT
#Parameters (4.Smearing)
smearing_method cold
smearing_sigma 0.01
#Parameters (5.Mixing)
#mixing_type broyden # pulay/broyden
#mixing_beta 0.4 # for metal: 0.05-0.4
#mixing_gg0 1.0 # only for metal
#mixing_ndim 20
#Parameters (6.Calculation)
init_chg auto
cal_force 1
cal_stress 1
out_stru 1
out_chg 0
out_bandgap 1
out_mul 1
and:
- ks_solver in
genelpaorcusolverwill not affect bandgap result - exx_ccp_rmesh_times. exx_dm_threshold and exx_real_number can be default number, which will cause bandgap ~0.02 eV difference but with much larger SCF time comsumed
- exx_cauchy is 0 and not used in newer LibRI used in my calculation
Software:
- ABACUS: 3.10-LTS
- Toolchain: gcc or intel
- LibRI and LibComm: master branch
Have you read FAQ on the online manual http://abacus.deepmodeling.com/en/latest/community/faq.html
- Yes, I have read the FAQ part on online manual.
Task list for Issue attackers (only for developers)
- Understand the problem or question described by the user.
- Check if the issue is a known problem or has been addressed in the documentation.
- Test the issue or problem on a similar system or environment, if possible.
- Identify the root cause or provide clarification on the user's question.
- Provide a step-by-step guide, including any necessary resources, to resolve the issue or answer the question.
- If the issue is related to documentation, update the documentation to prevent future confusion (optional).
- If the issue is related to code, consider implementing a fix or improvement (optional).
- Review and incorporate any relevant feedback from users or developers.
- Ensure the user's issue is resolved or their question is answered and close the ticket.