Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument / verified-clean

Porosity Calculator

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: VERIFIED_CLEANLifecycle: verified-clean

Inspectable records

Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Area
Earth & Space (astronomy, orbital mechanics, meteorology, geology, geodesy, oceanography)
Tranche
tranche-5
Evidence ID
t5-060
Ledger rows
1

No ledger note is attached.

Review findings

The density relationship is standard for particle and bulk density, but the specification is not correct as written for a percentage output because it omits the ×100 conversion. The instrument should label whether it returns the fraction n or porosity in percent. The grain-density reference table must identify mineral assumptions and units; a single typical value is not valid for all rocks and soils.

Formula and scope findings

  • The density formula n = 1 - (ρ_bulk/ρ_grain) returns porosity as a dimensionless fraction, but the stated output is porosity (%); the implementation must multiply by 100 for a percentage.
  • The two formulas use inconsistent output conventions: the volume formula explicitly multiplies by 100, while the density formula does not.
  • The density formula requires positive densities and 0 < ρ_bulk <= ρ_grain for physically valid porosity between 0% and 100%; these constraints are not stated.

Unit assumptions

  • Bulk and grain densities must use the same mass and volume units before taking their ratio, such as both in g/cm³ or both in kg/m³.
  • Void volume and total volume must use the same volume units.
  • Porosity is reported as a percentage from 0% to 100%; the intermediate n is a fraction from 0 to 1.
  • Reference grain densities depend on mineral composition; a quartz value of 2.65 g/cm³ is an assumption, not a universal rock or soil grain density.

Boundary hardening

BREAK_CLAIMED · SELF_FLAGGED

The grain-density-zero input produces an undefined division, so the instrument must reject it. The specification does not state input validation behavior; a plain arithmetic implementation could emit Infinity or -Infinity instead of an explicit error.

Errata and corrections

No applied erratum is attached to this unique-name record.

Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

{
  "inputs": {
    "method": "density",
    "bulk_density": 1.6,
    "bulk_density_unit": "g/cm³",
    "grain_density": 2.65,
    "grain_density_unit": "g/cm³"
  },
  "expected_outputs": {
    "porosity_percent": 39.62264151
  },
  "working": "n = 1 - (ρ_bulk/ρ_grain) = 1 - (1.60/2.65) = 1 - (160/265) = 1 - (32/53) = 21/53 = 0.3962264151. Porosity = 0.3962264151 × 100 = 39.62264151%."
}

Related workflows

No source-defined multi-instrument workflow membership is recorded.

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json · VERIFIED_CLEAN
  • evidence-tranche5/tranche5-results.json
  • BOUNDARY_HAZARD_CATALOG.json