File indexing completed on 2023-10-25 09:56:03
0001 #include "L1Trigger/RegionalCaloTrigger/interface/L1RCT.h"
0002 #include "L1Trigger/RegionalCaloTrigger/interface/L1RCTLookupTables.h"
0003 #include "CondFormats/L1TObjects/interface/L1RCTParameters.h"
0004
0005 #include <vector>
0006 #include <iostream>
0007 using std::vector;
0008 using std::cout;
0009 using std::endl;
0010
0011 vector<std::vector<std::vector<unsigned short> > > zeroVec(){
0012 std::vector<std::vector<std::vector<unsigned short> > > v(18,std::vector<std::vector<unsigned short> >(7,
0013 std::vector<unsigned short>(64)));
0014 return v;
0015 }
0016
0017 int main(){
0018
0019 std::vector<double> eGammaECalScaleFactors(32, 1.0);
0020 std::vector<double> eGammaHCalScaleFactors(32, 1.0);
0021 std::vector<double> jetMETECalScaleFactors(32, 1.0);
0022 std::vector<double> jetMETHCalScaleFactors(32, 1.0);
0023 std::vector<double> c,d,e,f,g,h;
0024 L1RCTParameters* rctParameters =
0025 new L1RCTParameters(1.0,
0026 1.0,
0027 3.0,
0028 40.0,
0029 0.5,
0030 1.0,
0031 50.0,
0032 1.0,
0033 2.0,
0034 3.0,
0035 3,
0036 3,
0037 3,
0038 false,
0039 false,
0040 false,
0041 false,
0042 eGammaECalScaleFactors,
0043 eGammaHCalScaleFactors,
0044 jetMETECalScaleFactors,
0045 jetMETHCalScaleFactors,
0046 c,
0047 d,
0048 e,
0049 f,
0050 g,
0051 h
0052 );
0053 L1RCTLookupTables* lut = new L1RCTLookupTables();
0054 lut->setRCTParameters(rctParameters);
0055 L1RCT rct(lut);
0056 std::vector<std::vector<unsigned short> > hf(18,std::vector<unsigned short>(8));
0057 std::vector<std::vector<std::vector<unsigned short> > > barrel(18,std::vector<std::vector<unsigned short> >(7,
0058 std::vector<unsigned short>(64)));
0059 for(int j = 0; j<4; j++){
0060 for(int i = 0; i<8; i++){
0061 barrel = zeroVec();
0062 barrel.at(0).at(0).at(j+4*i) = 10;
0063 rct.input(barrel,hf);
0064 rct.processEvent();
0065
0066
0067 barrel = zeroVec();
0068 barrel.at(0).at(0).at(j+4*i) = 5;
0069 if(i<7)
0070 barrel.at(0).at(0).at(j+4*(i+1)) = 5;
0071 else
0072 barrel.at(0).at(2).at(j) = 5;
0073 rct.input(barrel,hf);
0074 rct.processEvent();
0075 rct.printEIC(0,0);
0076
0077 rct.printEIC(0,2);
0078
0079 }
0080 }
0081
0082 }