Skip to content

[RF][HS3] Add a new analytic_convolution_dist Streamer/Factory #22770

Description

@Phmonski

Feature description

Proposal: add analytic_convolution_dist to HS3 / RooFitHS3

RooFit currently serializes RooDecay via a dedicated decay_dist key. This is somewhat special-case: RooDecay is not just an exponential distribution, but a RooAbsAnaConvPdf that declares analytic basis functions to be convolved with a RooResolutionModel.

I propose introducing a generic analytic_convolution_dist node that represents the RooAbsAnaConvPdf concept directly:

  • observable/convolution variable
  • resolution model
  • list of analytic basis terms
  • coefficient expression/function per term

Example for RooDecay(DoubleSided):

{
  "name": "decay_gm",
  "type": "analytic_convolution_dist",
  "x": "dt",
  "resolution_model": "gm",
  "terms": [
    {
      "coefficient": "1",
      "basis": {
        "type": "exp_decay",
        "tau": "tau",
        "side": "both"
      }
    }
  ]
}

This generic node could support the following Classes:

  • RooDecay
  • RooBMixDecay
  • RooBDecay
  • RooBCPGenDecay
  • RooBCPEffDecay
  • RooNonCPEigenDecay

Requirements

This feature requires serializable categorical variables to fully support these classes in a clean way.

@cburgard @stalbrec

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions