diff --git a/beta_spectrum/spectrum.py b/beta_spectrum/spectrum.py index 565e364..ca2884f 100644 --- a/beta_spectrum/spectrum.py +++ b/beta_spectrum/spectrum.py @@ -1572,19 +1572,9 @@ class BetaSpectrumAnalyzer: if self._is_multi and self.spectrum.branches: # Multi-branch mode: total spectrum + per-branch spectra + components - for i, (branch, branch_spec) in enumerate( - zip(self.spectrum.branches, self.spectrum.branch_spectra) - ): + # (branch info — intensity, endpoint, transition — is in the header, not repeated columns) + for i, branch_spec in enumerate(self.spectrum.branch_spectra): data[f"branch_{i+1}_spectrum"] = branch_spec(self.W) - data[f"branch_{i+1}_intensity"] = np.full_like( - self.energies_MeV, branch.intensity - ) - data[f"branch_{i+1}_endpoint"] = np.full_like( - self.energies_MeV, branch.endpoint_MeV - ) - data[f"branch_{i+1}_transition"] = np.full_like( - self.energies_MeV, branch.transition_type, dtype=object - ) # Per-branch components (PhaseSpace, Radiative, etc.) for i, branch_spec in enumerate(self.spectrum.branch_spectra): diff --git a/tests/test_multi_branch.py b/tests/test_multi_branch.py index d9de5a8..e35925f 100644 --- a/tests/test_multi_branch.py +++ b/tests/test_multi_branch.py @@ -466,10 +466,18 @@ class TestMultiBranchCSVExport: # Should have total spectrum column assert "spectrum" in df.columns - # Should have per-branch columns + # Should have per-branch spectrum columns (intensity/endpoint/transition are in the header) assert "branch_1_spectrum" in df.columns assert "branch_2_spectrum" in df.columns + # Should NOT have repeated per-branch metadata columns + assert "branch_1_intensity" not in df.columns + assert "branch_1_endpoint" not in df.columns + assert "branch_1_transition" not in df.columns + assert "branch_2_intensity" not in df.columns + assert "branch_2_endpoint" not in df.columns + assert "branch_2_transition" not in df.columns + # Should have universal columns assert "universal_Fermi" in df.columns