dft_managers.vasp_manager

Contains the handling of the VASP process. It can start VASP, reactivate it, check if the lock file is there and finally kill VASP. Needed for CSC calculations.

This functionality is contained in the simpler public functions.

dft_managers.vasp_manager.kill(vasp_process_id)[source]

Kills the VASP process.

dft_managers.vasp_manager.read_dft_energy()[source]

Reads DFT energy from the last line of Vasp’s OSZICAR.

dft_managers.vasp_manager.read_irred_kpoints(kpts)[source]

Reads the indices of the irreducible k-points from the OUTCAR.

dft_managers.vasp_manager.remove_legacy_projections_suppressed()[source]

Removes legacy file vasp.suppress_projs if present.

dft_managers.vasp_manager.run_charge_update()[source]

Performs one step of the charge update with VASP by creating the vasp.lock file and then waiting until it gets delete by VASP when it has finished.

dft_managers.vasp_manager.run_initial_scf(number_cores, vasp_command, cluster_name)[source]

Starts the VASP child process. Takes care of initializing a clean environment for the child process. This is needed so that VASP does not get confused with all the standard slurm environment variables. Returns when VASP has completed its initial scf cycle.

Parameters:
number_cores: int, the number of cores that vasp runs on
vasp_command: string, the command to start vasp
cluster_name: string, name of the cluster so that settings can be tailored to it