jarvis.io.vasp package¶
Submodules¶
jarvis.io.vasp.inputs module¶
Modules handling input files for VASP calculations.
-
class
jarvis.io.vasp.inputs.Incar(tags={})[source]¶ Bases:
objectMake VASP INCAR files as python dictionary of keys and values.
-
class
jarvis.io.vasp.inputs.IndividualPotcarData(data={})[source]¶ Bases:
objectClass for individual POTCAR file handling.
-
class
jarvis.io.vasp.inputs.Kpoints(filename='')[source]¶ Bases:
objectMake VASP KPOINTS as object.
-
class
jarvis.io.vasp.inputs.Poscar(atoms, comment='System')[source]¶ Bases:
objectClass defining Poscar object.
Constructued from the Atoms object.
- Args:
atoms : Atoms object
comment : Header of Poscar file
-
class
jarvis.io.vasp.inputs.Potcar(elements=[], pot_type='POT_GGA_PAW_PBE', pot_json_path='', potcar_strings=[])[source]¶ Bases:
objectConstruct muti-atoms Postcar.
jarvis.io.vasp.outputs module¶
Modulet for analzing VASP outputs.
-
class
jarvis.io.vasp.outputs.Chgcar(filename='', atoms=None, chg=[], chgdif=None, aug=None, augdiff=None, dim=None, nsets=1)[source]¶ Bases:
objectClass handling VASP CHGCAR file data.
-
class
jarvis.io.vasp.outputs.Locpot(filename='', atoms=None, chg=[], chgdif=None, aug=None, augdiff=None, dim=None, nsets=1)[source]¶ Bases:
jarvis.io.vasp.outputs.ChgcarRead LOCPOT files.
-
class
jarvis.io.vasp.outputs.Oszicar(filename, data={})[source]¶ Bases:
objectConstruct Oszicar object.
-
electronic_steps¶ Get all electronic steps realted data.
-
ionic_steps¶ Get all ionic steps realted data.
-
magnetic_moment¶ Get magnetic moment.
-
-
class
jarvis.io.vasp.outputs.Outcar(filename, data={})[source]¶ Bases:
objectConstruct OUTCAR object.
-
converged¶ Check if calculation is converged.
-
efg_raw_tensor¶ Get raw electric field gradient tensor.
-
elastic_props(atoms=None, vacuum=False)[source]¶ Obtain elastic tensor and calculate related properties.
For 3D and 2D cases.
- Args:
outcar: OUTCAR file path
vacuum: whether the structure has vaccum such as 2D materials for vacuum structures bulk and shear mod. Needs extra attention and elastic tensor are in Nm^-1 rather than GPa
- Returns:
- info: data for elastic tensor (in string and object representation), bulk, shear modulus, and phonon modes
-
nbands¶ Get number of bands.
-
nelect¶ Get number of electrons.
-
nions¶ Get number of ions.
-
phonon_eigenvalues¶ Get phonon eigenvalues.
-
piezoelectric_tensor¶ Get piezoelectric tensor.
-
quad_mom¶ Get quadrupole momemnt.
-
-
class
jarvis.io.vasp.outputs.Vasprun(filename='vasprun.xml', data={})[source]¶ Bases:
objectConstruct vasprun.xml handling object.
-
all_energies¶ Get all total energies.
-
all_forces¶ Get all forces.
-
all_input_parameters¶ Get all explicit input parameters. Need to add a few more.
-
all_stresses¶ Get all stresses.
-
all_structures¶ Get all structures.
-
avg_absorption_coefficient¶ Get average absoprtion coefficient. Used in solar-cell module.
-
dfpt_data¶ Get DFPT IBRION=8 LEPSILON lated data.
-
dielectric_loptics¶ Get real and imag. dielectric function data.
-
efermi¶ Get Fermi-energy.
-
eigenvalues¶ Get all eigenvalues.
-
elements¶ Get atom elements.
-
fermi_velocities¶ Get fermi velocities in m/s.
-
final_energy¶ Get final energy.
-
get_bandstructure(E_low=-4, E_high=4, spin=0, zero_efermi=True, kpoints_file_path='KPOINTS', plot=False)[source]¶ Get electronic bandstructure plot.
-
get_dir_gap¶ Get direct bandgap.
-
get_indir_gap¶ Get indirect bandgap.
-
is_spin_orbit¶ Check if the calculation is spin orbit.
-
is_spin_polarized¶ Check if the calculation is spin polarized.
-
kpoints¶ Get Kpoints.
-
nbands¶ Get number of electronic bands.
-
nkpoints¶ Get number of kpoints.
-
nspins¶ Get total numnber of spins.
-
num_atoms¶ Get number of simulation atoms.
-
num_types¶ Get number of atom types.
-
partial_dos_spdf¶ Get partial density of states.
-
projected_atoms_spins_kpoints_bands¶ Use for atom,spin,kpoint and band projected bandstructures.
-
projected_spins_kpoints_bands¶ Use for spin, kpoint and band projected bandstructure plots.
-
total_dos¶ Get total density of states.
-
-
class
jarvis.io.vasp.outputs.Wavecar(filename='WAVECAR', lsorbit=False, lgamma=False, recl=None, nspin=None, rtag=None, nkpts=None, nbands=None, encut=None, lattice_mat=None, nplws=None, wfc=None, efermi=None, kvecs=None, energies=None, occs=None, gvec=None)[source]¶ Bases:
objectClass for VASP Pseudowavefunction stored in WAVECAR.
- The format of VASP WAVECAR, as shown in
- http://www.andrew.cmu.edu/user/feenstra/wavetrans/
- is:
Record-length #spin components RTAG(a value specifying the precision) #k-points #bands ENCUT(maximum energy for plane waves) LatVec-A LatVec-B LatVec-C Loop over spin
- Loop over k-points
#plane waves, k vector Loop over bands
band energy, band occupationEnd loop over bands Loop over bands
- Loop over plane waves
- Plane-wave coefficient
End loop over plane waves
End loop over bands
End loop over k-points
End loop over spin
-
gvectors(ikpt=1)[source]¶ Generate the G-vectors.
- satisfies the following relation
- (G + k)**2 / 2 < ENCUT
-
readBandCoeff(ispin=1, ikpt=1, iband=1, norm=False)[source]¶ Read the planewave coefficients of specified KS states.
-
readWFBand(ispin=1, ikpt=1, iband=1)[source]¶ Extract KS energies and Fermi occupations from WAVECAR.
-
readWFHeader()[source]¶ Read the system information from WAVECAR.
It is written in the first two record.
rec1: recl, nspin, rtag rec2: nkpts, nbands, encut, ((cell(i,j) i=1, 3), j=1, 3)
-
class
jarvis.io.vasp.outputs.Waveder(filename, gamma_only=False)[source]¶ Bases:
objectClass for reading a WAVEDER file.
The LOPTICS tag produces a WAVEDER file. The WAVEDER contains the derivative of the orbitals with respect to k.
-
cder_data¶ Return the orbital derivative between states.
-
get_orbital_derivative_between_states(band_i, band_j, kpoint, spin, cart_dir)[source]¶ Return a valuebetween bands band_i and band_j.
For k-point index, spin-channel and cartesian direction.
Args:
band_i (Integer): Index of band i
band_j (Integer): Index of band j
kpoint (Integer): Index of k-point
spin (Integer): Index of spin-channel (0 or 1)
cart_dir (Integer): Index of cartesian direction (0,1,2)
- Returns:
- a float value
-
nbands¶ Return the number of bands in the calculation.
-
nelect¶ Return the number of electrons in the calculation.
-
nkpoints¶ Return the number of k-points in the calculation.
-
-
jarvis.io.vasp.outputs.parse_raman_dat(vasp_raman_path='RAMANDIR-bulk@JVASP-1002_mp-149/vasp_raman.dat')[source]¶ Parse vasp_raman.dat .
generated by https://github.com/raman-sc/VASP
Module contents¶
Methods for handling input/output files for VASP.