normalize_max¶
Normalise a spectrum by dividing the flux by its maximum value.
| Category | Continuum |
| Backend | numpy - implemented here on top of numpy primitives |
| Version | 3.0.0 |
| Reads | ctx.spectrum (a Spectrum1D) |
| Writes | spectrum, metrics.max_flux |
out = flux / nanmax(flux). v2.0.0 — uncertainty (rule in place since 1.0.0, now documented ; no numerical change) : σ_out = σ_in / |max_flux| — the peak is treated as a noise-free scale factor (a noisy peak biases the normalisation high ; clip cosmics or smooth first). v3.0.0: masked samples (Spectrum1D.mask) are ignored when locating the maximum ; the output keeps their flux, divided like every other sample, and carries the mask through.
Parameters¶
This algorithm takes no parameters.
Use it¶
References¶
- Gray 2005, The Observation and Analysis of Stellar Photospheres, 3rd ed., Cambridge UP — ch. 12, continuum placement (the peak flux as the crudest continuum proxy).
- Tody 1986, Proc. SPIE 627, 733 — the IRAF data reduction and analysis system (reference implementation of spectrum normalisation tasks).
Related algorithms¶
compare_normalisations- Run every continuum-normalisation method onctx.spectrumand collect them.normalize_edges- Normalise a spectrum using a continuum fitted only on its line-free edges.normalize_percentile- Normalise a spectrum by dividing the flux by a high percentile of itself.normalize_polynomial- Normalise the continuum to unity with a sigma-clipped polynomial fit.normalize_spline- Normalise the continuum with an IRAF-style iteratively clipped cubic spline.normalize_to_region- Divide the flux by its NaN-safe mean over[wave_lo, wave_hi].subtract_continuum- Subtract a sigma-clipped polynomial continuum, leaving the line residual.