ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkVertexFitter
TrkVKalVrtCore
TrkVKalVrtCore
ForCFT.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef _TrkVKalVrtCore_ForCFT_H
6
#define _TrkVKalVrtCore_ForCFT_H
7
8
#include "
TrkVKalVrtCore/CommonPars.h
"
9
10
namespace
Trk
{
11
12
struct
ForCFT
13
{
14
//
15
int
useMassCnst
{};
16
int
usePhiCnst
{};
17
int
useThetaCnst
{};
18
int
usePointingCnst
{};
19
int
useAprioriVrt
{};
20
int
usePassNear
{};
21
int
usePlaneCnst
{};
22
int
useRadiusCnst
{};
23
24
//
25
// For several(up to 8) mass constraints
26
int
nmcnst
;
27
double
wm
[
vkalNTrkM
];
28
double
wmfit
[
vkalMaxNMassCnst
];
29
double
localbmag
;
30
// Since 20/09/2009 - Vertex in plane constraint
31
double
Ap
{};
32
double
Bp
{};
33
double
Cp
{};
34
double
Dp
{};
35
double
RC
{};
36
double
radiusRefP
[2]{};
37
38
//
39
// Vertex, covariance and it's weight (inverse covariance)
40
// Used for pointing and a priori vertex constraints
41
// Since 15/03/2009:
42
// For "passing near" vrt+covvrt+charge from ForVrtClose structure is used.
43
// For pointing cnst vertex from constraint object itself is used
44
//---------------------------------------------------------------------------
45
double
vrt
[3]{},
covvrt
[6]{},
wgtvrt
[6]{};
46
//
47
// temporary vertex in global ref.frame
48
double
vrtstp
[3]{};
49
int
irob
;
50
double
RobustScale
;
51
double
robres
[
vkalNTrkM
];
52
int
indtrkmc
[
vkalMaxNMassCnst
][
vkalNTrkM
];
53
int
IterationNumber
;
54
double
IterationPrecision
;
55
56
void
prcfit
(
long
int
ntrk,
double
*
wm
,
const
double
*
wmfit
,
double
bmag,
const
double
*
vrt
,
const
double
*vrte)
noexcept
;
57
58
void
vksetIterationNum
(
long
int
Iter)
noexcept
;
59
void
vksetIterationPrec
(
double
Prec)
noexcept
;
60
void
vksetRobustScale
(
double
Scale
)
noexcept
;
61
void
vksetRobustness
(
long
int
Rob)
noexcept
;
62
void
vksetUseMassCnst
() noexcept;
63
void
vksetUsePhiCnst
() noexcept;
64
void
vksetUsePlaneCnst
(
double
a
,
double
b,
double
c,
double
d) noexcept;
65
void
vksetUseThetaCnst
() noexcept {
useThetaCnst
= 1;}
66
void
vksetUseAprioriVrt
() noexcept {
useAprioriVrt
= 1;}
67
void
vksetUsePointingCnst
(
int
iType = 1 ) noexcept {
usePointingCnst
= iType<2 ? 1 : 2 ;}
68
void
vksetUsePassNear
(
int
iType = 1 ) noexcept {
usePassNear
= iType<2 ? 1 : 2 ;}
69
void
setmasscnst_
(
long
int
ncnsttrk,
long
int
*indextrk,
double
wmcnst)
noexcept
;
70
71
ForCFT
() noexcept;
//Body is in PrCFit.cxx
72
~
ForCFT
() = default;
73
74
};
75
76
}
77
#endif
CommonPars.h
vkalMaxNMassCnst
#define vkalMaxNMassCnst
Definition
CommonPars.h:27
vkalNTrkM
#define vkalNTrkM
Definition
CommonPars.h:22
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
Scale
void Scale(TH1 *h, double d=1)
Definition
comparitor.cxx:79
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::ForCFT::useMassCnst
int useMassCnst
Definition
ForCFT.h:15
Trk::ForCFT::wgtvrt
double wgtvrt[6]
Definition
ForCFT.h:45
Trk::ForCFT::vksetRobustScale
void vksetRobustScale(double Scale) noexcept
Definition
PrCFit.cxx:155
Trk::ForCFT::usePhiCnst
int usePhiCnst
Definition
ForCFT.h:16
Trk::ForCFT::useRadiusCnst
int useRadiusCnst
Definition
ForCFT.h:22
Trk::ForCFT::vksetUsePhiCnst
void vksetUsePhiCnst() noexcept
Definition
PrCFit.cxx:170
Trk::ForCFT::robres
double robres[vkalNTrkM]
Definition
ForCFT.h:51
Trk::ForCFT::indtrkmc
int indtrkmc[vkalMaxNMassCnst][vkalNTrkM]
Definition
ForCFT.h:52
Trk::ForCFT::Dp
double Dp
Definition
ForCFT.h:34
Trk::ForCFT::vksetUseThetaCnst
void vksetUseThetaCnst() noexcept
Definition
ForCFT.h:65
Trk::ForCFT::useThetaCnst
int useThetaCnst
Definition
ForCFT.h:17
Trk::ForCFT::RC
double RC
Definition
ForCFT.h:35
Trk::ForCFT::prcfit
void prcfit(long int ntrk, double *wm, const double *wmfit, double bmag, const double *vrt, const double *vrte) noexcept
Definition
PrCFit.cxx:44
Trk::ForCFT::vksetIterationNum
void vksetIterationNum(long int Iter) noexcept
Definition
PrCFit.cxx:141
Trk::ForCFT::usePlaneCnst
int usePlaneCnst
Definition
ForCFT.h:21
Trk::ForCFT::IterationPrecision
double IterationPrecision
Definition
ForCFT.h:54
Trk::ForCFT::vksetIterationPrec
void vksetIterationPrec(double Prec) noexcept
Definition
PrCFit.cxx:148
Trk::ForCFT::covvrt
double covvrt[6]
Definition
ForCFT.h:45
Trk::ForCFT::Cp
double Cp
Definition
ForCFT.h:33
Trk::ForCFT::irob
int irob
Definition
ForCFT.h:49
Trk::ForCFT::radiusRefP
double radiusRefP[2]
Definition
ForCFT.h:36
Trk::ForCFT::Ap
double Ap
Definition
ForCFT.h:31
Trk::ForCFT::vksetUsePassNear
void vksetUsePassNear(int iType=1) noexcept
Definition
ForCFT.h:68
Trk::ForCFT::vksetRobustness
void vksetRobustness(long int Rob) noexcept
Definition
PrCFit.cxx:162
Trk::ForCFT::useAprioriVrt
int useAprioriVrt
Definition
ForCFT.h:19
Trk::ForCFT::IterationNumber
int IterationNumber
Definition
ForCFT.h:53
Trk::ForCFT::vksetUseAprioriVrt
void vksetUseAprioriVrt() noexcept
Definition
ForCFT.h:66
Trk::ForCFT::RobustScale
double RobustScale
Definition
ForCFT.h:50
Trk::ForCFT::localbmag
double localbmag
Definition
ForCFT.h:29
Trk::ForCFT::wm
double wm[vkalNTrkM]
Definition
ForCFT.h:27
Trk::ForCFT::nmcnst
int nmcnst
Definition
ForCFT.h:26
Trk::ForCFT::usePointingCnst
int usePointingCnst
Definition
ForCFT.h:18
Trk::ForCFT::vksetUsePlaneCnst
void vksetUsePlaneCnst(double a, double b, double c, double d) noexcept
Definition
PrCFit.cxx:171
Trk::ForCFT::vksetUseMassCnst
void vksetUseMassCnst() noexcept
Definition
PrCFit.cxx:169
Trk::ForCFT::usePassNear
int usePassNear
Definition
ForCFT.h:20
Trk::ForCFT::wmfit
double wmfit[vkalMaxNMassCnst]
Definition
ForCFT.h:28
Trk::ForCFT::ForCFT
ForCFT() noexcept
Definition
PrCFit.cxx:123
Trk::ForCFT::vksetUsePointingCnst
void vksetUsePointingCnst(int iType=1) noexcept
Definition
ForCFT.h:67
Trk::ForCFT::Bp
double Bp
Definition
ForCFT.h:32
Trk::ForCFT::vrtstp
double vrtstp[3]
Definition
ForCFT.h:48
Trk::ForCFT::vrt
double vrt[3]
Definition
ForCFT.h:45
Trk::ForCFT::setmasscnst_
void setmasscnst_(long int ncnsttrk, long int *indextrk, double wmcnst) noexcept
Definition
PrCFit.cxx:179
Generated on
for ATLAS Offline Software by
1.17.0