casm.vasp.Converge
- class casm.vasp.Converge(propdir=None, settings=None, prop=None)[source]
The Converge class contains functions for setting up, executing, and parsing a VASP convergence.
The convergence is initialized in a directory containing VASP input files, named after the value of the property it is probing (e.g., …/ENCUT/10). It then creates the following directory structure: …/prop/propdir/
run.0/ run.1/ … run.final/
‘run.i’ directories are only created when ready. ‘run.final’ is a final constant volume run {“ISIF”:2, “ISMEAR”:-5, “NSW”:0, “IBRION”:-1, OR INCAR.final if provided}.
- Contains:
self.propdir (…/prop/prop_value) self.rundir (list of …/prop/prop_value/run.i) self.finaldir (…/prop/prop_value/run.final)
Construct a VASP convergence job object.
- Args:
configdir: path to vasp convergence directory settings: dictionary-like object containing settings, or if None, it reads
the json file: …/configdir/converge.json
- possible settings keys are:
- used by casm.vasp.run() function:
“ncpus”: number of ncpus to run mpi on “npar” or “ncore”: number of ways to parallelize “kpar”: number of ways to parallelize k-points “vasp_cmd”: (default, see casm.vasp.run) shell command to execute vasp, or None to use default mpirun “strict_kpoint”: force strict copying of KPOINTS file, otherwise kpoints are scaled based on supercell size
- used by not_converging():
“run_limit”: (default 10) maximum number of runs to allow before setting status to “not_converging”
- __init__(propdir=None, settings=None, prop=None)[source]
Construct a VASP convergence job object.
- Args:
configdir: path to vasp convergence directory settings: dictionary-like object containing settings, or if None, it reads
the json file: …/configdir/converge.json
- possible settings keys are:
- used by casm.vasp.run() function:
“ncpus”: number of ncpus to run mpi on “npar” or “ncore”: number of ways to parallelize “kpar”: number of ways to parallelize k-points “vasp_cmd”: (default, see casm.vasp.run) shell command to execute vasp, or None to use default mpirun “strict_kpoint”: force strict copying of KPOINTS file, otherwise kpoints are scaled based on supercell size
- used by not_converging():
“run_limit”: (default 10) maximum number of runs to allow before setting status to “not_converging”
Methods
__init__
([propdir, settings, prop])Construct a VASP convergence job object.
add_errdir
()Move run.i to run.i_err.j directory
add_rundir
()Make a new run.i directory
complete
()Check if the VASP convergence is complete.
converged
()Check if configuration is relaxed.
not_converging
()Check if configuration is not converging.
run
()Perform a series of vasp jobs to relax a structure.
setup
(initdir)mv all files and directories (besides initdir) into initdir
status
()Determine the status of a vasp convergence series of runs.
update_errdir
()Find all .../config/calctype/prop/prop_value/run.i_err.j directories, store paths in self.errdir list
update_rundir
()Find all .../config/calctype/prop/prop_value/run.i directories, store paths in self.rundir list