jarvis.io.vasp.outputs
¶
Modulet for analzing VASP outputs.
Module Contents¶
Classes¶
Class handling VASP CHGCAR file data. |
|
Read LOCPOT files. |
|
Construct Oszicar object. |
|
Construct OUTCAR object. |
|
Class for reading a WAVEDER file. |
|
Class for VASP Pseudowavefunction stored in WAVECAR. |
|
Construct vasprun.xml handling object. |
Functions¶
|
Parse vasp_raman.dat . |
Attributes¶
- jarvis.io.vasp.outputs.RYTOEV = 13.605826¶
- jarvis.io.vasp.outputs.AUTOA = 0.529177249¶
- jarvis.io.vasp.outputs.TPI¶
- jarvis.io.vasp.outputs.HSQDTM¶
- class jarvis.io.vasp.outputs.Chgcar(filename='', atoms=None, chg=[], chgdif=None, aug=None, augdiff=None, dim=None, nsets=1, lines='')[source]¶
Bases:
object
Class 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, lines='')[source]¶
Bases:
Chgcar
Read LOCPOT files.
- class jarvis.io.vasp.outputs.Oszicar(filename, data={})[source]¶
Bases:
object
Construct Oszicar object.
- property magnetic_moment¶
Get magnetic moment.
- property ionic_steps¶
Get all ionic steps realted data.
- property electronic_steps¶
Get all electronic steps realted data.
- class jarvis.io.vasp.outputs.Outcar(filename, data={})[source]¶
Bases:
object
Construct OUTCAR object.
- property nions¶
Get number of ions.
- property nbands¶
Get number of bands.
- property nedos¶
Get number of dos points.
- property efermi¶
Get Fermi energy.
- property all_band_energies¶
Get all band energies.
- property bandgap¶
Get bandgap.
- property nelect¶
Get number of electrons.
- property phonon_eigenvalues¶
Get phonon eigenvalues.
- property converged¶
Check if calculation is converged.
- property efg_raw_tensor¶
Get raw electric field gradient tensor.
- property quad_mom¶
Get quadrupole momemnt.
- property piezoelectric_tensor¶
Get piezoelectric 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
- class jarvis.io.vasp.outputs.Waveder(filename, gamma_only=False)[source]¶
Bases:
object
Class for reading a WAVEDER file.
The LOPTICS tag produces a WAVEDER file. The WAVEDER contains the derivative of the orbitals with respect to k.
- property cder_data¶
Return the orbital derivative between states.
- property nbands¶
Return the number of bands in the calculation.
- property nkpoints¶
Return the number of k-points in the calculation.
- property nelect¶
Return the number of electrons in the calculation.
- 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
- 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:
object
Class for VASP Pseudowavefunction stored in WAVECAR.
- The format of VASP WAVECAR, as shown in
- 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 occupation
End 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
- 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)
- setWFPrec()[source]¶
Set wavefunction coefficients precision.
TAG = 45200: single precision complex, np.complex64, or complex(qs) TAG = 45210: double precision complex, np.complex128, or complex(q)
- readWFBand(ispin=1, ikpt=1, iband=1)[source]¶
Extract KS energies and Fermi occupations from WAVECAR.
- gvectors(ikpt=1)[source]¶
Generate the G-vectors.
- satisfies the following relation
(G + k)**2 / 2 < ENCUT
- class jarvis.io.vasp.outputs.Vasprun(filename='vasprun.xml', data={})[source]¶
Bases:
object
Construct vasprun.xml handling object.
- property final_energy¶
Get final energy.
- property nbands¶
Get number of electronic bands.
- property nkpoints¶
Get number of kpoints.
- property nspins¶
Get total numnber of spins.
- property efermi¶
Get Fermi-energy.
- property num_atoms¶
Get number of simulation atoms.
- property num_types¶
Get number of atom types.
- property dielectric_loptics¶
Get real and imag. dielectric function data.
- property avg_absorption_coefficient¶
Get average absoprtion coefficient. Used in solar-cell module.
- property converged_electronic¶
Check whether electronically converged.
- property converged_ionic¶
Check whether ionically converged.
- property converged¶
Check whether both electronically and ionically converged.
- property dfpt_data¶
Get DFPT IBRION=8 LEPSILON lated data.
- property get_dir_gap¶
Get direct bandgap.
- property get_indir_gap¶
Get indirect bandgap.
- property fermi_velocities¶
Get fermi velocities in m/s.
- property elements¶
Get atom elements.
- property all_energies¶
Get all total energies.
- property is_spin_polarized¶
Check if the calculation is spin polarized.
- property is_spin_orbit¶
Check if the calculation is spin orbit.
- property all_structures¶
Get all structures.
- property eigenvalues¶
Get all eigenvalues.
- property all_forces¶
Get all forces.
- property all_stresses¶
Get all stresses.
- property all_input_parameters¶
Get all explicit input parameters. Need to add a few more.
- property kpoints¶
Get Kpoints.
- property total_dos¶
Get total density of states.
- property partial_dos_spdf¶
Get partial density of states.
- property projected_spins_kpoints_bands¶
Use for spin, kpoint and band projected bandstructure plots.
- property projected_atoms_spins_kpoints_bands¶
Use for atom,spin,kpoint and band projected bandstructures.
- 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
Activities to Intensities: J. At. Mol. Sci. 3 (2012) 1-22 Intensity = const0 * (nu0-nu)**4/nu * 1/(1-exp(-h*c*nu/(kB*T))) * activity Data for computing intensities, as in Materials Project’s paper:
T=300K, nu0=18796.9925 cm-1