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
169 stars 129 forks source link

Request: Virtual Crystal Approximation for disorder soild simulation #4763

Open QuantumMisaka opened 2 months ago

QuantumMisaka commented 2 months ago

Background

The application of first-principles electronic band structure methods to the study of disordered alloys and solid solutions requires some approximation for the treatment of the alloy disorder. e.g. Fe(0.98)O, Zn(0.98)CrO2. A 'direct' approach is to make use of the supercell approximation.

However, a much simpler an computationally less expensive approach is to employ the virtual crystal approximation (VCA), in which one studies a crystal with the primitive periodicity, but composed of fictitiou 'virtual' atoms that interpolate between the behavior of the atoms in the parent compounds.

Popular DFT software such as CASTEP, VASP, PWMat, etc, have support for VCA calculation, I do think that ABACUS should have VCA function for disorder materials simulation.

in our research, the carbon in iron carbide system have fractional occupancy, especially in epsilon-Fe3C (Fe3C-P6322) and epsilon-Fe2C, so we'll need VCA or likely method to do DFT computation for these fractional-occupied system.

Reference :

  1. https://www.vasp.at/wiki/index.php/VCA
  2. https://www.tcm.phy.cam.ac.uk/castep/documentation/WebHelp/content/modules/castep/thcastepdisorder.htm
  3. https://journals.aps.org/prb/abstract/10.1103/PhysRevB.62.R743

Describe the solution you'd like

ABACUS should have VCA or other calculation method for disorder soild containing fractional occupancy.

Task list only for developers

Notice Possible Changes of Behavior (Reminder only for developers)

No response

Notice any changes of core modules (Reminder only for developers)

No response

Notice Possible Changes of Core Modules (Reminder only for developers)

No response

Additional Context

Since the UnitCell module is in refactoring, can we left a space for VCA in our coding structure ?

Task list for Issue attackers (only for developers)

mohanchen commented 2 months ago

Thanks for the suggestions! We will implement this feature in the near future.

QuantumMisaka commented 3 weeks ago

https://github.com/abacusmodeling/abacus-develop/issues/318 raise the same issue with some recommedations