Source: https://guthlabs.ai/docs/instruments/pcb-trace-width-calculator-ipc-2221/mechanism/

instrument mechanism / verified-clean

# PCB Trace Width Calculator (IPC-2221) mechanism

The inspectable method record for PCB Trace Width Calculator (IPC-2221), kept separate from implementation and qualification.

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

## Model scope

The stated IPC-2221 empirical relationship and constants are valid under the mil²/A/°C unit convention, but the specification is incomplete for its claimed width output. Define the copper-weight-to-finished-thickness conversion, enforce positive temperature rise and copper thickness, and specify minimum manufacturable width. The existing honest label appropriately advises verification against fab capability and IPC-2152.

- The IPC-2221 inverse area formula is correct only when current is in amperes, temperature rise is in degrees Celsius, and cross-sectional area is in mil² with the stated k constants.

- The specification does not provide the required width formula: width = cross-sectional area / copper thickness.

- Copper weight in ounces must be converted to an actual finished copper thickness before width can be calculated; the required conversion convention is not specified. A common nominal assumption is 1 oz = 1.378 mil, but plating and finished-copper tolerances can change this.

- The claimed width output cannot be verified uniquely until the copper-weight-to-thickness convention is defined.

## Units and conventions

- Current is in amperes.

- Allowed temperature rise is a positive temperature increment in °C; an increment in kelvins is numerically equivalent.

- The IPC-2221 constants k = 0.048 external and k = 0.024 internal assume cross-sectional area A in mil².

- Copper thickness is assumed to be 1.378 mil per nominal ounce of copper when converting copper weight to thickness.

- Width in mil is calculated as A in mil² divided by thickness in mil.

- Width in mm is converted using 1 mil = 0.0254 mm.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "current_A": 2,
    "temperature_rise_C": 10,
    "copper_weight_oz": 1,
    "layer": "external"
  },
  "expected_outputs": {
    "cross_section_area_mil2": 42.39,
    "trace_width_mil": 30.76,
    "trace_width_mm": 0.7814
  },
  "working": "External k = 0.048. ΔT^0.44 = 10^0.44 ≈ 2.75423. Denominator = 0.048 × 2.75423 = 0.132203. A = (2 / 0.132203)^(1/0.725) = (15.1283)^1.37931 ≈ 42.39 mil². For 1 oz copper, thickness = 1 × 1.378 = 1.378 mil. Width = 42.39 / 1.378 ≈ 30.76 mil. Width in mm = 30.76 × 0.0254 ≈ 0.7814 mm."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

Zero allowed temperature rise produces a zero denominator and an undefined or unbounded required area; zero current produces a mathematically zero but physically unusable trace width; and literal negative-current handling can leave the real-number domain unless current magnitude is explicitly used.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/pcb-trace-width-calculator-ipc-2221/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/pcb-trace-width-calculator-ipc-2221/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/pcb-trace-width-calculator-ipc-2221/qualification/>)

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