Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-07-26 08:18:23

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #pragma once
0010 
0011 #include "Acts/Utilities/Logger.hpp"
0012 
0013 namespace Acts::detail {
0014 
0015 /// Parameters to derive the number of phi bins of a space point grid from the
0016 /// minimum track transverse momentum and the magnetic field.
0017 struct SpacePointGridPhiBinningConfig {
0018   /// minimum pT
0019   float minPt = 0;
0020   /// magnetic field
0021   float bFieldInZ = 0;
0022   /// maximum extension of sensitive detector layer relevant for seeding as
0023   /// distance from x=y=0 (i.e. in r)
0024   float rMax = 0;
0025   /// maximum distance in r from middle space point to bottom or top
0026   /// space point
0027   float deltaRMax = 0;
0028   /// maximum impact parameter
0029   float impactMax = 0;
0030   /// Multiplicator for the number of phi-bins. The minimum number of phi-bins
0031   /// depends on min_pt, magnetic field: 2*pi/(minPT particle phi-deflection).
0032   /// phiBinDeflectionCoverage is a multiplier for this number. If
0033   /// numPhiNeighbors (in the configuration of the BinFinders) is configured
0034   /// to return 1 neighbor on either side of the current phi-bin (and you want
0035   /// to cover the full phi-range of minPT), leave this at 1.
0036   int phiBinDeflectionCoverage = 1;
0037   /// maximum number of phi bins
0038   int maxPhiBins = 10000;
0039 };
0040 
0041 /// Compute the number of phi bins of a space point grid such that each bin
0042 /// covers the maximum expected azimuthal deflection of a minimum-pT track
0043 /// between the innermost and outermost radius relevant for seeding, including
0044 /// the effect of the maximum impact parameter.
0045 /// @param config Parameters the phi bin count is derived from
0046 /// @param logger Logger instance for debugging output
0047 /// @return The number of phi bins, capped at `config.maxPhiBins`
0048 int computeSpacePointGridPhiBins(const SpacePointGridPhiBinningConfig& config,
0049                                  const Logger& logger = getDummyLogger());
0050 
0051 }  // namespace Acts::detail