Skip to content

quality_report

Three independent SNR estimates on the same spectrum: derivative-based (DER_SNR), edge-region, and residual of a linear fit. Disagreement between them is a useful diagnostic of bad regions or strong features.

Kind analysis
Status reference - reviewed and adopted as the reference way to make this measurement
Version 1.0.0
Source bundled

Variables

This recipe declares no variables: it runs as is.

Steps

# Algorithm Parameters
1 normalize_polynomial Normalise continuum order=3, sigma_clip=3.0
2 snr_der SNR — derivative method (Stoehr 2008) -
3 snr_edge SNR — edge regions region_fraction=0.1
4 snr_linear_fit SNR — linear-fit residual -

Run it

spectro pipeline quality_report --input spectrum.fits
spectro preset show quality_report      # variables and steps
from spectro_kernel import WorkContext
from spectro_kernel.pipeline import PipelineBuilder

pipeline = PipelineBuilder().from_preset("quality_report").build()
result = pipeline.execute(ctx)        # ctx holds the spectrum / frames
print(result.history[-1])             # pipeline:<name> vX.Y.Z + variables
{
  "tool": "run_preset",
  "arguments": {
    "session_id": "<session_id>",
    "preset_name": "quality_report"
  }
}