This page is not well-formatted yet
ABACUS Pseudopot-Nao Square
Example input.json
{
// some global settings placed here
"global": {
"test_mode": "pseudopotential", // "pseudopotential" or "numerical_orbital"
"software": "ABACUS", // "ABACUS" or "qespresso"
"work_dir": "./", // the working directory
"pseudo_dir": "./module_pseudo/download", // always fixed, pseudopotential now is
// designed to distribute along with the code
"orbital_dir": "./module_nao/download", // will be the directory to store numerical orbital files
"save_log": true // will dump json
},
"calculation": {
"basis_type": "pw", // "pw" or "lcao". "pw" is supported by both ABACUS and qespresso,
// "lcao" is only supported by ABACUS
"functionals": ["PBE"], // enumerate! xc functional
"ecutwfc": [100], // enumerate! ecutwfc that will impose for all systems
... // other keywords
},
"systems": ["Er2O3"], // enumerate! system name, will be used to find CIF via Materials Project API.
// or specify not symmetrized CIF file path in structures list
"extensive": {
"characteristic_lengths": [] // for isolated system such as dimer,..., is bond length. For crystal, it is scale factor of cell
"nkpoints_in_line": 10, // number of kpoints in each segment of kpath. Default is 0, for isolated system, autoset to -1.
// 0 is interpreted as MP sampling, a positive number will generate a kpath instead of mesh
},
"materials_project": {
"api_key": "xxx", // your Materials Project API
"n_structures": 1, // number of structures want to download, for each system or specify a list for systems
"theoretical": false, // always keep false to get only experimentally observed structures
"most_stable": true // get the most stable structure
},
// psedupotential section supports two ways input, the first is list, the second is dict.
// For a list, the specified kinds, versions and appendices will be used for all elements in
// all systems. For a dict, must specify kinds, versions and appendices for each element.
"pseudopotentials": {
"kinds": ["sg15", "pd"], // supports "sg15", "pd" or "dojo" presently, also "all" for all available norm-conserving pseudopotentials stored locally
"versions": ["10", "04"], // support version selection of pseudopotentials, also "all" for all available versions
"appendices": [""] // support appendix selection of pseudopotentials, also "all" for all available appendices
},
// similarly for numerical orbitals, BUT NOT IMPLEMENTED YET
"numerical_orbitals": {
"types": ["DZP"],
"rcuts": [7, 8, 9, 10],
"appendices": [""]
}
}
Full input keywords list
This document provides a full list of keywords for ABACUS Pseudopot-Nao Square. The keywords are divided into several sections, each section is for a specific purpose. The keywords are listed in alphabetical order within each section. global
section
test_mode
- Description: mode to test, can be
pseudopotential
ornumerical_orbital
. Forpseudopotential
mode, ifsoftware
specified asABACUS
, thenbasis_type pw
will be automatically set, ifsoftware
specified asqespresso
, nothing would happen.pseudopotential
test mode will only test the pseudopotential, andnumerical_orbital
mode need user specify information of pseudopotential and numerical orbitals both. - Type: string
- Default:
pseudopotential
software
- Description: software to test, can be
ABACUS
orqespresso
. Ifsoftware
specified asABACUS
, thenbasis_type pw
will be automatically set, ifsoftware
specified asqespresso
, nothing would happen. - Type: string
- Default:
ABACUS
work_dir
- Description: working directory, all the files will be generated in this directory.
- Type: string
- Default:
./
pseudo_dir
- Description: directory to store pseudopotential files.
- Type: string
- Default:
./module_pseudo/resources/
orbital_dir
- Description: directory to store numerical orbital files.
- Type: string
- Default:
./module_nao/resources/
save_log
- Description: whether to save log (json)
- Type: bool
- Default:
True
calculation
section
This section actually supports any number of keywords that specified list values, which indicate values in list are needed to enumerate and cross-test. Therefore to add additional keywords, specify value as usual. To let program do crosstest on this keyword with all possible values, give this keyword a list of possible values. Keyword should have identical name with that in input script. There are discrepancies between ABACUS and qespresso, so use with care.
basis_type
- Description: basis type, can be
pw
orlcao
.software ABACUS
supports bothpw
andlcao
,software qespresso
only supportspw
. - Type: string
- Default:
pw
functionals
- Description: DFT functionals to test, specified as list.
- Type: list
- Default:
['PBE']
ecutwfc
- Description: kinetic energy cutoffs for wavefunctions, in Rydberg, specified as list, but instead this keyword can be set via ABACUSTEST application, see https://labs.dp.tech/projects/abacustest/
- Type: list
- Default:
[100]
systems
section
This section should be organized in the following way:
{
"systems": ["Yb2O3", "Er", "TiO2"]
}
Elements will be recognized from this section, then `pseudopotentials` and `numerical_orbitals` section will search available files for these elements. For analysis task, this section will have more options, e.g.:
{
"systems": {
"Yb2O3": {
"band_gap": 5.0,
"lattice_constant": 10.0,
},
"Er": {
"band_gap": 5.0,
"lattice_constant": 10.0,
},
}
}
extensive
section
characteristic_lengths
- Description: characteristic length, for cell, it is deformation ratio of lattice, for isolated system, it is the bond length
- Type: list
- Default:
[0.00]
nkpoints_in_line
- Description: number of kpoints in each segment of kpath. Default is 0, for isolated system, autoset to -1. 0 is interpreted as MP sampling, a positive number will generate a kpath instead of mesh
- Type: int
- Default:
0
materials_project
section
api_key
- Description: Materials Project Application Program Interface (API) Key. Get your API key following tutorial in https://docs.materialsproject.org/downloading-data/using-the-api
- Type: string
n_structures
- Description: For each system specified, how many structures are needed. If a list is given, then the length of the list should be the same as the length of
systems
section. If an integar is given, then will use the same number for all systems. - Type: int or list
- Default:
1
theoretical
- Description: Whether to get theoretical structures. If
True
, then will get theoretical structures, ifFalse
, then will only get experimental structures. - Type: boolean
- Default:
False
most_stable
- Description: If only get structures which are marked as
is_stable
in Materials Project. IfTrue
, then will only get the most stable structure, ifFalse
, then will get all structures. Theis_stable
here sometimes means the most stable, some sub-stable structures will be filtered out, like TiO2 anatase. - Type: boolean
- Default:
False
pseudopotentials
section
kinds
- Description: kinds of pseudopotentials to test (
sg15
,pd
,rrkjus
or something other), specified as list. If contents are not organized element-by-element, then will use the same pseudopotential for all elements.all
can also be given, then all kinds of pseudopotentials will be included in test suite, use with caution. - Type: list or dict
- Default:
[""]
versions
- Description: versions of pseudopotentials to test, specified as list. If contents are not organized element-by-element, then will use the same version for all elements.
all
can also be given, then all versions of pseudopotentials will be included in test suite, use with caution. - Type: list or dict
- Default:
[""]
appendices
- Description: appendices of pseudopotentials to test, specified as list. If contents are not organized element-by-element, then will use the same appendix for all elements.
all
can also be given, then all appendices of pseudopotentials will be included in test suite, use with caution. - Type: list or dict
- Default:
[""]
numerical_orbitals
section
types
- Description: types of numerical orbitals to test (
DZP
orTZDP
, conventionally), specified as list. If contents are not organized element-by-element, then will use the same type for all elements. - Type: list or dict
- Default:
[""]
rcuts
- Description: cutoff radii of numerical orbitals to test, specified as list. If contents are not organized element-by-element, then will use the same cutoff radius for all elements.
- Type: list or dict
- Default:
[""]
appendices
- Description: appendices of numerical orbitals to test, specified as list. If contents are not organized element-by-element, then will use the same appendix for all elements.
- Type: list or dict
- Default:
[""]