Waveform Analyzer
Browser-local lock-in, phase rotation, and Kerr-angle analysis from harmonic components, with results matching the native implementation.
The analyzer runs the same Rust kernels used by native pmoke inside a dedicated Web Worker. Synthetic signals and local CSV files remain in the browser. Plot traces are decimated independently; every exported value comes from the complete analysis input.
- Samples
- —
- Output samples
- —
- Input rate
- —
- Output rate
- —
- Runtime
- —
- Estimated ENBW
- —
- Support
- —
- Cutoff
- N/A · boxcar
- Input trim
- —
- Settling
- N/A · boxcar
- Modulation depth
- —
- Median Kerr angle
- —
Analysis visualization
The four synchronized plots show the input waveform, lock-in X/Y components, magnitude and phase, Kerr angle, and filter response. Controls cover sample rate, reference frequency, noise, boxcar half-window, stride, phase rotation, harmonic, and Kerr factor. Local CSV analysis and metadata-rich CSV export remain browser-local.
Parity boundary
boxcar_legacy, phase rotation, and Kerr-angle calculation from harmonic components are
numerically equivalent to the native implementation. Historical FIR/IIR filters are
migration-only and are not active runtime paths. Phase fitting and the standard
Kerr-angle calculation are also outside browser parity. Use the native pmoke CLI
for the supported production workflow.
CSV input accepts time,signal or one signal column. A time column must be finite,
strictly increasing, and uniform. One-column input uses the sample-rate control.
The hard limits are 16 MiB, 1,000,000 input samples, and 1,500,000 total harmonic
output points.