CMS 3D CMS Logo

Classes | Functions

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/CondFormats/L1TObjects/interface/L1GctJetFinderParams.h File Reference

#include <vector>
#include <stdint.h>
#include <iosfwd>

Go to the source code of this file.

Classes

class  L1GctJetFinderParams

Functions

std::ostream & operator<< (std::ostream &os, const L1GctJetFinderParams &fn)
 Overload << operator.

Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const L1GctJetFinderParams fn 
)

Overload << operator.

Definition at line 341 of file L1GctJetFinderParams.cc.

References L1GctJetFinderParams::getCenForJetEtaBoundary(), L1GctJetFinderParams::getCenJetEtSeedGeV(), L1GctJetFinderParams::getCorrType(), L1GctJetFinderParams::getForJetEtSeedGeV(), L1GctJetFinderParams::getHtJetEtThresholdGeV(), L1GctJetFinderParams::getHtLsbGeV(), L1GctJetFinderParams::getJetCorrCoeffs(), L1GctJetFinderParams::getMHtJetEtThresholdGeV(), L1GctJetFinderParams::getRgnEtLsbGeV(), L1GctJetFinderParams::getTauCorrCoeffs(), L1GctJetFinderParams::getTauIsoEtThresholdGeV(), L1GctJetFinderParams::getTauJetEtSeedGeV(), i, and j.

{
  //  os << std::setprecision(2);

  os << "=== Level-1 GCT : Jet Finder Parameters  ===" << std::endl;
  os << "RCT region LSB               : " << std::fixed << fn.getRgnEtLsbGeV() << " GeV" << std::endl;
  os << "Central jet seed threshold   : " << std::fixed << fn.getCenJetEtSeedGeV() << " GeV" << std::endl;
  os << "Tau jet seed threshold       : " << std::fixed << fn.getTauJetEtSeedGeV() << " GeV" << std::endl;
  os << "Forward jet seed threshold   : " << std::fixed << fn.getForJetEtSeedGeV() << " GeV" << std::endl;
  os << "Tau isolation threshold      : " << std::fixed << fn.getTauIsoEtThresholdGeV() << " GeV" << std::endl;
  os << "Ht jet Et threshold          : " << std::fixed << fn.getHtJetEtThresholdGeV() << " GeV" << std::endl;
  os << "MHt jet Et threshold         : " << std::fixed << fn.getMHtJetEtThresholdGeV() << " GeV" << std::endl;
  os << "Ht LSB                       : " << std::fixed << fn.getHtLsbGeV() << " GeV" << std::endl;
  os << "Central/Forward boundary     : " << std::fixed << fn.getCenForJetEtaBoundary() << std::endl;

  os << std::endl;

  os << std::setprecision(6);
  os << ios::scientific;

  os << "=== Level-1 GCT : Jet Et Calibration Function  ===" << std::endl;
  if (fn.getCorrType() == 0) {
    os << "No jet energy corrections applied" << std::endl;
  } else { 
    switch (fn.getCorrType())
    {
      case 1:
        os << "Function = Power series" << std::endl;
        break;
      case 2:
        os << "Function = ORCA" << std::endl;
        break;
      case 3:
        os << "Function = Simple" << std::endl;
        break;
      case 4:
        os << "Function = PiecewiseCubic" << std::endl;
        break;
      case 5:
        os << "Function = PF" << std::endl;
        break;
      default:
        os << "Unrecognised" << std::endl;
        break; 
    }
    std::vector< std::vector<double> > jetCoeffs = fn.getJetCorrCoeffs();
    std::vector< std::vector<double> > tauCoeffs = fn.getTauCorrCoeffs();

    os << "Non-tau jet correction coefficients" << std::endl;
    for (unsigned i=0; i<jetCoeffs.size(); i++){
      os << "Eta =" << std::setw(2) << i;
      if (jetCoeffs.at(i).empty()) {
        os << ", no coefficients";
      } else {
        os << " Coefficients = ";
        for (unsigned j=0; j<jetCoeffs.at(i).size();j++){
          os << jetCoeffs.at(i).at(j) << ", "; 
        }
      }
      os << std::endl;
    }
    os << "Tau jet correction coefficients" << std::endl;
    for (unsigned i=0; i<tauCoeffs.size(); i++){
      os << "Eta =" << std::setw(2) << i;
      if (tauCoeffs.at(i).empty()) {
        os << ", no coefficients";
      } else {
        os << " Coefficients = ";
        for (unsigned j=0; j<tauCoeffs.at(i).size();j++){
          os << tauCoeffs.at(i).at(j) << ", "; 
        }
      }
      os << std::endl;
    }
  }

  os.unsetf(ios::fixed | ios::scientific);

  return os;
}