vasp
A wrapper around ASE's Vasp calculator that makes it better suited for high-throughput DFT.
Vasp ¶
Vasp(
input_atoms: Atoms,
preset: None | str = None,
use_custodian: bool = _DEFAULT_SETTING,
incar_copilot: Literal[
"off", "on", "aggressive"
] = _DEFAULT_SETTING,
copy_magmoms: bool = _DEFAULT_SETTING,
preset_mag_default: float = _DEFAULT_SETTING,
mag_cutoff: float = _DEFAULT_SETTING,
elemental_magmoms: dict[str, float] | None = None,
pmg_kpts: (
dict[
Literal["line_density", "kppvol", "kppa"], float
]
| dict[Literal["length_densities"], list[float]]
| None
) = None,
auto_dipole: bool | None = None,
**kwargs
)
Bases: Vasp
This is a wrapper around the ASE Vasp calculator that adjusts INCAR parameters on-the-fly, allows for ASE to run VASP via Custodian, and supports several automatic k-point generation schemes from Pymatgen.
Parameters:
-
input_atoms
(Atoms
) –The input Atoms object to be used for the calculation.
-
preset
(None | str
, default:None
) –The name of a YAML file containing a list of INCAR parameters to use as a "preset" for the calculator. quacc will automatically look in the
VASP_PRESET_DIR
(default: quacc/calculators/vasp/presets) for the file, such that preset="BulkSet" is supported, for instance. The .yaml extension is not necessary. Any user-supplied calculator **kwargs will override any corresponding preset values. -
use_custodian
(bool
, default:_DEFAULT_SETTING
) –Whether to use Custodian to run VASP. Default is True in settings.
-
incar_copilot
(Literal['off', 'on', 'aggressive']
, default:_DEFAULT_SETTING
) –Controls VASP co-pilot mode for automated INCAR parameter handling. Options include: off: Do not use co-pilot mode. INCAR parameters will be unmodified. on: Use co-pilot mode. This will only modify INCAR flags not already set by the user. aggressive: Use co-pilot mode in aggressive mode. This will modify INCAR flags even if they are already set by the user.
-
copy_magmoms
(bool
, default:_DEFAULT_SETTING
) –If True, any pre-existing
atoms.get_magnetic_moments()
will be set inatoms.set_initial_magnetic_moments()
. Set this to False if you want to use a preset's magnetic moments every time. Default is True in settings. -
preset_mag_default
(float
, default:_DEFAULT_SETTING
) –Default magmom value for sites without one explicitly specified in the preset. Only used if a preset is specified with an elemental_mags_dict key-value pair. Default is 1.0 in settings.
-
mag_cutoff
(float
, default:_DEFAULT_SETTING
) –Set all initial magmoms to 0 if all have a magnitude below this value. Default is 0.05 in settings.
-
elemental_magmoms
(dict[str, float] | None
, default:None
) –A dictionary of elemental initial magnetic moments to pass to quacc.schemas.prep.set_magmoms, e.g.
{"Fe": 5, "Ni": 4}
. -
pmg_kpts
(dict[Literal['line_density', 'kppvol', 'kppa'], float] | dict[Literal['length_densities'], list[float]] | None
, default:None
) –An automatic k-point generation scheme from Pymatgen. See quacc.utils.kpts.convert_pmg_kpts for details.
-
auto_dipole
(bool | None
, default:None
) –If True, will automatically set dipole moment correction parameters based on the center of mass (in the c dimension by default).
-
**kwargs
–Additional arguments to be passed to the VASP calculator, e.g.
xc='PBE'
,encut=520
. Takes all valid ASE calculator arguments.
Returns:
-
None
–
Source code in quacc/calculators/vasp/vasp.py
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 |
|