CON corpus
readcon-db
Mmap-backed CON and convel. LMDB via Heed. Indexes, xxHash3 exact match, and bindings for Rust, C, C++, Python, and Fortran.
With readcon-core
core parses and writes one stream or file. db keeps thousands of those frames, indexes them, and lets many readers mmap the same tree. CON text stays authoritative.
Open, ingest, select
use readcon_db::{ConCorpus, Select};
let db = ConCorpus::open("/tmp/corpus")?;
db.append_trajectory_path(1, "run.con")?;
let keys = db.select(&Select::new().require_symbol("Cu"))?;
let h = db.frame_hash(keys[0])?;
C, Python, Fortran
- C / C++
include/readcon-db.h–rkrdb_*and RAIIreadcon_db::Corpus. MPI:readcon-db-mpi.htakes the caller communicator.- Python
maturin develop --features python→readcon_db.ConCorpus.- Fortran
fortran/ReadConDbwithbind(C)helpers.