casm.vaspwrapper.Converge
- class casm.vaspwrapper.Converge(configdir=None, auto=True, sort=True, propdir=None, prop=None)[source]
The Converge class contains functions for setting up, executing, and parsing a VASP convergence test.
The convergence creates the following directory structure: config/
- calctype.name/
- property/
value.0/ value.1/ … value.n/
- ‘value.i’ directories are created for each discrete step in ‘value’
being explored for ‘property’, e.g., every 10 eV for ENCUT, or every 1 for KPOINTS.
If runs are static runs, ‘value.i’ contains INCAR, POSCAR, etc. If runs are relaxation runs, ‘value.i’ contains ‘run.0’, ‘run.1’, …,
‘run.final’, where ‘run.final’ contains a static run.
- This automatically looks for VASP settings files using:
casm.project.DirectoryStructure.settings_path_crawl
- casm_settings
CASM project settings
- Type:
casm.project.ProjectSettings instance
- casm_directories
CASM project directory hierarchy
- Type:
casm.project.DirectoryStructure instance
- settings
Settings for job submission and the relaxation, see vaspwrapper.read_settings
- Type:
dict
- configdir
- Directory where configuration results are stored. The result of:
casm.project.DirectoryStructure.configuration_dir(self.configname)
- Type:
str
- configname
The name of the configuration to be calculated
- Type:
str
- auto
True if using prisms_jobs module’s JobDB to manage jobs
- Type:
boolean
- sort
True if sorting atoms in POSCAR by type
- Type:
boolean
- clex
The cluster expansion being worked on. Used for the ‘calctype’ settings. Currently, fixed to self.casm_settings.default_clex.
- Type:
casm.project.ClexDescription instance
Construct a VASP convergence job object.
- Parameters:
configdir (str, optional, default=None) – Path to configuration directory. If None, uses the current working directory
auto (boolean, optional, default=True,) – Use True to use the prisms_jobs module’s JobDB to manage jobs
sort (boolean, optional, default=True,) – Use True to sort atoms in POSCAR by type
propdir (str, optional, default=None) –
- Name of the directory within the configdir for converging the
current property-of-interest
prop (str, optional, default=None) – Name of an INCAR property that is being converged
- __init__(configdir=None, auto=True, sort=True, propdir=None, prop=None)[source]
Construct a VASP convergence job object.
- Parameters:
configdir (str, optional, default=None) – Path to configuration directory. If None, uses the current working directory
auto (boolean, optional, default=True,) – Use True to use the prisms_jobs module’s JobDB to manage jobs
sort (boolean, optional, default=True,) – Use True to sort atoms in POSCAR by type
propdir (str, optional, default=None) –
- Name of the directory within the configdir for converging the
current property-of-interest
prop (str, optional, default=None) – Name of an INCAR property that is being converged
Methods
__init__
([configdir, auto, sort, propdir, prop])Construct a VASP convergence job object.
collect
()Collect the results of a convergence run
finalize
()Checks if a series of runs is converged, and writes properties.calc.json as appropriate
frange
(x, y[, jump])Robust Range for floats, without using numpy.
is_converged
()Check for electronic convergence in completed calculations.
lengths
(lat)Computes the lengths of the 3 basis vectors in a lattice
properties
(vaspdir[, initial_structurefile, ...])Report results to properties.calc.json file in configuration directory, after checking for electronic convergence.
report_status
(status[, failure_type])Report calculation status to status.json file in configuration directory.
run
()Setup input files, run a vasp convergence, and report results
run_settings
()Set default values based on runtime environment
setup
()Setup initial convergence run
submit
()Submit jobs for this VASP convergence
volume
(lat)Computes the volume of a parallelpiped given a 3-list of 3-lists (i.e., 3 3-vectors)
Attributes
Produces a configname from the configdir