Expand description
§petekIO
The subsurface data ingestion + structure layer: surfaces, wells, points, and polygons, with loading, interpolation, filters, and statistics built in. It is the input-data model that subsurface apps consume so they do zero parsing/interpolation themselves.
See SPEC.md (design constitution + architecture) and API.md (the locked
public API contract) at the repo root.
§Layered, one-way dependencies
foundation → io → core → analysis → manager → pyA layer imports only from below — never sideways, never up. The public types
are re-exported at the crate root; users reach for petekio::Surface, not
petekio::core::Surface.
Re-exports§
pub use analysis::Cutoffs;pub use analysis::DistributionShape;pub use analysis::HorizonInput;pub use analysis::ModelInputs;pub use analysis::NameMap;pub use analysis::SpatialInputs;pub use analysis::StratHints;pub use analysis::SummaryInputs;pub use analysis::WellCurveInput;pub use core::FluidContact;pub use core::GeometryEdge;pub use core::GridMethod;pub use core::Interval;pub use core::Log;pub use core::LogKind;pub use core::LogView;pub use core::PointSet;pub use core::PolygonSet;pub use core::Sidetrack;pub use core::Station;pub use core::StructuredMeshSurface;pub use core::Surface;pub use core::Top;pub use core::TopologyReport;pub use core::Trajectory;pub use core::TrajectoryInput;pub use core::TriSurface;pub use core::Well;pub use core::DEFAULT_MAX_LINK;pub use foundation::BBox;pub use foundation::Distribution;pub use foundation::GeoError;pub use foundation::GridGeometry;pub use foundation::HasHistory;pub use foundation::OperationHistory;pub use foundation::Point3;pub use foundation::Provenance;pub use foundation::Result;pub use foundation::Stats;pub use foundation::Uncertain;pub use foundation::Unit;pub use manager::GeoData;pub use manager::ProjectInfo;pub use manager::WellsView;
Modules§
- algorithms
algorithms— petekIO’s internal numeric/geostatistical kernels, grouped by discipline (wells, … ; more land as they arrive).- analysis
analysis— operations across the core objects (resample, minimum-curvature, statistics, filters, arithmetic; much lives as methods on the core types per the design constitution) and the model-ready-inputs assembly: the normalize → validate → interpret → characterise pipeline that turns loaded data into theModelInputscontract consumers receive.- core
core— the domain objects that carry their own operations:Surface,Well/Sidetrack/Trajectory,Log,Top,PointSet,PolygonSet. Imports fromfoundationandio.- foundation
foundation— the bottom layer: errors, units, geometry primitives, and the universalStatsaggregation result. Imports from nothing above it.- manager
manager— theGeoDatasubstrate + views: load once, named/collection access, broadcastable filtered views. The top layer; imports from all below.
Enums§
- Format
Kind - The file formats petekIO can identify from a bounded header read.
Functions§
- detect
- Detect the likely format of
pathfrom at most 64 KiB of leading bytes.