2 releases
0.1.1 | Aug 18, 2020 |
---|---|
0.1.0 | Aug 16, 2020 |
#7 in #charge
Used in wavecar_rs
20KB
280 lines
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(())
}
Usage/Document
Clone this repository then run cargo doc
to see the documents.
Detailed usage could be found in ChgBase and unit tests in tests/
folder.
Dependencies
~5MB
~85K SLoC