Skip to content

Better integration of datatypes for the drift chamber study of CEPC into EDM4hep #323

@tmadlener

Description

@tmadlener

There are a few inconsistencies in the datatypes that were introduced in #179 for the drift chamber study. A tangential but related discussion is also in #322. Opening this issue as a sort of summary discussion board to see if this situation can be improved, also keeping in mind the proposed new datatypes in #299

My main complaints for these are:

  • HitLevelData is a rather generic lwo level datatype to store pretty much any detector hit / readout. However, it has a few members that make it very gaseous detector specific. I think this should be reflected in the name

    EDM4hep/edm4hep.yaml

    Lines 239 to 244 in bd9f450

    edm4hep::HitLevelData:
    Members:
    - uint64_t cellID // cell id
    - uint32_t N // number of reconstructed ionization cluster
    - float eDep [GeV] // reconstructed energy deposit
    - float pathLength [mm] // track path length

  • Hypothesis is not properly documented and seems to be lacking a ndf field(?). Specifically it has a chi2 value, but it's not really documented what this chi2 value represents. Also the sigma docstring could be refined.

    EDM4hep/edm4hep.yaml

    Lines 232 to 236 in bd9f450

    edm4hep::Hypothesis:
    Members:
    - float chi2 // chi2
    - float expected // expected value
    - float sigma // sigma value

  • Overall the structure of the dataypes is fairly involved, but also quite separate from the rest of EDM4hep and I am wondering whether there is a way to (re-)organize the information in a cleaner way in order to make them better integrated into the rest of EDM4hep. Relation diagram of the datatypes and some EDM4hep datatypes:
    image

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions