- Take raw data records of fixed length and noise. Return basis for analyzing that data, and future data.
- Requires cuts to select down to clean pulses from which to make the basis. This suggests a sort of self consistent cut procedure. Luckily Alpert et all describe such a procedure https://link.springer.com/article/10.1007/s10909-015-1402-y
- Take raw data records. Return subspace representation + residual std deviation.
- Take subspace representation and spectral information. Return rough calibration. J?
- Take J and ??. Return various corrected Js.
- Baseline-J Correlation Correction
- Subsample arrival time Correction
- Time Drift Correction
- any combination thereof (to evaluate if correction improves energy resolution)
- Take Corrected J and return best Calibation.
- Take PulseHeightEstimators and Sepctral Information. Return Energy Resolution achieved.
- Often redundant with best Calibration work.
- Take Basis (with embedded noise info?) and Calibration. Return predicted energy resolution.
- Write pulse in subspace representation + residual + timestamp to disk.
- Write Recipe output+timestamp to disk.
- Handle failed pixels.
- Continue with analysis of good pixels.
- Allow inspection of failed pixels easily.
- Pulse: the raw microcalorimter data representing currentt vs time in the time domain
- Noise: event free raw microcalorimter data used to learn about noise properties of microcalorimeter data
- Basis: A set of N+1 orthogonal vectors defining the subspace in which we will represent a pulse
- psrr: A pulse in the subspace represtation, with residual value, a Vector of length N+1