disentangle_sb2¶
Separate the spectra of the two components of an SB2 spectroscopic binary.
| Category | Advanced |
| Backend | numpy - implemented here on top of numpy primitives |
| Version | 1.1.0 |
| Reads | ctx.spectra (a list of Spectrum1D) |
| Writes | extras.primary_spectrum, extras.secondary_spectrum, metrics.disentangle_residual_rms |
Implements the iterative alternating subtraction of Bagnuolo & Gies 1991 (not the SVD of Simon & Sturm 1994 nor the Fourier method of Hadrava 1995, cited as background). All observations are resampled onto a common log-wavelength grid so that a Doppler shift is a constant number of samples ; at each iteration the current estimate of one component is removed from every observation in the other component's rest frame, and the new estimate is the average of the residuals. Stores primary_spectrum and secondary_spectrum in ctx.extras. CAVEAT — additive continuum degeneracy: only the SUM of the two continua is constrained by the data, so the split of the continuum level between the components is arbitrary (the secondary typically comes out near a continuum of ~0 and the primary near the total) ; the line profiles are correct but a light-ratio prior is needed to renormalise each component to its own continuum. metrics['disentangle_residual_rms'] (v1.1.0) is the RMS of observation − (shifted primary + shifted secondary) after the last iteration, over the finite samples. Descending wavelength axes and non-finite samples are handled before resampling.
Parameters¶
| Parameter | Default | Required | Description |
|---|---|---|---|
v1_kms |
None |
yes | List of per-spectrum primary velocities (km/s, length = len(ctx.spectra)). |
v2_kms |
None |
yes | List of per-spectrum secondary velocities (km/s, same length). |
n_iter |
30 |
- | Number of iterations of the alternating subtraction. |
n_grid |
4096 |
- | Number of log-wavelength samples on the common grid. |
Use it¶
The CLI loads a single 1-D spectrum with --input; this algorithm needs
ctx.spectra (a list of Spectrum1D). Run it from Python or as a step of a pipeline preset.
References¶
- Bagnuolo & Gies 1991, ApJ 376, 266 — iterative alternating-subtraction ('tomographic') separation of composite spectra: the method implemented here.
- Simon & Sturm 1994, A&A 281, 286 — wavelength-domain spectral separation by singular-value decomposition (background).
- Hadrava 1995, A&AS 114, 393 — Fourier-domain disentangling (background).
Related algorithms¶
aperture_photometry- Differential aperture photometry onctx.image(photutils).doppler_tomogram- Doppler tomogram of a binary from N phase-resolved spectra.