Skip to main content

Crate readcon_db

Crate readcon_db 

Source
Expand description

Embedded CON/convel corpus on LMDB (Heed) with non-SQL selection and xxHash3 exact match.

Optional python feature builds PyO3 bindings. C ABI is always compiled into cdylib/staticlib (src/ffi.rs).

Modules§

ffi
C ABI for readcon-db (always linked into cdylib/staticlib).

Structs§

ConCorpus
ContentHash
xxHash3 128-bit content fingerprint (exact match / dedup).
CookedSoa
Decoded cooked numerics (always f64 for v1).
FrameKey
Select
Non-SQL selection builder (ASE.db-competitive campaign filters via secondary indexes).
ShardManifest
ShardedConCorpus
Multi-shard campaign corpus: root/shard_XXXX/ each holds an independent ConCorpus.

Enums§

CorpusExportKind
Exportable corpus layout kinds for analysis handoff.
Error

Constants§

DEFAULT_N_SHARDS
Default shard count for HPC campaign roots (power of two aids routing).

Functions§

composition_formula
Canonical formula string — delegated to readcon_core::index_proj (single encoding). Canonical multiset formula: sorted non-empty Sym:count joined by |. Example: Cu₂H₂ → Cu:2|H:2. Shared with campaign idx_formula keys.
frame_cell_volume
Cell volume: prefer lattice determinant; else triclinic from boxl + angles (degrees).
frame_fmax
Euclidean max ||F_i|| over atoms with force data; None if no forces.
frame_total_mass
Total mass = Σ masses_per_type[i] * natms_per_type[i] (all finite).
hash_frame_bytes
Hash canonical frame blob bytes (UTF-8 CON text as stored).
join_corpus_dirs
Join any set of single-env corpus directories into one destination (traj_id must be unique).
species_counts_from_symbols
Canonical formula string — delegated to readcon_core::index_proj (single encoding). Species multiset from atom symbols (non-empty only), sorted by symbol.
write_frame_extxyz
Write one frame as ASE-compatible extxyz (Lattice, Properties, energy/forces in info/arrays).
write_frames_extxyz

Type Aliases§

FrameIdx
Zero-based frame index within a trajectory.
Result
TrajId
Stable trajectory identifier (user-assigned).