CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Public Attributes
ProjectMatrix< T, N, D > Struct Template Reference

#include <ProjectMatrix.h>

Public Types

typedef ROOT::Math::SMatrix< T,
D, D, ROOT::Math::MatRepSym< T,
D > > 
SMatDD
 
typedef ROOT::Math::SMatrix< T,
N, D > 
SMatND
 
typedef ROOT::Math::SMatrix< T,
N, N
SMatNN
 

Public Member Functions

SMatND project (SMatDD const &s)
 
SMatNN project (SMatND const &k)
 
void projectAndSubtractFrom (SMatNN &__restrict__ s, SMatND const &__restrict__ k)
 

Public Attributes

unsigned int index [D]
 

Detailed Description

template<typename T, unsigned int N, unsigned int D>
struct ProjectMatrix< T, N, D >

Definition at line 10 of file ProjectMatrix.h.

Member Typedef Documentation

template<typename T, unsigned int N, unsigned int D>
typedef ROOT::Math::SMatrix<T,D,D,ROOT::Math::MatRepSym<T,D> > ProjectMatrix< T, N, D >::SMatDD

Definition at line 11 of file ProjectMatrix.h.

template<typename T, unsigned int N, unsigned int D>
typedef ROOT::Math::SMatrix<T,N,D > ProjectMatrix< T, N, D >::SMatND

Definition at line 13 of file ProjectMatrix.h.

template<typename T, unsigned int N, unsigned int D>
typedef ROOT::Math::SMatrix<T,N,N > ProjectMatrix< T, N, D >::SMatNN

Definition at line 12 of file ProjectMatrix.h.

Member Function Documentation

template<typename T, unsigned int N, unsigned int D>
SMatND ProjectMatrix< T, N, D >::project ( SMatDD const &  s)
inline

Definition at line 18 of file ProjectMatrix.h.

References i, ProjectMatrix< T, N, D >::index, j, alignCSCRings::r, and alignCSCRings::s.

18  {
19  SMatND r;
20  for (unsigned int i=0; i<D; i++)
21  for (unsigned int j=0; j<D; j++)
22  r(index[i],j) = s(i,j);
23  return r;
24  }
int i
Definition: DBlmapReader.cc:9
int j
Definition: DBlmapReader.cc:9
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:150
unsigned int index[D]
Definition: ProjectMatrix.h:43
ROOT::Math::SMatrix< T, N, D > SMatND
Definition: ProjectMatrix.h:13
template<typename T, unsigned int N, unsigned int D>
SMatNN ProjectMatrix< T, N, D >::project ( SMatND const &  k)
inline

Definition at line 27 of file ProjectMatrix.h.

References i, ProjectMatrix< T, N, D >::index, j, gen::k, N, and alignCSCRings::s.

27  {
28  SMatNN s;
29  for (unsigned int i=0; i<N; i++)
30  for (unsigned int j=0; j<D; j++)
31  s(i,index[j]) = k(i,j);
32  return s;
33  }
int i
Definition: DBlmapReader.cc:9
ROOT::Math::SMatrix< T, N, N > SMatNN
Definition: ProjectMatrix.h:12
int j
Definition: DBlmapReader.cc:9
int k[5][pyjets_maxn]
#define N
Definition: blowfish.cc:9
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:150
unsigned int index[D]
Definition: ProjectMatrix.h:43
template<typename T, unsigned int N, unsigned int D>
void ProjectMatrix< T, N, D >::projectAndSubtractFrom ( SMatNN &__restrict__  s,
SMatND const &__restrict__  k 
)
inline

Definition at line 36 of file ProjectMatrix.h.

References i, ProjectMatrix< T, N, D >::index, j, gen::k, N, and alignCSCRings::s.

36  {
37  for (unsigned int i=0; i<N; i++)
38  for (unsigned int j=0; j<D; j++)
39  s(i,index[j]) -= k(i,j);
40  }
int i
Definition: DBlmapReader.cc:9
int j
Definition: DBlmapReader.cc:9
int k[5][pyjets_maxn]
#define N
Definition: blowfish.cc:9
DecomposeProduct< arg, typename Div::arg > D
Definition: Factorize.h:150
unsigned int index[D]
Definition: ProjectMatrix.h:43

Member Data Documentation

template<typename T, unsigned int N, unsigned int D>
unsigned int ProjectMatrix< T, N, D >::index[D]