Source: https://guthlabs.ai/docs/instruments/blackbody-spectral-radiance-plotter-planck-s-law/mechanism/

instrument mechanism / verified-with-binding-errata

# Blackbody Spectral Radiance Plotter (Planck's Law) mechanism

The inspectable method record for Blackbody Spectral Radiance Plotter (Planck's Law), kept separate from implementation and qualification.

Status: **VERIFIED_WITH_ERRATA**Lifecycle: **verified-with-binding-errata**

## Model scope

The physical formula and ideal-blackbody label are correct. Resolve the exact wavelength and radiance units, domain constraints, numerical-stability behavior, and whether the peak marker is explicitly the wavelength-domain Wien peak before release.

- The Planck-law formula is correct for spectral radiance per unit wavelength, per unit projected area, per steradian: B_lambda=(2hc^2/lambda^5)/(exp(hc/(lambda k_B T))-1).

- The spec does not explicitly state that wavelength must be supplied in metres and that the output is W m^-3 sr^-1 (equivalently W m^-2 sr^-1 m^-1).

- The peak-marker implementation must use the wavelength-domain Wien constant b_lambda=2.897771955e-3 m K; a frequency-domain peak marker would be different.

- The valid domain constraints T>0 and lambda>0 are not stated.

## Units and conventions

- Use h=6.62607015e-34 J s, c=299792458 m s^-1, and k_B=1.380649e-23 J K^-1.

- Input temperature T is in kelvin.

- Input wavelength lambda is converted to metres before evaluation.

- Output B_lambda is in W m^-3 sr^-1, or equivalently W m^-2 sr^-1 per metre of wavelength.

- The plotted quantity is spectral radiance, not spectral exitance; no extra factor of pi is applied.

## Inspectable vector

One of 4 source-bound review vectors:

````
{
  "inputs": {
    "temperature_K": 300,
    "wavelength": "10 micrometres = 1.000000e-5 m"
  },
  "expected_outputs": {
    "sampled_spectral_radiance_W_m^-3_sr^-1": 9924033,
    "curve_features": {
      "wien_peak_wavelength_m": 0.00000965923985,
      "wien_peak_wavelength_micrometres": 9.65923985,
      "positive_wavelength_roots": "none",
      "limits": "B_lambda -> 0 as lambda -> 0+ and as lambda -> infinity"
    }
  },
  "working": "c2=hc/k_B=0.01438776877 m K. x=c2/(lambda*T)=0.01438776877/(1.000000e-5*300)=4.795922923. 2hc^2=1.191042972e-16. lambda^5=(1.000000e-5)^5=1.000000e-25 m^5. Numerator factor=(2hc^2)/lambda^5=1.191042972e9. exp(x)-1=exp(4.795922923)-1 approximately 120.01602. Therefore B_lambda=1.191042972e9/120.01602=9.924033e6 W m^-3 sr^-1. Wien peak: lambda_max=b_lambda/T=2.897771955e-3/300=9.65923985e-6 m."
}
````

## Failure boundary

**BREAK_CLAIMED** · SELF_FLAGGED

Zero temperature and zero wavelength make the literal Planck expression undefined, while the plotted physical limits can be finite. A numerical branch near x=1 must also preserve continuity, and an unlabelled wavelength such as 500 is unit-ambiguous by orders of magnitude.

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/blackbody-spectral-radiance-plotter-planck-s-law/>)[03**Implementation**](<https://guthlabs.ai/docs/instruments/blackbody-spectral-radiance-plotter-planck-s-law/implementation/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/blackbody-spectral-radiance-plotter-planck-s-law/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-tranche6/tranche6-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
