Note
Go to the end to download the full example code.
Plotting fermi3d spin-polarized#
Symmetry does not currently work! Make sure for fermi surface calculations turn off symmetry
Plotting fermi3d spin-polarized example.
First download the example files with the code below. Then replace data_dir below.
data_dir = pyprocar.download_example(save_dir='',
material='Fe',
code='vasp',
spin_calc_type='spin-polarized-colinear',
calc_type='fermi')
# sphinx_gallery_thumbnail_number = 2
import pyvista
# You do not need this. This is to ensure an image is rendered off screen when generating exmaple gallery.
pyvista.OFF_SCREEN = True
importing pyprocar and specifying local data_dir
import os
import pyprocar
data_dir = f"{pyprocar.utils.ROOT}{os.sep}data{os.sep}examples{os.sep}Fe{os.sep}vasp{os.sep}spin-polarized-colinear{os.sep}fermi"
# First create the FermiHandler object, this loads the data into memory. Then you can call class methods to plot
# Symmetry only works for specfic space groups currently.
# For the actual calculations turn off symmetry and set 'apply_symmetry'=False
fermiHandler = pyprocar.FermiHandler(
code="vasp",
dirname=data_dir,
apply_symmetry=True)
WARNING : Fermi Energy not set! Set `fermi={value}`. By default, using fermi energy found in given directory.
---------------------------------------------------------------------------------------------------------------
Plain mode#
# spins in spins polarized calculations specifies which energy bands to plot
spins =[0,1]
fermiHandler.plot_fermi_surface(mode="plain",
spins = spins,
spin_colors= ['red','blue'],
surface_cmap="jet",
show=True,)
--------------------------------------------------------
There are additional plot options that are defined in a configuration file.
You can change these configurations by passing the keyword argument to the function
To print a list of plot options set print_plot_opts=True
Here is a list modes : plain , parametric , spin_texture , overlay
Here is a list of properties: fermi_speed , fermi_velocity , harmonic_effective_mass
--------------------------------------------------------
ij,uvwabj->uvwabi
Parametric mode#
# Here you can look at the atomic projections on a given spin energy bands
atoms=[0]
orbitals=[4,5,6,7,8]
spins=[1]
fermiHandler.plot_fermi_surface(mode="parametric",
atoms=atoms,
orbitals=orbitals,
spins=spins,
show=True,)
# Here you can look at the atomic projections on a given spin energy bands
spins=[0]
fermiHandler.plot_fermi_surface(mode="parametric",
atoms=atoms,
orbitals=orbitals,
spins=spins,
show=True,)
--------------------------------------------------------
There are additional plot options that are defined in a configuration file.
You can change these configurations by passing the keyword argument to the function
To print a list of plot options set print_plot_opts=True
Here is a list modes : plain , parametric , spin_texture , overlay
Here is a list of properties: fermi_speed , fermi_velocity , harmonic_effective_mass
--------------------------------------------------------
--------------------------------------------------------
There are additional plot options that are defined in a configuration file.
You can change these configurations by passing the keyword argument to the function
To print a list of plot options set print_plot_opts=True
Here is a list modes : plain , parametric , spin_texture , overlay
Here is a list of properties: fermi_speed , fermi_velocity , harmonic_effective_mass
--------------------------------------------------------
Total running time of the script: (0 minutes 5.801 seconds)