# Vacuum dipole — finite energy + PML decay

<span class="validation-badge">validated · 2026-08-28</span>

<div class="case-meta"><span>analytical</span><span>resolution 1</span><span>smoke</span><span>analytical</span><span>p0</span><span>energy</span><span>pml</span></div>

This case checks the implementation against an analytical identity, convergence property, or independent physics invariant.

```{figure} ../../_static/generated/dipole_field.png
:alt: Technical schematic associated with Vacuum dipole — finite energy + PML decay

Representative radiating-field structure.
```

## What is exercised

Point dipole in vacuum with PML. Peak energy must be > 0 and finite; late-time mean energy / peak must be << 1 (absorbed, not exploding).

This case runs at its declared full benchmark resolution (resolution factor 1.0).



## Recorded result

| Metric | Observed / error | Reference / limit | Error | Effective budget | Result |
|---|---:|---:|---:|---:|---:|
| `fields_finite` | 1 | 1 | 0 | 0 | <span class="metric-pass">PASS</span> |
| `energy_peak_positive` | 1 | 1 | 0 | 0 | <span class="metric-pass">PASS</span> |
| `energy_tail_ratio` | 4.543e-05 | 0 | 4.543e-05 | 0.2 | <span class="metric-pass">PASS</span> |

The table is rendered from `progress.json`; it is not a hand-written success claim. For metrics that report an error directly, the “observed” column repeats that error and the reference column is the acceptance threshold.

## Reproduce

```bash
uv run fdtdx-bench run --case analytical_vacuum_energy
```

Implementation and provenance: `benchmarks/cases/analytical_vacuum_energy/case.yaml`, `benchmarks/cases/analytical_vacuum_energy/run.py`.

[Return to the example atlas](../index.md)
