#include <ProjectionRouterBendTable.h>
Definition at line 16 of file ProjectionRouterBendTable.h.
◆ ProjectionRouterBendTable()
trklet::ProjectionRouterBendTable::ProjectionRouterBendTable |
( |
| ) |
|
|
inline |
◆ ~ProjectionRouterBendTable()
trklet::ProjectionRouterBendTable::~ProjectionRouterBendTable |
( |
| ) |
|
|
default |
◆ bendLoookup()
int ProjectionRouterBendTable::bendLoookup |
( |
int |
diskindex, |
|
|
int |
bendindex |
|
) |
| |
◆ init()
void ProjectionRouterBendTable::init |
( |
Settings const & |
settings, |
|
|
Globals * |
globals, |
|
|
unsigned int |
nrbits, |
|
|
unsigned int |
nphiderbits |
|
) |
| |
Definition at line 8 of file ProjectionRouterBendTable.cc.
12 for (
unsigned int idisk = 0; idisk <
N_DISK; idisk++) {
13 unsigned int nsignbins = 2;
14 unsigned int nrbins = 1 << (nrbits);
15 unsigned int nphiderbins = 1 << (nphiderbits);
17 for (
unsigned int isignbin = 0; isignbin < nsignbins; isignbin++) {
18 for (
unsigned int irbin = 0; irbin < nrbins; irbin++) {
20 if (ir > (1 << (nrbits - 1)))
22 ir = ir << (settings.nrbitsstub(
N_LAYER) - nrbits);
23 for (
unsigned int iphiderbin = 0; iphiderbin < nphiderbins; iphiderbin++) {
24 int iphider = iphiderbin;
25 if (iphider > (1 << (nphiderbits - 1)))
26 iphider -= (1 << nphiderbits);
27 iphider = iphider << (settings.nbitsphiprojderL123() - nphiderbits);
29 double rproj = ir * settings.krprojshiftdisk();
31 double t = settings.zmean(idisk) / rproj;
36 double rinv = -phider * (2.0 *
t);
38 double stripPitch = (rproj < settings.rcrit()) ? settings.stripPitch(
true) : settings.stripPitch(
false);
39 double bendproj = 0.5 *
bend(rproj,
rinv, stripPitch);
41 int ibendproj = 2.0 * bendproj + 15.5;
References trklet::bend(), bendtable_, trklet::IMATH_TrackletCalculator::der_phiD_final, trklet::Globals::ITC_L1L2(), trklet::VarBase::K(), trklet::Settings::krprojshiftdisk(), trklet::N_DISK, trklet::N_LAYER, trklet::Settings::nbitsphiprojderL123(), trklet::Settings::nrbitsstub(), trklet::Settings::rcrit(), trklet::rinv(), trklet::Settings::stripPitch(), submitPVValidationJobs::t, and trklet::Settings::zmean().
◆ bendtable_
std::vector<int> trklet::ProjectionRouterBendTable::bendtable_[N_DISK] |
|
private |