HSEBSSetGenerator#

class atomate2.vasp.sets.core.HSEBSSetGenerator(user_incar_settings=<factory>, user_kpoints_settings=<factory>, user_potcar_settings=<factory>, user_potcar_functional=None, auto_ismear=True, auto_ispin=True, auto_lreal=False, auto_metal_kpoints=True, constrain_total_magmom=False, validate_magmom=True, use_structure_charge=False, sort_structure=True, force_gamma=True, symprec=0.1, vdw=None, config_dict=<factory>, mode='gap', dedos=0.02, reciprocal_density=64, line_density=20, zero_weighted_reciprocal_density=100, optics=False, nbands_factor=1.2, added_kpoints=<factory>)[source]#

Bases: VaspInputGenerator

Class to generate VASP HSE06 band structure input sets.

HSE06 band structures must be self-consistent. A band structure along symmetry lines for instance needs BOTH a uniform grid with appropriate weights AND a path along the lines with weight 0.

Thus, the “uniform” mode is just like regular static SCF but allows adding custom kpoints (e.g., corresponding to known VBM/CBM) to the uniform grid that have zero weight (e.g., for better gap estimate).

The “gap” mode behaves just like the “uniform” mode, however, if starting from a previous calculation, the VBM and CBM k-points will automatically be added to added_kpoints.

The “line” mode is just like Uniform mode, but additionally adds k-points along symmetry lines with zero weight.

The “uniform_dense” mode employs are regular weighted k-point mesh, in addition to a zero-weighted uniform mesh with higher density.

Note

By default the hybrid input sets use ALGO = Normal which is only efficient for VASP 6.0 and higher. See https://www.vasp.at/wiki/index.php/LFOCKACE for more details.

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

  • dedos (float) – Energy difference used to set NEDOS, based on the total energy range.

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

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

  • zero_weighted_reciprocal_density (float) – Density of uniform zero weighted k-point mesh.

  • optics (bool) – Whether to add LOPTICS (used for calculating optical response).

  • nbands_factor (float) – Multiplicative factor for NBANDS when starting from a previous calculation. Choose a higher number if you are doing an LOPTICS calculation.

  • added_kpoints (list[Vector3D]) – A list of kpoints in fractional coordinates to add as zero-weighted points.

  • **kwargs – Other keyword arguments that will be passed to VaspInputGenerator.

  • user_incar_settings (dict) –

  • user_kpoints_settings (dict | Kpoints) –

  • user_potcar_settings (dict) –

  • user_potcar_functional (str) –

  • auto_ismear (bool) –

  • auto_ispin (bool) –

  • auto_lreal (bool) –

  • auto_metal_kpoints (bool) –

  • constrain_total_magmom (bool) –

  • validate_magmom (bool) –

  • use_structure_charge (bool) –

  • sort_structure (bool) –

  • force_gamma (bool) –

  • symprec (float) –

  • vdw (str) –

  • config_dict (dict) –

get_kpoints_updates(structure, prev_incar=None, bandgap=0.0, vasprun=None, outcar=None)[source]#

Get updates to the kpoints configuration for a VASP HSE06 band structure job.

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

Parameters:
  • structure (Structure) – A structure.

  • prev_incar (dict) – An incar from a previous calculation.

  • bandgap (float) – The band gap.

  • vasprun (Vasprun) – A vasprun from a previous calculation.

  • outcar (Outcar) – An outcar from a previous calculation.

Returns:

A dictionary of updates to apply to the KPOINTS config.

Return type:

dict

get_incar_updates(structure, prev_incar=None, bandgap=None, vasprun=None, outcar=None)[source]#

Get updates to the INCAR for a VASP HSE06 band structure job.

Parameters:
  • structure (Structure) – A structure.

  • prev_incar (dict) – An incar from a previous calculation.

  • bandgap (float) – The band gap.

  • vasprun (Vasprun) – A vasprun from a previous calculation.

  • outcar (Outcar) – An outcar from a previous calculation.

Returns:

A dictionary of updates to apply.

Return type:

dict