pyiron.dft.job.generic module

class pyiron.dft.job.generic.GenericDFTJob(project, job_name)[source]

Bases: pyiron.atomistics.job.atomistic.AtomisticGenericJob

calc_md(temperature=None, n_ionic_steps=1000, n_print=1, time_step=1.0, retain_charge_density=False, retain_electrostatic_potential=False, **kwargs)[source]
calc_minimize(electronic_steps=400, ionic_steps=100, max_iter=None, pressure=None, algorithm=None, retain_charge_density=False, retain_electrostatic_potential=False, ionic_energy=None, ionic_forces=None, volume_only=False)[source]
Parameters
  • e_tol

  • f_tol

  • max_iter

  • pressure

  • n_print

Returns:

calc_static(electronic_steps=400, algorithm=None, retain_charge_density=False, retain_electrostatic_potential=False)[source]

Returns:

property encut
property exchange_correlation_functional
property fix_spin_constraint
property fix_symmetry
get_encut()[source]
get_k_mesh_by_cell(kpoints_per_reciprocal_angstrom, cell=None)[source]

get k-mesh density according to the box size.

Parameters
  • kpoints_per_reciprocal_angstrom – (float) number of k-points per reciprocal angstrom (i.e. per 2*pi*box_length)

  • cell – (list/ndarray) 3x3 cell. If not set, the current cell is used.

get_magnetic_moments(iteration_step=- 1)[source]

Gives the magnetic moments of a calculation for each iteration step.

Parameters

iteration_step (int) – Step for which the structure is requested

Returns

array of final magmetic moments or None if no magnetic moment is given

Return type

numpy.ndarray/None

get_structure(iteration_step=- 1, wrap_atoms=True)[source]

Gets the structure from a given iteration step of the simulation (MD/ionic relaxation). For static calculations there is only one ionic iteration step :param iteration_step: Step for which the structure is requested :type iteration_step: int :param wrap_atoms: True if the atoms are to be wrapped back into the unit cell :type wrap_atoms: bool

Returns

The required structure

Return type

pyiron.atomistics.structure.atoms.Atoms

property plane_wave_cutoff
restart_for_band_structure_calculations(job_name=None)[source]

Restart a new job created from an existing calculation by reading the charge density for band structure calculations.

Parameters

job_name (str/None) – Job name

Returns

New job

Return type

new_ham (pyiron.dft.job.generic.GenericDFTJob)

set_empty_states(n_empty_states=None)[source]
set_encut(encut)[source]

Sets the plane-wave energy cutoff :param encut: The energy cutoff in eV :type encut: float

set_exchange_correlation_functional(exchange_correlation_functional)[source]
set_kpoints(mesh=None, scheme='MP', center_shift=None, symmetry_reduction=True, manual_kpoints=None, weights=None, reciprocal=True, kpoints_per_reciprocal_angstrom=None, n_path=None, path_name=None)[source]

Function to setup the k-points

Parameters
  • mesh (list) – Size of the mesh (ignored if scheme is not set to ‘MP’ or kpoints_per_reciprocal_angstrom is set)

  • scheme (str) – Type of k-point generation scheme (MP/GP(gamma point)/Manual/Line)

  • center_shift (list) – Shifts the center of the mesh from the gamma point by the given vector in relative coordinates

  • symmetry_reduction (boolean) – Tells if the symmetry reduction is to be applied to the k-points

  • manual_kpoints (list/numpy.ndarray) – Manual list of k-points

  • weights (list/numpy.ndarray) – Manually supplied weights to each k-point in case of the manual mode

  • reciprocal (bool) – Tells if the supplied values are in reciprocal (direct) or cartesian coordinates (in

  • space) (reciprocal) –

  • kpoints_per_reciprocal_angstrom (float) – Number of kpoint per angstrom in each direction

  • n_path (int) – Number of points per trace part for line mode

  • path_name (str) – Name of high symmetry path used for band structure calculations.

set_mixing_parameters(method=None, n_pulay_steps=None, density_mixing_parameter=None, spin_mixing_parameter=None)[source]
property spin_constraints
property xc