Remove repeated per-branch metadata columns from CSV export
Branch intensity, endpoint, and transition are constant per branch and already documented in the CSV header. No need to repeat them as columns for every energy row.
This commit is contained in:
@@ -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):
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user