Source: https://guthlabs.ai/docs/instruments/standing-wave-harmonics-calculator-strings-pipes/

instrument / verified-clean

# Standing Wave Harmonics Calculator (strings & pipes)

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/standing-wave-harmonics-calculator-strings-pipes/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/standing-wave-harmonics-calculator-strings-pipes/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/standing-wave-harmonics-calculator-strings-pipes/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/standing-wave-harmonics-calculator-strings-pipes/qualification/>)

## Ledger state

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

**Area**: Physics — Kinematics/Projectiles/Orbits, Forces/Energy/Momentum, Rotational Dynamics, Gravitation, Oscillations/Waves, Optics, E&M Fields, Relativity, Quantum, Statistical Thermo

**Tranche**: tranche-6

**Evidence ID**: t6-087

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The core frequency formulas are correct for the stated ideal boundary conditions. The instrument needs an explicit wavelength formula, a defined harmonic-table range, validation rules for L, v, and n, and documented speed-of-sound table conditions before release.

### Formula and scope findings

- The stated frequency formulas are standard: f_n = nv/(2L) for a string with both ends fixed and an open pipe, and f_n = (2n−1)v/(4L) for a pipe closed at one end.

- The claimed wavelength output has no specified formula; it should use λ = v/f_n, giving λ = 2L/n for strings/open pipes and λ = 4L/(2n−1) for closed pipes.

- The harmonic-series table has no specified range or maximum harmonic number, so its output is ambiguous.

- For a closed pipe, n must be the positive mode index n = 1,2,3,...; these correspond to the first, third, fifth, ... harmonics, not all integer harmonics.

- The speed-of-sound table is underspecified unless its medium, temperature, and environmental assumptions are defined. No frequency formula itself is incorrect.

### Unit assumptions

- L must be positive and expressed in a length unit compatible with v; v must be expressed in the corresponding length unit per second.

- n is dimensionless and must be a positive integer.

- For strings and open pipes, the stated formula assumes ideal 1D standing waves with nodes at both string ends or antinodes at both pipe ends.

- For closed pipes, the formula assumes one pressure node and one pressure antinode, with only odd modes present.

- Wavelength is in the same length unit as L because λ = v/f_n.

- The supplied speed-of-sound value must correspond to the selected medium and conditions; air speed varies with temperature and other environmental factors.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

A zero-length input produces division by zero and undefined frequency. The instrument must reject L=0; otherwise it can emit an invalid result or fail. Signed wave speed also exposes a convention hazard because literal substitution yields a negative frequency.

## 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": {
    "boundary_type": "string_both_ends_fixed",
    "L": 0.65,
    "L_unit": "m",
    "v": 130,
    "v_unit": "m/s",
    "n": 3,
    "harmonic_table_through_n": 3
  },
  "expected_outputs": {
    "f_n_Hz": 300,
    "wavelength_m": 0.4333333333,
    "harmonic_series": [
      {
        "n": 1,
        "f_Hz": 100,
        "wavelength_m": 1.3
      },
      {
        "n": 2,
        "f_Hz": 200,
        "wavelength_m": 0.65
      },
      {
        "n": 3,
        "f_Hz": 300,
        "wavelength_m": 0.4333333333
      }
    ]
  },
  "working": "String formula: f_3 = (3×130)/(2×0.65) = 390/1.30 = 300 Hz. Wavelength: λ_3 = v/f_3 = 130/300 = 0.4333333333 m, equivalently 2L/n = (2×0.65)/3 = 1.30/3 = 0.4333333333 m. Table: n=1 gives 130/1.30 = 100 Hz; n=2 gives 260/1.30 = 200 Hz; n=3 gives 390/1.30 = 300 Hz."
}
````

## 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`
