Skip to content

CSV Converter Improvements - #410

Open
kevScheuer wants to merge 7 commits into
masterfrom
csv_converter
Open

CSV Converter Improvements#410
kevScheuer wants to merge 7 commits into
masterfrom
csv_converter

Conversation

@kevScheuer

Copy link
Copy Markdown
Contributor

This pull request solves a handful of issues.

RootDataConverter Improvements

  1. Now supports Px_FinalState style 4-vector branches. Previously only the Px1 FSRoot style branches were assumed. This should now cover most use cases.
  2. Allow weights for phasespace events. This will ensure the acceptance is properly calculated in a bin.

Other

  1. The AmplitudeParser was not using the correct filtered amplitudes, and had a coherent sum in the wrong order.
  2. Default precision for writing to CSVs was increased. Addresses convert to CSV uses default float precision for ofstream #409

Originally only an FSRoot style 4-vector indexing
pattern was supported, where it was assumed
particle components were stored like "Px1", "Py1",
etc. This change allows for the FinalState style
indexing pattern, where the particle components
are stored in a single branch like
"Px_FinalState[0]", etc.

This commit also includes a bug fix where a
background tree name would be searched when no
background files existed.
Filtered amplitudes were not being properly used
to build the coherent sum groups. Also, one of
the Lme coherent sum groups was in reverse order.
@gluex

gluex commented Aug 20, 2026

Copy link
Copy Markdown

Test status for this pull request: SUCCESS

Summary: summary.txt
Logs: results/log

Build log: make_csv_converter.log
Build report: report_csv_converter.txt

@mashephe

Copy link
Copy Markdown
Contributor

There is some discussion and implementation of weights on the generated MC in this code. We need to verify that the handling of this is consistent with what is done in AmpTools.

I believe in AmpTools, all integrals are renormalized to the integer number of actual generated events. This means that weighting can only be used to redistribute events but not change the number of generated events.

I don't think I understand how this code is being used enough to know how the generated MC weight enters the algorithm and whether the use is consistent with what is done in the NormIntInterface::forceCacheUpdate and AmpliutdeManager::calcIntegrals methods.

(The changes to precision of output look fine, but there are other changes in addition to that!)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants