Source: https://guthlabs.ai/docs/instruments/colebrook-white-moody-friction-factor-solver/

instrument / verified-clean

# Colebrook-White / Moody Friction Factor Solver

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

Status: **VERIFIED_CLEAN**Lifecycle: **verified-clean**

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/colebrook-white-moody-friction-factor-solver/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/colebrook-white-moody-friction-factor-solver/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/colebrook-white-moody-friction-factor-solver/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/colebrook-white-moody-friction-factor-solver/qualification/>)

## Ledger state

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

**Area**: Thermodynamics, Fluids & Aero

**Tranche**: tranche-6

**Evidence ID**: t6-035

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The two supplied equations are standard within their respective regimes, but the instrument is not fully specified as an operational solver. Add explicit input validation, regime boundaries, a transitional-flow policy, Newton initialization and stopping rules, maximum iterations, convergence/failure reporting, and an unambiguous Darcy-friction-factor label before release.

### Formula and scope findings

- The Colebrook-White equation is standard for turbulent flow and the laminar formula f=64/Re is standard, but the specification does not define the transitional regime between the laminar and turbulent limits.

- Newton iteration is named but no iteration variable, initial guess, stopping criterion, maximum iteration count, or failure behavior is specified.

- Moody-chart region classification is claimed, but no regime boundaries or classification algorithm are specified.

- The solver must distinguish Darcy friction factor from Fanning friction factor; the supplied equations produce the Darcy friction factor.

### Unit assumptions

- Reynolds number Re is dimensionless and uses the same characteristic diameter D used in the relative roughness.

- Relative roughness ε/D is dimensionless, nonnegative, and should be computed from ε and D in consistent length units before being supplied.

- The logarithm is base 10.

- The Colebrook equation applies to fully developed turbulent pipe flow, conventionally Re greater than approximately 4000.

- The laminar equation f=64/Re applies to fully developed laminar pipe flow, conventionally Re less than approximately 2300.

- The reported friction factor is the Darcy-Weisbach friction factor, not the Fanning friction factor; the latter would be f_D/4.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

The Re = 0 input makes both the laminar formula and the Colebrook term undefined and must be rejected. In addition, the specification does not state the laminar/transitional/turbulent thresholds or how the transitional interval is handled, and it does not explicitly distinguish Darcy from Fanning conventions beyond the equation itself.

## 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": {
    "Re": 2000,
    "relative_roughness": "0.001",
    "method": "laminar",
    "newton_tolerance": 1e-10
  },
  "expected_outputs": {
    "friction_factor": 0.032,
    "flow_regime": "laminar"
  },
  "working": "Re=2000<2300, so use f=64/Re. 64/2000=0.032 exactly. The roughness is ignored for the laminar formula."
}
````

## 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-tranche6/tranche6-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
