Merge branch 'pi-dev/csv-branch-info-in-header'

This commit is contained in:
2026-05-08 15:41:16 +03:00
2 changed files with 11 additions and 13 deletions
+2 -12
View File
@@ -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):
+9 -1
View File
@@ -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