Skip to content

add new herwig and double interactions#4222

Merged
pinkenburg merged 1 commit intosPHENIX-Collaboration:masterfrom
pinkenburg:add-new-types
Mar 17, 2026
Merged

add new herwig and double interactions#4222
pinkenburg merged 1 commit intosPHENIX-Collaboration:masterfrom
pinkenburg:add-new-types

Conversation

@pinkenburg
Copy link
Copy Markdown
Contributor

@pinkenburg pinkenburg commented Mar 17, 2026

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • [ X] New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work for users)
  • Requiring change in macros repository (Please provide links to the macros pull request in the last section)
  • I am a member of GitHub organization of sPHENIX Collaboration, EIC, or ECCE (contact Chris Pinkenburg to join)

What kind of change does this PR introduce? (Bug fix, feature, ...)

This PR adds the new Herwig Jet energies and dual interactions (jets + Detroit) to CreateFileList.pl, no jenkins test: [skip-ci]

TODOs (if applicable)

Links to other PRs in macros and calibration repositories (if applicable)

Summary

This PR extends the CreateFileList.pl script to support new Monte Carlo production types for the sPHENIX experiment.

Motivation / Context

The PR adds support for new Herwig-based jet production samples and dual-interaction production types (jets combined with Detroit background simulation). These new production types enable expanded simulation capabilities for the collaboration's physics analyses.

Key Changes

  • Production Type Expansion (Types 40–46):

    • Herwig jet samples at multiple pT thresholds: 5, 12, 20, 40, and 50 GeV (types 40–44)
    • Pythia8 Jet12 + Detroit dual interaction (type 45)
    • Pythia8 PhotonJet10 + Detroit dual interaction (type 46)
  • Implementation Details:

    • Each new production type follows established patterns in the script
    • Enables embedding functionality for all new types (Au+Au, p+Au, or central collisions)
    • Supports conditional pileup handling with appropriate pile-up rate strings
    • Generates appropriately named file keys (e.g., Herwig_Jet5, pythia8_Jet12_pythia8_Detroit)
    • Integrates with existing commonfiletypes() function for DST type registration
  • Changes to Production Descriptor Map:

    • Added 7 new entries to %proddesc hash mapping type numbers to human-readable descriptions

Potential Risk Areas

  • File Naming Conventions: Double-interaction types (45–46) use underscore-concatenated naming (pythia8_Jet12_pythia8_Detroit), which differs from typical single-generator naming patterns. Ensure database queries and file catalog parsing handle this correctly.
  • Embedding Behavior: New Herwig types inherit the full embedding infrastructure with same pileup rate mappings as pythia8 types; verify these assumptions are correct for Herwig MC.
  • Database Compatibility: File catalog queries must successfully match the new filename patterns against existing datasets.
  • IO Format Changes: No structural changes, but production selection logic now includes additional conditional branches.

Possible Future Improvements

  • Consider consolidating the repetitive elsif blocks for production types 40–46 using a data-driven approach (e.g., a configuration file or hash-based factory pattern).
  • Document the double-interaction naming convention and embedding configuration for Herwig types.
  • Add validation tests to confirm generated filename strings are correctly registered in the file catalog.

Note: AI-generated summaries may contain errors. Please verify critical details against the actual code changes.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 17, 2026

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

The PR extends production type handling in CreateFileList.pl by adding support for production types 40–46, which include Herwig jet variants (Jet5, Jet12, Jet20, Jet40, Jet50) and pythia8 jet/photon production modes with Detroit modifications, each with corresponding embed/pileup logic.

Changes

Cohort / File(s) Summary
Production Type Extensions
offline/framework/frog/CreateFileList.pl
Added prodtypes 40–46 to %proddesc mapping with descriptors for Herwig and pythia8 jet/photon productions including Detroit variants. Added corresponding elsif blocks implementing embed/pileup initialization, Detroit-specific filename construction with suffixes, and pileupstring logic consistent with existing types.

Possibly related PRs

📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

CodeRabbit can scan for known vulnerabilities in your dependencies using OSV Scanner.

OSV Scanner will automatically detect and report security vulnerabilities in your project's dependencies. No additional configuration is required.

@pinkenburg pinkenburg merged commit 51677ab into sPHENIX-Collaboration:master Mar 17, 2026
1 of 2 checks passed
@pinkenburg pinkenburg deleted the add-new-types branch March 17, 2026 14:41
@coderabbitai coderabbitai bot mentioned this pull request Mar 20, 2026
4 tasks
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.

1 participant