Skip to content

porestore.tools.metrics

Measurement conveniences shared with the UI's Structure, Statistics and REV tools.

These exports use the same callables and remote analysis types. Every call returns a Job; this module performs no local measurements.

rev_porosity(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure porosity as sampled volume changes.

queue_name and compute_tier follow the service schema. The sample count is fixed by the service. No image sampling or analysis runs locally.

chord_length_distribution(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure chord-length distributions along every axis of a 3-D image.

Common keywords are bins, phase, queue_name and compute_tier. The service controls phase availability, including any solid-phase beta restriction.

connectivity(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure connected, percolating and closed pore and solid regions.

queue_name and compute_tier follow the service schema. Connectivity rules and included phases remain server-controlled; results are dimensionless.

radial_density(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure distances to the selected phase boundary.

Common keywords are phase, queue_name and compute_tier. Radius bins are selected by the service; phase availability follows existing audiences.

interfacial_surface_area(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure the pore-solid interface on a 3-D image.

queue_name and compute_tier follow the service schema. Optional cleanup_singletons is subject to its existing server-side audience. Smoothing controls are fixed by the service, not client defaults.

pore_size(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure local pore sizes and their distribution.

Common keywords are steps, queue_name and compute_tier. Radius bins and the local-thickness method are selected by the service. Results retain the API's voxel or physical units.

porosity_profile(im: Image | str, *, refresh: bool = False, client: Client | None = None, idempotency_key: str | None = None, **kwargs) -> Job

Measure porosity along one axis or all axes.

Pass axis="all", 0, 1 or 2. queue_name and compute_tier follow the service schema. Profile coordinates retain the API's voxel or physical units.