CMS 3D CMS Logo

Functions
GoldenPattern.cc File Reference
#include <iostream>
#include <iomanip>
#include <cmath>
#include "FWCore/MessageLogger/interface/MessageLogger.h"
#include "L1Trigger/L1TMuonOverlap/interface/GoldenPattern.h"
#include "L1Trigger/L1TMuonOverlap/interface/OMTFConfiguration.h"
#include "L1Trigger/L1TMuonOverlap/interface/OMTFinput.h"

Go to the source code of this file.

Functions

std::ostream & operator<< (std::ostream &out, const GoldenPattern &aPattern)
 

Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const GoldenPattern aPattern 
)

Definition at line 85 of file GoldenPattern.cc.

References GoldenPattern::meanDistPhi, GoldenPattern::meanDistPhiCounts, MillePedeFileConverter_cfg::out, GoldenPattern::pdfAllRef, and GoldenPattern::theKey.

85  {
86 
87  out <<"GoldenPattern "<< aPattern.theKey <<std::endl;
88  out <<"Number of reference layers: "<<aPattern.meanDistPhi[0].size()
89  <<", number of measurement layers: "<<aPattern.pdfAllRef.size()
90  <<std::endl;
91 
92  if(aPattern.meanDistPhi.empty()) return out;
93  if(aPattern.pdfAllRef.empty()) return out;
94 
95  out<<"Mean dist phi per layer:"<<std::endl;
96  for (unsigned int iRefLayer=0;iRefLayer<aPattern.meanDistPhi[0].size();++iRefLayer){
97  out<<"Ref layer: "<<iRefLayer<<" (";
98  for (unsigned int iLayer=0;iLayer<aPattern.meanDistPhi.size();++iLayer){
99  out<<std::setw(3)<<aPattern.meanDistPhi[iLayer][iRefLayer]<<"\t";
100  }
101  out<<")"<<std::endl;
102  }
103 
104  if(!aPattern.meanDistPhiCounts.empty()){
105  out<<"Counts number per layer:"<<std::endl;
106  for (unsigned int iRefLayer=0;iRefLayer<aPattern.meanDistPhi[0].size();++iRefLayer){
107  out<<"Ref layer: "<<iRefLayer<<" (";
108  for (unsigned int iLayer=0;iLayer<aPattern.meanDistPhi.size();++iLayer){
109  out<<aPattern.meanDistPhiCounts[iLayer][iRefLayer]<<"\t";
110  }
111  out<<")"<<std::endl;
112  }
113  }
114 
115  unsigned int nPdfAddrBits = 7;
116  out<<"PDF per layer:"<<std::endl;
117  for (unsigned int iRefLayer=0;iRefLayer<aPattern.pdfAllRef[0].size();++iRefLayer){
118  out<<"Ref layer: "<<iRefLayer;
119  for (unsigned int iLayer=0;iLayer<aPattern.pdfAllRef.size();++iLayer){
120  out<<", measurement layer: "<<iLayer<<std::endl;
121  for (unsigned int iPdf=0;iPdf<exp2(nPdfAddrBits);++iPdf){
122  out<<std::setw(2)<<aPattern.pdfAllRef[iLayer][iRefLayer][iPdf]<<" ";
123  }
124  out<<std::endl;
125  }
126  }
127 
128  return out;
129 }
vector2D meanDistPhiCounts
vector2D meanDistPhi
Key theKey
Pattern kinematical identification (iEta,iPt,iCharge)
vector3D pdfAllRef