CMS 3D CMS Logo

Classes | Functions | Variables
math::cholesky Namespace Reference

Classes

struct  Inverter
 
struct  Inverter< M1, M2, 1 >
 
struct  Inverter< M1, M2, 2 >
 
struct  Inverter< M1, M2, 3 >
 
struct  Inverter< M1, M2, 4 >
 
struct  Inverter< M1, M2, 5 >
 
struct  Inverter< M1, M2, 6 >
 

Functions

template<typename D1 , typename D2 >
constexpr void __attribute__ ((always_inline)) invert(Eigen
 
template<typename M1 , typename M2 >
constexpr void __attribute__ ((always_inline)) invert11(M1 const &src
 
 dst (0, 0)
 
 dst (1, 0)
 
 dst (1, 1)
 
 dst (2, 0)
 
 dst (2, 1)
 
 dst (2, 2)
 
 dst (3, 0)
 
 dst (3, 1)
 
 dst (3, 2)
 
 dst (3, 3)
 
 dst (4, 0)
 
 dst (4, 1)
 
 dst (4, 2)
 
 dst (4, 3)
 
 dst (4, 4)
 
 dst (5, 0)
 
 dst (5, 1)
 
 dst (5, 2)
 
 dst (5, 3)
 
 dst (5, 4)
 
 dst (5, 5)
 
template<typename M >
constexpr void symmetrize11 (M &dst)
 
template<typename M >
constexpr void symmetrize22 (M &dst)
 
template<typename M >
constexpr void symmetrize33 (M &dst)
 
template<typename M >
constexpr void symmetrize44 (M &dst)
 
template<typename M >
constexpr void symmetrize55 (M &dst)
 
template<typename M >
constexpr void symmetrize66 (M &dst)
 

Variables

constexpr void M2 & dst
 
auto li21 = luc1 * luc0 * luc2
 
auto li31 = (luc1 * (luc2 * luc4) - luc3) * luc0
 
auto li32 = -(luc2 * luc4)
 
auto li41 = (-luc1 * (luc2 * luc4) * (luc8 * luc5) + luc1 * (luc2 * luc7) + luc3 * (luc8 * luc5) - luc6) * luc0
 
auto li42 = (luc4 * luc8 * luc5 - luc7) * luc2
 
auto li43 = -(luc8 * luc5)
 
auto li51
 
auto li52 = (-luc4 * luc8 * luc13 * luc5 * luc9 + luc4 * luc12 * luc5 + luc7 * luc13 * luc9 - luc11) * luc2
 
auto li53 = (luc13 * luc8 * luc9 - luc12) * luc5
 
auto li54 = -luc13 * luc9
 
auto li61
 
auto li62
 
auto li63
 
auto li64 = (luc19 * luc14 * luc13 - luc18) * luc9
 
auto li65 = -luc19 * luc14
 
auto luc0 = F(1.0) / src(0, 0)
 
auto luc1 = src(1, 0) * src(1, 0) * luc0
 
auto luc10 = src(4, 0)
 
auto luc11 = (src(4, 1) - luc0 * luc1 * luc10)
 
auto luc12 = (src(4, 2) - luc0 * luc3 * luc10 - luc2 * luc4 * luc11)
 
auto luc13 = (src(4, 3) - luc0 * luc6 * luc10 - luc2 * luc7 * luc11 - luc5 * luc8 * luc12)
 
auto luc14
 
auto luc15 = src(5, 0)
 
auto luc16 = (src(5, 1) - luc0 * luc1 * luc15)
 
auto luc17 = (src(5, 2) - luc0 * luc3 * luc15 - luc2 * luc4 * luc16)
 
auto luc18 = (src(5, 3) - luc0 * luc6 * luc15 - luc2 * luc7 * luc16 - luc5 * luc8 * luc17)
 
auto luc19
 
auto luc2 = F(1.0) / (src(1, 1) - luc1)
 
auto luc20
 
auto luc3 = src(2, 0)
 
auto luc4 = (src(2, 1) - luc0 * luc1 * luc3)
 
auto luc5 = src(2, 2) - (luc0 * luc3 * luc3 + (luc2 * luc4) * luc4)
 
auto luc6 = src(3, 0)
 
auto luc7 = (src(3, 1) - luc0 * luc1 * luc6)
 
auto luc8 = (src(3, 2) - luc0 * luc3 * luc6 - luc2 * luc4 * luc7)
 
auto luc9 = src(3, 3) - (luc0 * luc6 * luc6 + luc2 * luc7 * luc7 + luc8 * (luc8 * luc5))
 

Function Documentation

◆ __attribute__() [1/2]

template<typename D1 , typename D2 >
constexpr void math::cholesky::__attribute__ ( (always_inline)  )
inlineconstexpr

Definition at line 340 of file choleskyInversion.h.

341  {
342  using M1 = Eigen::DenseBase<D1>;
343  using M2 = Eigen::DenseBase<D2>;
344  Inverter<M1, M2, M2::ColsAtCompileTime>::eval(src, dst);
345  }

References dst, math::cholesky::Inverter< M1, M2, N >::eval(), and TrackRefitter_38T_cff::src.

◆ __attribute__() [2/2]

template<typename M1 , typename M2 >
constexpr void math::cholesky::__attribute__ ( (always_inline)  ) const &
inlineconstexpr

◆ dst() [1/21]

math::cholesky::dst ( ,
 
)

◆ dst() [2/21]

math::cholesky::dst ( ,
 
)

◆ dst() [3/21]

math::cholesky::dst ( ,
 
)

◆ dst() [4/21]

math::cholesky::dst ( ,
 
)

◆ dst() [5/21]

math::cholesky::dst ( ,
 
)

◆ dst() [6/21]

math::cholesky::dst ( ,
 
)

◆ dst() [7/21]

math::cholesky::dst ( ,
 
)

◆ dst() [8/21]

math::cholesky::dst ( ,
 
)

◆ dst() [9/21]

math::cholesky::dst ( ,
 
)

◆ dst() [10/21]

math::cholesky::dst ( ,
 
)

◆ dst() [11/21]

math::cholesky::dst ( ,
 
)

◆ dst() [12/21]

math::cholesky::dst ( ,
 
)

◆ dst() [13/21]

math::cholesky::dst ( ,
 
)

◆ dst() [14/21]

math::cholesky::dst ( ,
 
)

◆ dst() [15/21]

math::cholesky::dst ( ,
 
)

◆ dst() [16/21]

math::cholesky::dst ( ,
 
)

◆ dst() [17/21]

math::cholesky::dst ( ,
 
)

◆ dst() [18/21]

math::cholesky::dst ( ,
 
)

◆ dst() [19/21]

math::cholesky::dst ( ,
 
)

◆ dst() [20/21]

math::cholesky::dst ( ,
 
)

◆ dst() [21/21]

math::cholesky::dst ( ,
 
)

◆ symmetrize11()

template<typename M >
constexpr void math::cholesky::symmetrize11 ( M &  dst)
inlineconstexpr

Definition at line 247 of file choleskyInversion.h.

247 {}

◆ symmetrize22()

template<typename M >
constexpr void math::cholesky::symmetrize22 ( M &  dst)
inlineconstexpr

Definition at line 250 of file choleskyInversion.h.

250  {
251  dst(0, 1) = dst(1, 0);
252  }

References dst.

Referenced by symmetrize33().

◆ symmetrize33()

template<typename M >
constexpr void math::cholesky::symmetrize33 ( M &  dst)
inlineconstexpr

Definition at line 255 of file choleskyInversion.h.

255  {
256  symmetrize22(dst);
257  dst(0, 2) = dst(2, 0);
258  dst(1, 2) = dst(2, 1);
259  }

References dst, and symmetrize22().

Referenced by symmetrize44().

◆ symmetrize44()

template<typename M >
constexpr void math::cholesky::symmetrize44 ( M &  dst)
inlineconstexpr

Definition at line 262 of file choleskyInversion.h.

262  {
263  symmetrize33(dst);
264  dst(0, 3) = dst(3, 0);
265  dst(1, 3) = dst(3, 1);
266  dst(2, 3) = dst(3, 2);
267  }

References dst, and symmetrize33().

Referenced by symmetrize55().

◆ symmetrize55()

template<typename M >
constexpr void math::cholesky::symmetrize55 ( M &  dst)
inlineconstexpr

Definition at line 270 of file choleskyInversion.h.

270  {
271  symmetrize44(dst);
272  dst(0, 4) = dst(4, 0);
273  dst(1, 4) = dst(4, 1);
274  dst(2, 4) = dst(4, 2);
275  dst(3, 4) = dst(4, 3);
276  }

References dst, and symmetrize44().

Referenced by symmetrize66().

◆ symmetrize66()

template<typename M >
constexpr void math::cholesky::symmetrize66 ( M &  dst)
inlineconstexpr

Definition at line 279 of file choleskyInversion.h.

279  {
280  symmetrize55(dst);
281  dst(0, 5) = dst(5, 0);
282  dst(1, 5) = dst(5, 1);
283  dst(2, 5) = dst(5, 2);
284  dst(3, 5) = dst(5, 3);
285  dst(4, 5) = dst(5, 4);
286  }

References dst, and symmetrize55().

Variable Documentation

◆ dst

math::cholesky::dst

◆ li21

auto math::cholesky::li21 = luc1 * luc0 * luc2

Definition at line 35 of file choleskyInversion.h.

Referenced by fastInvertPDM2().

◆ li31

auto math::cholesky::li31 = (luc1 * (luc2 * luc4) - luc3) * luc0

Definition at line 56 of file choleskyInversion.h.

◆ li32

auto math::cholesky::li32 = -(luc2 * luc4)

Definition at line 55 of file choleskyInversion.h.

◆ li41

auto math::cholesky::li41 = (-luc1 * (luc2 * luc4) * (luc8 * luc5) + luc1 * (luc2 * luc7) + luc3 * (luc8 * luc5) - luc6) * luc0

Definition at line 88 of file choleskyInversion.h.

◆ li42

auto math::cholesky::li42 = (luc4 * luc8 * luc5 - luc7) * luc2

Definition at line 87 of file choleskyInversion.h.

◆ li43

auto math::cholesky::li43 = -(luc8 * luc5)

Definition at line 86 of file choleskyInversion.h.

◆ li51

auto math::cholesky::li51
Initial value:
= (luc1 * luc4 * luc8 * luc13 * luc2 * luc5 * luc9 - luc13 * luc8 * luc3 * luc9 * luc5 -
luc12 * luc4 * luc1 * luc2 * luc5 - luc13 * luc7 * luc1 * luc9 * luc2 + luc11 * luc1 * luc2 +
luc12 * luc3 * luc5 + luc13 * luc6 * luc9 - luc10) *

Definition at line 135 of file choleskyInversion.h.

◆ li52

auto math::cholesky::li52 = (-luc4 * luc8 * luc13 * luc5 * luc9 + luc4 * luc12 * luc5 + luc7 * luc13 * luc9 - luc11) * luc2

Definition at line 134 of file choleskyInversion.h.

◆ li53

auto math::cholesky::li53 = (luc13 * luc8 * luc9 - luc12) * luc5

Definition at line 133 of file choleskyInversion.h.

◆ li54

auto math::cholesky::li54 = -luc13 * luc9

Definition at line 132 of file choleskyInversion.h.

◆ li61

auto math::cholesky::li61
Initial value:
=
(-luc19 * luc13 * luc8 * luc4 * luc1 * luc2 * luc5 * luc9 * luc14 +
luc18 * luc8 * luc4 * luc1 * luc2 * luc5 * luc9 + luc19 * luc12 * luc4 * luc1 * luc2 * luc5 * luc14 +
luc19 * luc13 * luc7 * luc1 * luc2 * luc9 * luc14 + luc19 * luc13 * luc8 * luc3 * luc5 * luc9 * luc14 -
luc17 * luc4 * luc1 * luc2 * luc5 - luc18 * luc7 * luc1 * luc2 * luc9 - luc19 * luc11 * luc1 * luc2 * luc14 -
luc18 * luc8 * luc3 * luc5 * luc9 - luc19 * luc12 * luc3 * luc5 * luc14 -
luc19 * luc13 * luc6 * luc9 * luc14 + luc16 * luc1 * luc2 + luc17 * luc3 * luc5 + luc18 * luc6 * luc9 +

Definition at line 212 of file choleskyInversion.h.

◆ li62

auto math::cholesky::li62
Initial value:
= (luc4 * (luc8 * luc9) * luc13 * luc5 * (luc19 * luc14) - luc18 * luc4 * (luc8 * luc9) * luc5 -
luc18 * luc7 * luc9 + luc19 * luc11 * luc14 - luc16) *

Definition at line 208 of file choleskyInversion.h.

◆ li63

auto math::cholesky::li63
Initial value:
=
(-luc8 * luc13 * (luc19 * luc14) * luc9 + luc8 * luc9 * luc18 + luc12 * (luc19 * luc14) - luc17) * luc5

Definition at line 206 of file choleskyInversion.h.

◆ li64

auto math::cholesky::li64 = (luc19 * luc14 * luc13 - luc18) * luc9

Definition at line 205 of file choleskyInversion.h.

◆ li65

auto math::cholesky::li65 = -luc19 * luc14

Definition at line 204 of file choleskyInversion.h.

◆ luc0

auto math::cholesky::luc0 = F(1.0) / src(0, 0)

Definition at line 31 of file choleskyInversion.h.

◆ luc1

auto math::cholesky::luc1 = src(1, 0) * src(1, 0) * luc0

Definition at line 32 of file choleskyInversion.h.

◆ luc10

auto math::cholesky::luc10 = src(4, 0)

Definition at line 118 of file choleskyInversion.h.

◆ luc11

auto math::cholesky::luc11 = (src(4, 1) - luc0 * luc1 * luc10)

Definition at line 119 of file choleskyInversion.h.

◆ luc12

auto math::cholesky::luc12 = (src(4, 2) - luc0 * luc3 * luc10 - luc2 * luc4 * luc11)

Definition at line 120 of file choleskyInversion.h.

◆ luc13

auto math::cholesky::luc13 = (src(4, 3) - luc0 * luc6 * luc10 - luc2 * luc7 * luc11 - luc5 * luc8 * luc12)

Definition at line 121 of file choleskyInversion.h.

◆ luc14

auto math::cholesky::luc14
Initial value:
=
src(4, 4) - (luc0 * luc10 * luc10 + luc2 * luc11 * luc11 + luc5 * luc12 * luc12 + luc9 * luc13 * luc13)

Definition at line 122 of file choleskyInversion.h.

◆ luc15

auto math::cholesky::luc15 = src(5, 0)

Definition at line 180 of file choleskyInversion.h.

◆ luc16

auto math::cholesky::luc16 = (src(5, 1) - luc0 * luc1 * luc15)

Definition at line 181 of file choleskyInversion.h.

◆ luc17

auto math::cholesky::luc17 = (src(5, 2) - luc0 * luc3 * luc15 - luc2 * luc4 * luc16)

Definition at line 182 of file choleskyInversion.h.

◆ luc18

auto math::cholesky::luc18 = (src(5, 3) - luc0 * luc6 * luc15 - luc2 * luc7 * luc16 - luc5 * luc8 * luc17)

Definition at line 183 of file choleskyInversion.h.

◆ luc19

auto math::cholesky::luc19
Initial value:
=
(src(5, 4) - luc0 * luc10 * luc15 - luc2 * luc11 * luc16 - luc5 * luc12 * luc17 - luc9 * luc13 * luc18)

Definition at line 184 of file choleskyInversion.h.

◆ luc2

auto math::cholesky::luc2 = F(1.0) / (src(1, 1) - luc1)

Definition at line 33 of file choleskyInversion.h.

◆ luc20

math::cholesky::luc20
Initial value:
= src(5, 5) - (luc0 * luc15 * luc15 + luc2 * luc16 * luc16 + luc5 * luc17 * luc17 +

Definition at line 186 of file choleskyInversion.h.

◆ luc3

auto math::cholesky::luc3 = src(2, 0)

Definition at line 49 of file choleskyInversion.h.

◆ luc4

auto math::cholesky::luc4 = (src(2, 1) - luc0 * luc1 * luc3)

Definition at line 50 of file choleskyInversion.h.

◆ luc5

auto math::cholesky::luc5 = src(2, 2) - (luc0 * luc3 * luc3 + (luc2 * luc4) * luc4)

Definition at line 51 of file choleskyInversion.h.

◆ luc6

auto math::cholesky::luc6 = src(3, 0)

Definition at line 77 of file choleskyInversion.h.

◆ luc7

auto math::cholesky::luc7 = (src(3, 1) - luc0 * luc1 * luc6)

Definition at line 78 of file choleskyInversion.h.

◆ luc8

auto math::cholesky::luc8 = (src(3, 2) - luc0 * luc3 * luc6 - luc2 * luc4 * luc7)

Definition at line 79 of file choleskyInversion.h.

◆ luc9

auto math::cholesky::luc9 = src(3, 3) - (luc0 * luc6 * luc6 + luc2 * luc7 * luc7 + luc8 * (luc8 * luc5))

Definition at line 80 of file choleskyInversion.h.

math::cholesky::luc13
auto luc13
Definition: choleskyInversion.h:121
math::cholesky::luc15
auto luc15
Definition: choleskyInversion.h:180
math::cholesky::luc2
auto luc2
Definition: choleskyInversion.h:33
math::cholesky::luc9
auto luc9
Definition: choleskyInversion.h:80
math::cholesky::luc12
auto luc12
Definition: choleskyInversion.h:120
math::cholesky::luc3
auto luc3
Definition: choleskyInversion.h:49
math::cholesky::luc10
auto luc10
Definition: choleskyInversion.h:118
math::cholesky::dst
dst(5, 5)
F
static uInt32 F(BLOWFISH_CTX *ctx, uInt32 x)
Definition: blowfish.cc:163
math::cholesky::luc6
auto luc6
Definition: choleskyInversion.h:77
math::cholesky::luc19
auto luc19
Definition: choleskyInversion.h:184
math::cholesky::symmetrize55
constexpr void symmetrize55(M &dst)
Definition: choleskyInversion.h:270
math::cholesky::luc11
auto luc11
Definition: choleskyInversion.h:119
TrackRefitter_38T_cff.src
src
Definition: TrackRefitter_38T_cff.py:24
math::cholesky::luc8
auto luc8
Definition: choleskyInversion.h:79
math::cholesky::luc7
auto luc7
Definition: choleskyInversion.h:78
math::cholesky::luc1
auto luc1
Definition: choleskyInversion.h:32
math::cholesky::luc0
auto luc0
Definition: choleskyInversion.h:31
math::cholesky::luc4
auto luc4
Definition: choleskyInversion.h:50
math::cholesky::luc18
auto luc18
Definition: choleskyInversion.h:183
math::cholesky::symmetrize22
constexpr void symmetrize22(M &dst)
Definition: choleskyInversion.h:250
math::cholesky::luc17
auto luc17
Definition: choleskyInversion.h:182
math::cholesky::symmetrize33
constexpr void symmetrize33(M &dst)
Definition: choleskyInversion.h:255
math::cholesky::luc16
auto luc16
Definition: choleskyInversion.h:181
math::cholesky::luc5
auto luc5
Definition: choleskyInversion.h:51
math::cholesky::symmetrize44
constexpr void symmetrize44(M &dst)
Definition: choleskyInversion.h:262
math::cholesky::luc14
auto luc14
Definition: choleskyInversion.h:122