NonSCFSetGenerator

class atomate2.cp2k.sets.core.NonSCFSetGenerator(user_input_settings=<factory>, user_kpoints_settings=<factory>, auto_kspacing=True, use_structure_charge=False, sort_structure=True, symprec=0.1, force_gamma=False, config_dict=<factory>, mode='line', reciprocal_density=100, line_density=20)[source]

Bases: Cp2kInputGenerator

Class to generate CP2K non-self-consistent field input sets.

Note cp2k doesn’t have a true non scf option. All you can do is set max_scf to 1, and use a pre-converged wavefunction. While this seems to be the same, it means that the kpoint grid used to generate the restart file needs to be present in the input set or the first scf step can slightly jump away from the minimum that was found.

Parameters:
  • mode (str) – Type of band structure mode. Options are “line”, “uniform”

  • reciprocal_density (float) – Density of k-mesh by reciprocal volume.

  • line_density (float) – Line density for line mode band structure.

  • user_input_settings (dict)

  • user_kpoints_settings (dict | Kpoints)

  • auto_kspacing (bool)

  • use_structure_charge (bool)

  • sort_structure (bool)

  • symprec (float)

  • force_gamma (bool)

  • config_dict (dict)

get_kpoints_updates(structure, prev_input=None)[source]

Get updates to the kpoints configuration for a non-self consistent VASP job.

Note, these updates will be ignored if the user has set user_kpoint_settings.

Parameters:
  • structure (Structure) – A structure.

  • prev_incar – An incar from a previous calculation.

  • bandgap – The band gap.

  • vasprun – A vasprun from a previous calculation.

  • outcar – An outcar from a previous calculation.

  • prev_input (Cp2kInput)

Returns:

A dictionary of updates to apply to the KPOINTS config.

Return type:

dict

get_input_updates(structure, prev_input=None, cp2k_output=None)[source]

Get input updates for a non scf calculation.

Parameters:
  • structure (Structure)

  • prev_input (Cp2kInput)

  • cp2k_output (Cp2kOutput)

Return type:

dict