pyprocar.core.FermiSurface3D — PyProcar 6.2.1 documentation

Skip to main content
`Ctrl`+`K`

# pyprocar.core.FermiSurface3D

class pyprocar.core.FermiSurface3D(*args, **kwargs)

  The object is used to store and manapulate a 3d fermi surface.

  Parameters:

    - ebs (ElectronicBandStructure) – The ElectronicBandStructure object

    - fermi (float) – The energy to search for the fermi surface

    - fermi_shift (float) – Value to shift fermi energy.

    - fermi_tolerance (float = 0.1) – This is used to improve search effiency by doing a prior search selecting band within a tolerance of the fermi energy

    - interpolation_factor (int) – The default is 1. number of kpoints in every direction will increase by this factor.

    - projection_accuracy (str, optional) – Controls the accuracy of the projects. 2 types (‘high’, normal) The default is `projection_accuracy=normal`.

    - supercell (list int) – This is used to add padding to the array to assist in the calculation of the isosurface.

  Methods

  `FermiSurface3D.__init__`(ebs[, fermi, ...]) | Initialize the polydata.
  `FermiSurface3D.extend_surface`([...]) | Method to extend the surface in the direction of a reciprocal lattice vecctor
  `FermiSurface3D.project_atomic_projections`(spd) | Method to calculate the atomic projections of the surface.
  `FermiSurface3D.project_fermi_speed`(fermi_speed) | Method to calculate the fermi speed of the surface.
  `FermiSurface3D.project_fermi_velocity`(...) | Method to calculate atomic spin texture projections of the surface.
  `FermiSurface3D.project_harmonic_effective_mass`(...) | Method to calculate the atomic projections of the surface.
  `FermiSurface3D.project_spin_texture_atomic_projections`(...) | Method to calculate atomic spin texture projections of the surface.

  Attributes