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

instrument mechanism / verified-clean

Depth of Field / Hyperfocal Distance Calculator mechanism

The inspectable method record for Depth of Field / Hyperfocal Distance Calculator, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The core formulas are correct under the stated assumptions. Verdict is NEEDS_REVIEW because the spec leaves input units and the meaning of aperture ambiguous, does not explicitly define total DoF as far minus near, and does not specify behavior at or beyond the hyperfocal distance. The honest-label statement about conventional CoC values is appropriate.

  • The stated hyperfocal and near/far-limit formulas are standard and correct when focal length, circle of confusion, and focus distance use the same linear unit and aperture is the f-number N.
  • Total DoF is listed as an output but no formula is explicitly provided; it should be total DoF = far limit - near limit.
  • The input specification does not state units for focal length, circle of confusion, or focus distance, nor explicitly identify aperture as an f-number. These ambiguities must be resolved before implementation.

Units and conventions

  • All worked vectors use millimeters for focal length, circle of confusion, focus distance, hyperfocal distance, and depth-of-field limits.
  • Aperture N is the dimensionless photographic f-number, such as f/2.8 or f/8.
  • Circle-of-confusion values are conventional sensor-format values: 0.03 mm for full-frame, 0.02 mm for APS-C, and 0.015 mm for MFT.
  • If a user enters meters or centimeters, the value must be converted to the same unit used for focal length and circle of confusion before calculation.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "sensor_format": "full-frame",
    "focal_length_mm": 50,
    "aperture_f_number": 2.8,
    "circle_of_confusion_mm": 0.03,
    "focus_distance_mm": 5000
  },
  "expected_outputs": {
    "hyperfocal_distance_mm": 29811.904762,
    "near_limit_mm": 4288.013699,
    "far_limit_mm": 5995.498947,
    "total_depth_of_field_mm": 1707.485248
  },
  "working": "H = f²/(N·c) + f = 50²/(2.8·0.03) + 50 = 2500/0.084 + 50 = 29761.904762 + 50 = 29811.904762 mm. Near = (H·s)/(H + (s-f)) = (29811.904762·5000)/(29811.904762 + 4950) = 149059523.81/34761.904762 = 4288.013699 mm. Far = (H·s)/(H - (s-f)) = (29811.904762·5000)/(29811.904762 - 4950) = 149059523.81/24861.904762 = 5995.498947 mm. Total DoF = far - near = 5995.498947 - 4288.013699 = 1707.485248 mm."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

The formulas have an undefined far-limit denominator at s=H+f, and applying the raw far formula beyond that switch produces a negative nonphysical distance. The instrument must explicitly handle the infinity branch and reject or label the division-by-zero boundary.

Other records

Sources and evidence

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

  • VERIFIED_LEDGER.json
  • evidence-tranche4/tranche4-results.json
  • BOUNDARY_HAZARD_CATALOG.json