Skip to content
Snippets Groups Projects
  • Benjamin John Rosser's avatar
    603292d6
    FPGATrackSim: update map maker to use new regions, clean up specifying planes · 603292d6
    Benjamin John Rosser authored and Walter Lampl's avatar Walter Lampl committed
    FPGATrackSim: update map maker to use new regions, clean up specifying planes
    
    Currently the map maker has a hardcoded series of vectors (of vectors of vectors)
    in its header file that define, for a given region, which physical layers are to
    be assigned to which logical layers. Then when running over a given region these
    vectors are queried to determine the logical layer assignment. This means that it
    isn't possible to make maps for an unsupported region.
    
    As we've added more algorithms that use different numbers of logical layers (the
    spacepoint version of the Hough with 9 instead of 8, the inside out algorithm with
    5 instead of 8 or 9), we've added more copies of these vectors and the header file
    for the map maker algorithm has become increasingly messy. Further, with the imminent
    move to a new set of regions that cover the full detector (1280 regions instead of 8)
    the old approach wouldn't really scale.
    
    A further change is that the algorithms we are using increasingly don't care about
    which layers are turned on in the plane map. We still want to produce a region map
    that enforces module boundaries for a given eta/phi region, but we want to do this for
    *all layers* that potentially fall within that region. Layer assignments will be done
    in a more sophisticated way (for the inside out algorithm) or not at all (for the NN
    pipeline).
    
    This commit refactors the map maker accordingly. The existing sets of hardcoded vectors
    have been removed and replaced with a single generic set of first stage and second stage
    layer assignments. These are merely the default values for two properties set from the
    Python configuration for the map maker-- where I moved all of the other options and the
    logic for checking which configuration we are running. For the new region defs right
    now we use the default for all 1280 regions.
    
    A further change is that the map maker previously was not enforcing that the events it
    processed actually contained a truth track in the region maps were being made for; as
    we now want to make maps using a set of "inclusive eta" wrapper files this also needed
    updating. The event selection service has now been hooked up to the map maker, so we impose
    the same set of truth cuts we use to make maps that we use when running the actual
    algorithm, vetoing events that don't have a truth track in the region of interest.
    603292d6
    History
    FPGATrackSim: update map maker to use new regions, clean up specifying planes
    Benjamin John Rosser authored and Walter Lampl's avatar Walter Lampl committed
    FPGATrackSim: update map maker to use new regions, clean up specifying planes
    
    Currently the map maker has a hardcoded series of vectors (of vectors of vectors)
    in its header file that define, for a given region, which physical layers are to
    be assigned to which logical layers. Then when running over a given region these
    vectors are queried to determine the logical layer assignment. This means that it
    isn't possible to make maps for an unsupported region.
    
    As we've added more algorithms that use different numbers of logical layers (the
    spacepoint version of the Hough with 9 instead of 8, the inside out algorithm with
    5 instead of 8 or 9), we've added more copies of these vectors and the header file
    for the map maker algorithm has become increasingly messy. Further, with the imminent
    move to a new set of regions that cover the full detector (1280 regions instead of 8)
    the old approach wouldn't really scale.
    
    A further change is that the algorithms we are using increasingly don't care about
    which layers are turned on in the plane map. We still want to produce a region map
    that enforces module boundaries for a given eta/phi region, but we want to do this for
    *all layers* that potentially fall within that region. Layer assignments will be done
    in a more sophisticated way (for the inside out algorithm) or not at all (for the NN
    pipeline).
    
    This commit refactors the map maker accordingly. The existing sets of hardcoded vectors
    have been removed and replaced with a single generic set of first stage and second stage
    layer assignments. These are merely the default values for two properties set from the
    Python configuration for the map maker-- where I moved all of the other options and the
    logic for checking which configuration we are running. For the new region defs right
    now we use the default for all 1280 regions.
    
    A further change is that the map maker previously was not enforcing that the events it
    processed actually contained a truth track in the region maps were being made for; as
    we now want to make maps using a set of "inclusive eta" wrapper files this also needed
    updating. The event selection service has now been hooked up to the map maker, so we impose
    the same set of truth cuts we use to make maps that we use when running the actual
    algorithm, vetoing events that don't have a truth track in the region of interest.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.