Source: https://guthlabs.ai/docs/instruments/pcb-trace-impedance-calculator-microstrip-stripline/

instrument / verified-clean

# PCB Trace Impedance Calculator (Microstrip/Stripline)

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/pcb-trace-impedance-calculator-microstrip-stripline/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/pcb-trace-impedance-calculator-microstrip-stripline/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/pcb-trace-impedance-calculator-microstrip-stripline/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/pcb-trace-impedance-calculator-microstrip-stripline/qualification/>)

## Ledger state

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

**Area**: Electrical & Electronics Engineering — Circuits, Power Systems, Electronics Lab

**Tranche**: tranche-6

**Evidence ID**: t6-001

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The honest-label note is directionally correct but incomplete. The instrument can pass only after the exact microstrip finite-thickness Hammerstad-Jensen equations, the separate stripline algorithm, required stripline geometry, trace length input, delay definition, validity constraints, and unit behavior are specified. The four vectors are deterministic checks of the explicitly stated zero-thickness microstrip baseline, not validation of the missing thickness or stripline functionality.

### Formula and scope findings

- The specification names Hammerstad-Jensen but provides no explicit equations, branch conditions, or finite-copper-thickness correction, so the implemented result is not reproducible.

- The standard zero-thickness Hammerstad microstrip approximation is not a stripline formula. Stripline requires a separate symmetric/asymmetric-stripline model and additional geometry inputs, such as distance to each reference plane.

- Copper thickness t is listed as an input, but no thickness correction is specified. The test calculations below therefore use the zero-thickness baseline with t ignored; this is not an acceptable final implementation for normal PCB copper.

- Propagation delay cannot be computed from w, h, epsilon_r, and t alone. Trace length is missing, and the specification does not state whether delay means phase delay, group delay, or delay per unit length.

- The effective-permittivity and impedance equations need an explicit validity range, including assumptions about quasi-TEM behavior, homogeneous dielectric, nonmagnetic materials, and practical w/h and t/h limits.

### Unit assumptions

- w, h, t, and trace length are in the same length unit; only ratios such as w/h affect the impedance.

- For the test calculations, the speed of light is c = 299792458 m/s, equivalently 299.792458 mm/ns.

- epsilon_r is dimensionless and is treated as frequency-independent relative permittivity.

- The calculations use the common zero-thickness Hammerstad microstrip baseline: u = w/h; epsilon_eff = (epsilon_r+1)/2 + (epsilon_r-1)/(2*sqrt(1+12/u)); for u <= 1, Z0 = (60/sqrt(epsilon_eff))*ln(8/u+0.25u); for u >= 1, Z0 = 120*pi/(sqrt(epsilon_eff)*(u+1.393+0.667*ln(u+1.444))).

- Propagation delay is calculated as delay = length*sqrt(epsilon_eff)/c. Copper thickness is shown in the inputs but deliberately ignored in these baseline checks because the specification does not define its correction.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

The zero-height input produces an undefined normalized width and must be rejected. The signed-width probe also exposes an undocumented convention: negative physical trace width should be rejected or explicitly normalized using its magnitude.

## 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": {
    "topology": "microstrip",
    "w_mm": 0.2,
    "h_mm": 0.2,
    "epsilon_r": 4,
    "t_mm": 0,
    "length_mm": 100
  },
  "expected_outputs": {
    "Z0_ohm": 74.145,
    "propagation_delay_ns": 0.569606
  },
  "working": "u = w/h = 0.2/0.2 = 1.000000. epsilon_eff = (4+1)/2 + (4-1)/(2*sqrt(1+12/1)) = 2.5 + 1.5/sqrt(13) = 2.5 + 0.416025 = 2.916025. sqrt(epsilon_eff) = 1.707637. Since u <= 1, Z0 = (60/1.707637)*ln(8/1 + 0.25*1) = (60/1.707637)*ln(8.25) = (60/1.707637)*2.110213 = 74.145 ohm. Delay = 100*1.707637/299.792458 = 0.569606 ns. This is the branch-boundary case u = 1."
}
````

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