[][src]Crate vaspchg_rs

This is a crate aimed at reading/writing volumetric data file produced by VASP. Mostly the files should be CHGCAR, CHG and PARCHG

Example

use vaspchg_rs::{ChgBase, ChgType};

fn main() -> std::io::Result<()> {
    // Reading volumetric data
    let chgcar = ChgBase::from_file("CHGCAR")?;

    // Writing volumetric data to another file
    chgcar.write_file("another_CHGCAR", ChgType::Chgcar)?;

    // manipulating volumetric data
    let pos = chgcar.get_poscar().clone();
    let mut chg = chgcar.get_total_chg().clone();
    chg *= pos.scaled_volume();

    // construct another ChgBase object
    let new_chg = ChgBase::from_builder(chg, vec![], pos);
    new_chg.write_file("new_CHGCAR", ChgType::Parchg)?;
    Ok(())
}

Detailed usage could be found in ChgBase and unit tests in tests/ folder

Structs

ChgBase

Main struct of volumetric data

Enums

ChgType

Supported formats in saving