[−][src]Struct wavecar_rs::Wavefunction
Pseudo wavefunction structure.
This struct stores only one state's wavefunction data.
Note: all the subscript references are count from 0, which differs from Fortran.
Implementations
impl Wavefunction
[src]
pub fn get_wavecar_type(&self) -> WavecarType
[src]
pub fn get_ispin(&self) -> u64
[src]
spin index, count from 0
pub fn get_ikpoint(&self) -> u64
[src]
kpoint index
pub fn get_iband(&self) -> u64
[src]
band index
pub fn get_real_cell(&self) -> Array2<f64>
[src]
real space lattice vectors
pub fn get_eigen_val(&self) -> f64
[src]
band eigen value (i.e. band energy)
pub fn get_kvec(&self) -> Vec<f64>
[src]
k-point's k-vector in k-space
pub fn get_ngrid(&self) -> Vec<u64>
[src]
mesh grid shape
pub fn get_mesh_data(&self) -> &Array3<Complex64>
[src]
mesh grid data
impl Wavefunction
[src]
pub fn apply_phase(self, r0: &[f64; 3]) -> Self
[src]
Apply kr phase.
By default, the WAVECAR only stores the periodic part of the Bloch wavefunction. In order to get the full Bloch wavefunction, one need to multiply the periodic part with the phase: exp(ik(r+r0)). Below, the k-point vector and the real-space grid are both in the direct coordinates. (Source)
pub fn normalize(self) -> Self
[src]
Normalize wavefunction data, makes it satisfies <psi|psi> = 1
pub fn get_charge_density(&self) -> Array3<f64>
[src]
Calculate the charge density mesh grid, according to rho = |psi|^2
pub fn get_wavefun_realgrid(&self) -> Array3<f64>
[src]
Get the real part of the wavefunction
pub fn get_wavefun_imagegrid(&self) -> Array3<f64>
[src]
Get the imaginary part of the wavefunction
pub fn into_parchg_obj(self, poscar: &Poscar) -> ChgBase
[src]
Calculate the charge density mesh grid and generate a Parchg object
pub fn into_vesta_obj(self, poscar: &Poscar) -> ChgBase
[src]
Save raw real part of the wavefunction as vesta format (in fact, making use of CHGCAR format) to visualize the wavefunction.
Trait Implementations
impl Clone for Wavefunction
[src]
fn clone(&self) -> Wavefunction
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Wavefunction
[src]
Auto Trait Implementations
impl RefUnwindSafe for Wavefunction
impl Send for Wavefunction
impl Sync for Wavefunction
impl Unpin for Wavefunction
impl UnwindSafe for Wavefunction
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,