Expand description
Core crystal-structure types for xtalforge.
This crate holds the element data, lattices, sites, structures and the P1, supercell and slab operations developed in Phase 1. The foundation is kept small so every domain can share a single error type per crate.
Re-exports§
pub use bonding::Bond;pub use bonding::BondGraph;pub use bonding::BondRules;pub use bonding::ExplicitBond;pub use bonding::TopologyBond;pub use bonding::perceive_bonds;pub use cell::cell_volume;pub use compare::Alignment;pub use compare::interpolate;pub use compare::kabsch_alignment;pub use compare::periodic_rmsd;pub use deprecation::warn_deprecated;pub use describe::describe_atom;pub use edits::RattleOptions;pub use edits::RattleReport;pub use edits::SiteSort;pub use edits::SpeciesReplacement;pub use edits::SupercellChoice;pub use edits::add_sites;pub use edits::deform;pub use edits::move_site;pub use edits::optimal_supercell;pub use edits::rattle;pub use edits::remove_sites;pub use edits::replace_site;pub use edits::replace_species;pub use edits::scale_to_density;pub use edits::scale_to_volume;pub use edits::sort_sites;pub use edits::strain;pub use edits::tensor_to_voigt;pub use edits::voigt_to_tensor;pub use edits::wrap_sites;pub use elements::Element;pub use elements::Isotope;pub use elements::element_info;pub use eos::EosFit;pub use eos::EosKind;pub use eos::EosPoint;pub use eos::eos_energy;pub use eos::fit_eos;pub use groups::GroupKind;pub use groups::GroupMatch;pub use groups::find_groups;pub use groups::group_counts;pub use hull::ConvexHull;pub use hull::PhaseEntry;pub use hull::PhasePoint;pub use hull::convex_hull;pub use lattice::Lattice;pub use lattice::lattice_info;pub use lattice::lattice_minimum_image;pub use limits::Limits;pub use limits::Profile;pub use limits::Verdict;pub use limits::limits_bounds;pub use limits::limits_check;pub use local::AngleDistribution;pub use local::CoordinationNeighbor;pub use local::CoordinationShell;pub use local::CoordinationStrategy;pub use local::RadialDistribution;pub use local::RdfOptions;pub use local::ShapeMeasure;pub use local::StructureFingerprint;pub use local::VoronoiCell;pub use local::VoronoiNeighbor;pub use local::VoronoiReport;pub use local::bond_angle_distribution;pub use local::coordination;pub use local::coordination;pub use local::fingerprint;pub use local::radial_distribution;pub use local::shape_measures;pub use local::voronoi;pub use local::voronoi;pub use measure::angle;pub use measure::centroid;pub use measure::distance;pub use measure::interplanar_angle;pub use measure::torsion;pub use neighbors::Neighbor;pub use neighbors::neighbors;pub use neighbors::neighbors_of;pub use p1::P1Atom;pub use p1::P1Cell;pub use parallel::ParallelOptions;pub use parallel::set_global_threads;pub use param_presets::PRESET_NAMES;pub use param_presets::preset;pub use param_presets::presets;pub use params::ParamSet;pub use params::ParamSpec;pub use params::ParamType;pub use polyhedron::FULL_SPHERE;pub use polyhedron::HalfSpace;pub use polyhedron::Polyhedron;pub use rings::Ring;pub use rings::RingStep;pub use rings::is_aromatic;pub use rings::ring_counts;pub use rings::ring_membership;pub use rings::ring_paths;pub use rings::rings;pub use scalars::ScalarFn;pub use scalars::ScalarInfo;pub use scalars::ScalarRegistry;pub use scalars::atom_charges;pub use scalars::atom_masses;pub use scalars::bond_lengths;pub use scalars::coordination_numbers;pub use selection::AtomId;pub use selection::Selection;pub use selection::TrackingTable;pub use site::Site;pub use slab::Slab;pub use slab::make_slab;pub use slab::plane_angle;pub use slab::surface_basis;pub use structure::SCHEMA_VERSION;pub use structure::Structure;pub use structure::StructureBuilder;pub use structure::StructureDocument;pub use structure::StructureSummary;pub use structure::StructureWarning;pub use structure::structure_info;pub use surface::AdsorptionKind;pub use surface::AdsorptionSite;pub use surface::SurfaceEnergy;pub use surface::WulffFacet;pub use surface::WulffShape;pub use surface::adsorption_sites;pub use surface::place_molecule;pub use surface::wulff;pub use symop::SymOp;pub use transforms::Ellipsoid;pub use transforms::Plane;pub use transforms::displacement_ellipsoid;
Modules§
- bonding
- Distance-based bond perception and the connectivity graph (Task 1.11).
- cell
- Cell geometry: volumes from the six lattice parameters.
- compare
- Comparison primitives: Kabsch alignment, periodic RMSD and interpolation.
- data
- Embedded and lazily loaded data bundles.
- deprecation
- Deprecation warnings shared by the surfaces (Task 11.4.2).
- describe
- One-line atom descriptions for tooltips, the CLI and the agent layer.
- edits
- Structure edits: strain, rattle, site operations and optimal supercells.
- elements
- Periodic-table reference data and element-symbol parsing.
- eos
- Equation-of-state fits (Task 9.6.2).
- groups
- Functional-group catalogue and matcher (Task 1.13).
- hull
- Formation energies and convex-hull distances (Task 9.6.3).
- lattice
- Unit cell geometry: the lattice matrix and everything derived from it.
- limits
- Size limits: arithmetic estimates made before anything is allocated.
- local
- Local environments: Voronoi, coordination, shape measures and RDF.
- measure
- Distances, angles, torsions, centroids and planes (Task 1.14.1).
- neighbors
- Periodic neighbor search (Task 1.10).
- p1
- P1 expansion with provenance back to the asymmetric site and operation.
- parallel
- Thread-pool options shared by the surfaces (Task 11.1.2).
- param_
presets - Built-in parameter descriptions shared by every surface (Task 3.8.2).
- params
- Typed parameter descriptions shared by modules, engines and builders (Task 3.8.1).
- polyhedron
- Convex polyhedra as intersections of half-spaces (Task 9.3.1, 9.4.3).
- rings
- Ring perception on the periodic bond graph (Task 1.12).
- scalars
- Named per-atom and per-bond scalars (Task 1.14.2).
- selection
- Selection model and atom tracking (Task 3.11).
- site
- Asymmetric-unit sites: label, element, coordinates, occupancy and props.
- slab
- Slabs cut along a lattice plane (Task 1.8).
- structure
- Crystal structures: a lattice, a space-group identity and asymmetric sites.
- supercell
- Supercells and origin shifts (Task 1.7).
- surface
- Crystal surfaces: Wulff construction and adsorption sites (Task 9.4).
- symop
- Symmetry operations with exact integer rotations and rational translations.
- transforms
- Point-set transforms, finite cells and displacement ellipsoids (Task 1.9).
Enums§
- Error
- Errors returned by core operations.
Functions§
- version
- Version of the workspace, from the package metadata.