void RegularData1DWidget::onNotify(Message *message) { if (!RTTI::isKindOf<RegularData1DMessage>(*message)) { return; } RegularData1DMessage& msg = *(RegularData1DMessage*) message; if (msg.getData() != data_) return; if ((RegularData1DMessage::RegularDataMessageType) msg.getType() == RegularData1DMessage::UPDATE) { createPlot(); } else if ((RegularData1DMessage::RegularDataMessageType) msg.getType() == RegularData1DMessage::REMOVE) { data_ = 0; Q3CanvasItemList list = canvas()->allItems(); Q3CanvasItemList::Iterator it = list.begin(); for (; it != list.end(); ++it) { if ( *it ) delete *it; } } }
void comparesample() { // load macros gROOT->ProcessLine(".L ~/tdrstyle.C"); gROOT->ProcessLine("setTDRStyle()"); // load macros std::vector<TString> samples; std::vector<TString> files; std::vector<TString> legend; samples.push_back("SMHiggs"); files.push_back(Form("SMHiggsWW_%i_JHU.root", mH)); legend.push_back("SMHiggs JP = 0+"); samples.push_back("PSHiggs"); files.push_back(Form("PSHiggsWW_%i_JHU.root", mH)); legend.push_back("PSHiggs JP = 0-"); samples.push_back("T"); files.push_back(Form("TWW_%i_JHU.root", mH)); legend.push_back("Tensor X JP = 2+"); samples.push_back("WW"); files.push_back(Form("WW_MCFM.root", mH)); legend.push_back("Non-resonant WW"); createPlot(samples, files, legend); }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); cube = 0; loadFilePlugin(); ui->tabWidget->setTabsClosable(true); ui->mainToolBar->addAction(ui->OpenFileAction); ui->mainToolBar->addAction(ui->ExitAction); m_pContextMenu = new QMenu(); m_pContextMenu->addAction(ui->CreateTableAction); m_pContextMenu->addAction(ui->PlotHeatMapAction); connect(ui->CreateTableAction,SIGNAL(triggered()),SLOT(updateTable())); connect(ui->PlotHeatMapAction,SIGNAL(triggered()),SLOT(createPlot())); connect(ui->OpenFileAction,SIGNAL(triggered()),SLOT(LoadFile())); connect(ui->tabWidget,SIGNAL(tabCloseRequested(int)),SLOT(tabClose(int))); // connect(ui->ExitAction,SIGNAL(triggered()),this,SLOT(exit())); }
QString KstIfaceImpl::createPlot(const QString& name) { QString window = activeWindow(); //if no window exists, create one if (window.isEmpty()) { window = KstApp::inst()->newWindow(false); } return createPlot(window, name); }
/** * Setter for angle mode. Not for external use! * Emits angleModeChanged. */ void Calculator::setAngleMode(const QString & newMode) { if(newMode == m_TextRad) { m_AngleMode = m_TextRad; m_NextAngleMode = m_TextDeg; if(isPlotExpression() && plotter.hasPlot()) createPlot(); emit angleModeChanged(m_AngleMode, m_NextAngleMode); } else if(newMode == m_TextDeg) { m_AngleMode = m_TextDeg; m_NextAngleMode = m_TextRad; if(isPlotExpression() && plotter.hasPlot()) createPlot(); emit angleModeChanged(m_AngleMode, m_NextAngleMode); } else errorMessage("Error", "Unknown angle mode: " + newMode); }
int main(int argc, char ** argv) { printf("RPN Plotter.\n"); if (argc < 4) { printf("Usage: plot func-file xmin xmax\n"); exit(1); } // Get arguments char * funcName = argv[1]; double maxX = 0; double minX = 0; sscanf(argv[2], "%lf", &minX); sscanf(argv[3], "%lf", &maxX); createPlot(funcName, minX, maxX); }
/** * To be called on setup changes. Creates a new plot and emits plotSetupChanged */ void Calculator::slot_Plotter_plotSetupChanged(QString plotSetup) { createPlot();//emits plotSetupChanged with new plot setup values from plotter }
/** Append text to Expression. Overwrites a trailing operator with the new one, if a sequence of * two operators is input. * Recognizes and executes C, AC and = commands. */ void Calculator::addToExpressionText(const QString & buttonText) { QString text = buttonText; try{ if(text == "C") clearLast(); else if(text == "AC") clearAll(); else if(text == "+/-") changeSign(); else if(text == m_TextRad) setAngleMode(text); else if(text == m_TextDeg) setAngleMode(text); else if(text == "=") { if(isPlotExpression()) createPlot(); else parseExpression(); } else if(text=="x") addVariable(text); else if(text.startsWith("Plot")) plotter.processPlotCommand(text); else{ //we have a digit, operator or function //no clear or evaluate command if(text == "x^y") //convert to operator text = "^"; if(isNumber(text)){ //No parenthesis, we have a digit or a decimal separator addDigit(text); emit guiStateSuggested(STATE_STANDARD); //return to std page, if on Fn Page for entering E } else if(isOperator(text)) //operator or digit { addOperator(text); } else if(isParenthesis(text)) //we have a parenthesis { addParenthesis(text); } else if(isFunction(text)) //we have a function { addFunctionCall(text); } else if(isVariable(text)) //we have a variable { addVariable(text); } else throw ExExpressionError(tr("Unknown command:") + text); } //end digit operator or function m_ExpressionText = m_ExpressionParts.join(""); if(isPlotExpression()) emit expressionTextChanged("y=" + m_ExpressionText); else emit expressionTextChanged(m_ExpressionText); } //end try catch(ExExpressionError e) { emit guiStateSuggested(STATE_STANDARD); emit errorMessage(tr("Input Error"),e.what()); } catch(std::exception e) { emit guiStateSuggested(STATE_STANDARD); emit errorMessage(tr("Unknown Input Error"),e.what()); } }
void SAMPLE() { // gROOT->ProcessLine(".L /home/yygao/tdrStyle.C"); // setTDRStyle(); std::string fileName = "ROOTDIR/SAMPLE_GLOBALTAG_SEQUENCE.root"; TFile *file = new TFile(fileName.c_str()); TText* te; TCanvas *canvas = new TCanvas("",""); // has to add ("","") to avoid creating a new canvas? bool runSecTrackColl = RUNSECTRACKCOLL; int normScale = NORMSCALE; // == 0: do nothing; 1: normalizeByEntries; 2: normalizeByIntegral // Plots filled per event createPlot(canvas, file, "perEvt", "n", 200, 0, 200, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "nVertices", 20, 0, 20, false, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "nPixelVertices", 20, 0, 20, false, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "hasGoodPvtx", 2, 0, 2, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "isBSC", 2, 0, 2, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "isTechBit40", 2, 0, 2, false, te, "UU",0.55,0.70,false,false,false,normScale); //createPlot(canvas, file, "perEvt", "glob_ls", 20, 0, 20, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "glob_bx", 100, 0, 10000, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "bsX0", 10, -10, 10, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "bsY0", 10, -10, 10, false, te, "UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perEvt", "bsZ0", 10, -10, 10, false, te, "UU",0.55,0.70,false,false,false,normScale); // Plots filled per track createPlot(canvas, file, "perTrk", "nHit", 40, 0, 40, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nLostHit", 10, 0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nPXBhit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nPXFhit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nTIBhit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nTOBhit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nTIDhit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nTEChit", 20, 0, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nLayers", 30, 0, 30, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nLayers3D", 30, 0, 30, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nPXBLayers", 10, 0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nPXFLayers", 10, 0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "nPixelHit", 10, 0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "eta", 100, -4, 4, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "pt", 100, 0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "phi", 100, -3.5, 3.5, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "dxy", 100, -1, 1, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "dz", 100, -20, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "dxyCorr", 100, -1, 1, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "dzCorr", 100, -20, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "xPCA", 100, -1, 1, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "yPCA", 100, -1, 1, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "zPCA", 100, -20, 20, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "chi2ndof", 100, 0.0, 10, runSecTrackColl, te,"UU",0.55,0.70,false,false,true,normScale); createPlot(canvas, file, "perTrk", "algo", 20, -1, 19, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perTrk", "isHighPurity", 2, 0, 2, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); // Plots filled per SiStripHit createPlot(canvas, file, "perSiHit","cluster_charge", 100, 0, 1000, runSecTrackColl, te,"UU",0.55,0.70,false,false,false,normScale); // Plot filled per Valid Vertex createPlot(canvas, file, "perGoodPvtx", "recx_pvtx", 100, 0.1, 0.3, false, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perGoodPvtx", "recy_pvtx", 100, 0, 0.3, false, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perGoodPvtx", "recz_pvtx", 100, -20, 20, false, te,"UU",0.55,0.70,false,false,false,normScale); // Plot filled per vertex createPlot(canvas, file, "perVtx", "isFake_pvtx", 2, 0, 2, false, te,"UU",0.55,0.70,false,false,false,normScale); createPlot(canvas, file, "perVtx", "recz_pxlpvtx", 100, -20, 20, false, te,"UU",0.55,0.70,false,false,false,normScale); }
int overlavMUHL_Markus() { // Path to input files // TString path = "/vols/cms01/mstoye/Muon_Control_Sample_Outpt/"; TString path = ""; // Output file TFile* output = new TFile( "Plots.root", "RECREATE" ); if ( !output || output->IsZombie() ) { return -1; } if (1) { if(false){ // set one: createPlot( path, "Meff", "Meff", "ttWPlotting_500", 5, false, true, output ); createPlot( path, "PFMET", "PFMET", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "Wpt", "WPTall", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "MeffLP", "Meff", "ttWPlotting_750", 5, false, true, output ); createPlot( path, "PFMETLP", "PFMET", "ttWPlotting_750", 25, false, true, output ); createPlot( path, "WptLP", "WPTall", "ttWPlotting_750", 25, false, true,output ); createPlot( path, "HTLep", "PFMETLepLP", "ttWPlotting_500", 25, false, true,output ); createPlot( path, "HTLepLP", "PFMETLepLP", "ttWPlotting_750", 25, false, true,output ); // } if(false){ // set one: createPlot( path, "PFMETLP", "PFMETLP", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "WPTLPLP", "PFMETPro", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "PFMETLepLPII", "PFMETLepLPII", "ttWPlotting_500", 25, false, true, output ); // } if(false){ createPlot( path, "WptLP", "WPTall", "ttWPlotting_750", 25, false, true,output ); createPlot( path, "PFMETLP", "PFMETLepLP", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "PFMET", "PFMET", "ttWPlotting_500", 25, false, true, output ); createPlot( path, "PFMETPro", "PFMETPro", "ttWPlotting_500", 25, false, true, output ); } if(false) { // createPlot( path, "WptLP", "WPTall", "post_LP_015", 25, false, true,output ); createPlot( path, "PFMETLP", "PFMETLepLP", "post_LP_015", 5, false, true, output ); createPlot( path, "PFMETLP2", "PFMETLepLP", "ttWPlotting_750", 5, false, true, output ); // createPlot( path, "DynamicCutWptplusL_all", "DynamicCutWptplusL", "ttWPlotting_750", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLI_all", "DynamicCutWptplusLI", "ttWPlotting_750", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_all", "DynamicCutWptplusLII", "ttWPlotting_750", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_2to4j", "DynamicCutWptplusLII", "post_LP_02_2to4j", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_4j", "DynamicCutWptplusLII", "post_LP_02_4j", 25, false, true, output ); // createPlot( path, "PFMET", "PFMET", "ttWPlotting_500", 25, false, true, output ); // createPlot( path, "PFMET", "PFMET", "ttWPlotting_750", 25, false, true, output ); // createPlot( path, "PFMET", "PFMET", "post_LP_02_4j", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_4j", "DynamicCutWptplusLII", "post_LP_02_2to4j", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_4j", "DynamicCutWptplusLII", "post_LP_02_2j", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLII_4j", "DynamicCutWptplusLII", "post_LP_02_4j", 25, false, true, output ); // createPlot( path, "PFMET", "PFMET", "post_LP_02_4j", 25, false, true, output ); // createPlot( path, "DynamicCutWpt", "DynamicCutWpt", "ttWPlotting_500", 25, false, false, output ); // createPlot( path, "DynamicCutWptplusL", "DynamicCutWptplusL", "ttWPlotting_500", 25, false, true, output ); // createPlot( path, "DynamicCutWptplusLNot", "DynamicCutWptplusLNot", "ttWPlotting_500", 50, false, false, output ); // createPlot( path, "DynamicCutWptplusLI", "DynamicCutWptplusLI", "ttWPlotting_500", 25, false, true, output ); //createPlot( path, "DynamicCutWptplusLNotI", "DynamicCutWptplusLNotI", "ttWPlotting_500", 50, false, false, output ); // createPlot( path, "DynamicCutWptplusLII", "DynamicCutWptplusLII", "ttWPlotting_500", 25, false, true, output ); // createPlot( path, "PFMET", "PFMET", "ttWPlotting_500", 25, false, true, output ); // createPlot( path, "PFMETPro", "PFMETLepLPII", "ttWPlotting_500", 50, false, false, output ); // createPlot( path, "PFMETLepLP", "PFMETLepLP", "ttWPlotting_500", 5, false, false, output ); // createPlot( path, "Meff", "Meff", "ttWPlotting_500", 2, false, false, output ); } if(true) { createPlot( path, "LP", "LP", "ttWPlots_150",10, false, false, output ); //createPlot( path, "LP_350", "LP350", "ttWPlotting_500", 1, false, false, output ); // createPlot( path, "LP_300", "LP300", "ttWPlotting_500", 1, false, false, output ); // createPlot( path, "LP_250", "LP220", "ttWPlotting_500", 1, false, false, output ); } // createPlot( path, "PFMETpostLP", "PFMET", "ttWPlotting_500", 25, false, false, output ); //createPlot( path, "PFMETpostLP", "PFMET", "ttWPlotting_500", 25, false, false, output ); // createPlot( path, "PFMETpostLP", "PFMET", "ttWPlotting_500", 25, false, false, output ); // createPlot( path, "Meff", "Meff", "ttWPlotting_500", 5, false, false, output ); // createPlot( path, "MuPt", "MuPt", "ttWPlotting_500", 50, false, false, output ); // createPlot( path, "PFMETPropostLP", "PFMETPro", "ttWPlotting_750", 5, false, false, output ); // createPlot( path, "PFMETLepLPpostLP", "PFMETLepLP", "ttWPlotting_750", 5, false, false, output ); // createPlot( path, "PFMETLepLPpostLPI", "PFMETLepLPI", "ttWPlotting_750", 5, false, false, output ); // createPlot( path, "PFMETLepLPpostLPII", "PFMETLepLPII", "ttWPlotting_750", 5, false, false, output ); // createPlot( path, "MT", "MT", "ttWPlotting_500", 20, false, false, output ); // createPlot( path, "MTLP", "MT", "ttWPlotting_750", 20, false, false, output ); // createPlot( path, "MuEta", "MuEta", "ttWPlotting_750", 2, false, false, output ); // createPlot( path, "LP2", "LP2", "ttWPlotting_500", 10, false, false, output ); // createPlot( path, "LP3", "LP3", "post_LP_02_2j", 10, false, false, output ); // createPlot( path, "LP34j", "LP3", "post_LP_02_4j", 10, false, false, output ); // createPlot( path, "LP4", "LP_500", "post_LP_02_4j", 5, false, false, output ); // createPlot( path, "LP44j", "LP_500", "post_LP_02_2to4j", 5, false, false, output ); // createPlot( path, "LP4", "LP_500", "ttWPlotting_500", 5, false, false, output ); // createPlot( path, "LP44j", "LP_500", "ttWPlotting_500", 5, false, false, output ); // createPlot( path, "LP4", "LP4", "ttWPlotting_500", 10, false, false, output ); /* createPlot( path, "Meff_1000", "Meff", "ttWPlotting_1000", 5, false, false, output ); createPlot( path, "jetMult_1000", "CxjetsMult", "Counter_BSMGrid_final_selection", 1, false, false, output ); createPlot( path, "MTall_750", "MT", "ttWPlotting_750", 10, false, false, output ); createPlot( path, "WPTall_750", "LP", "ttWPlotting_750", 10, false, false, output ); createPlot( path, "Meff_750", "Meff", "ttWPlotting_750", 5, false, false, output ); createPlot( path, "jetMult_750", "CxjetsMult", "Counter_BSMGrid_750", 1, false, false, output ); createPlot( path, "MTall_500", "MT", "ttWPlotting_500", 10, false, false, output ); createPlot( path, "WPTall_500", "LP", "ttWPlotting_500", 10, false, false, output ); createPlot( path, "Meff_500", "Meff", "ttWPlotting_500", 5, false, false, output ); createPlot( path, "jetMult_500", "CxjetsMult", "Counter_BSMGrid_500", 1, false, false, output ); */ //createPlot( path, "AT_lep_250", "StandardPlots/HT_all", "After_AlphaT_had", 1, false, true, output ); // createPlot( path, "AT_had_300", "StandardPlots/AlphaT_Hadronic_all", "After_350Gev", 2, false, true, output ); } if (0) { createPlot( path, "LeadingJetEta", "Eta_1", "Hadronic", 5, false, true, output ); createPlot( path, "SecondJetEta", "Eta_2", "Hadronic", 10, false, true, output ); createPlot( path, "DeltaEta", "DeltaEta_1", "Hadronic", 10, false, true, output ); createPlot( path, "DeltaR", "DeltaR_1", "Hadronic", 10, false, true, output ); createPlot( path, "LeadingJetEtaNorm", "Eta_1", "Hadronic", 10, true, true, output ); createPlot( path, "SecondJetEtaNorm", "Eta_2", "Hadronic", 10, true, true, output ); createPlot( path, "DeltaEtaNorm", "DeltaEta_1", "Hadronic", 10, true, true, output ); createPlot( path, "DeltaRNorm", "DeltaR_1", "Hadronic", 10, true, true, output ); } output->Write(); output->Close(); delete output; }
/* Arguments to createPlot(): - path to input files - canvas title - histogram title - histogram directory - rebin histograms? - normalize all histograms to unit area? - logarithmic y-scale - output file */ int overlay() { // Path to input files TString path = "./"; // Output file TFile* output = new TFile( "Plots.root", "RECREATE" ); if ( !output || output->IsZombie() ) { return -1; } if (1) { // createPlot( path, "Project sum et all", "Project_SumEt reconstuction1", "", false, true, false, output ); // createPlot( path, "Project sum et 20", "Project_SumEt reconstuction24", "", false, true, false, output ); // createPlot( path, "Project met all", "Project_Met reconstuction1", "", false, true, false, output ); // createPlot( path, "Project met 20", "Project_Met reconstuction24", "", false, true, false, output ); // createPlot( path, "Profile sum et all", "Profile_SumEt reconstuction1", "", false, true, false, output ); // createPlot( path, "Profile sum et 20", "Profile_SumEt reconstuction24", "", false, true, false, output ); // createPlot( path, "Profile met all", "Profile_Met reconstuction1", "", false, true, false, output ); // createPlot( path, "Profile met 20", "Profile_Met reconstuction24", "", false, true, false, output ); // // createPlot( path, "Project HT all", "Project_HT reconstuction1", "", false, true, false, output ); // createPlot( path, "Project HT 20", "Project_HT reconstuction24", "", false, true, false, output ); // createPlot( path, "Project mht all", "Project_Mht reconstuction1", "", false, true, false, output ); // createPlot( path, "Project mht 20", "Project_Mht reconstuction24", "", false, true, false, output ); // createPlot( path, "Profile HT all", "Profile_HT reconstuction1", "", false, true, false, output ); // createPlot( path, "Profile HT 20", "Profile_HT reconstuction24", "", false, true, false, output ); // createPlot( path, "Profile mht all", "Profile_Mht reconstuction1", "", false, true, false, output ); // createPlot( path, "Profile mht 20", "Profile_Mht reconstuction24", "", false, true, false, output ); // createPlot( path, "1DSumET", "Project_Reco Vs L1 SumEt1", "", false, true, false, output ); // createPlot( path, "DeltaEToverETMean", "EtRes_Et_1", "", false, true, false, output ); // createPlot( path, "DeltaEToverETsigma", "EtRes_Et_2", "", false, true, false, output ); // createPlot( path, "DeltaEToverETChisquared", "EtRes_Et_chi2", "", false, true, false, output ); // createPlot( path, "Turn on curves", "JetTurnOn", "", false, true, false, output ); createPlot(path, "Resolution Hadronic Barrel","Profile_ResolutionEtHB1", "",false,true,false,output); createPlot(path, "Resolution Hadronic EndCap","Profile_ResolutionEtHE1", "",false,true,false,output); createPlot(path, "Resolution Electron EndCap","Profile_ResolutionEtEE1", "",false,true,false,output); createPlot(path, "Resolution Electron Barrel","Profile_ResolutionEtEB1", "",false,true,false,output); // createPlot(path, "Resolution Hadronic Barrel","ResolutionHB", "",false,true,false,output); // createPlot(path, "Resolution Hadronic EndCap","ResolutionHE", "",false,true,false,output); // createPlot(path, "Resolution Electron Barrel","ResolutionEB", "",false,true,false,output); // createPlot(path, "Resolution Electron EndCap","ResolutionEE", "",false,true,false,output); // createPlot(path, "Resolution Hadronic Barrel","ResolutionHB", "",false,true,false,output); } if (0) { createPlot( path, "LeadingJetEta", "Eta_1", "Hadronic", 10, false, true, output ); createPlot( path, "SecondJetEta", "Eta_2", "Hadronic", 10, false, true, output ); createPlot( path, "DeltaEta", "DeltaEta_1", "Hadronic", 10, false, true, output ); createPlot( path, "DeltaR", "DeltaR_1", "Hadronic", 10, false, true, output ); createPlot( path, "LeadingJetEtaNorm", "Eta_1", "Hadronic", 10, true, true, output ); createPlot( path, "SecondJetEtaNorm", "Eta_2", "Hadronic", 10, true, true, output ); createPlot( path, "DeltaEtaNorm", "DeltaEta_1", "Hadronic", 10, true, true, output ); createPlot( path, "DeltaRNorm", "DeltaR_1", "Hadronic", 10, true, true, output ); } output->Write(); output->Close(); delete output; }
void COMPTRK() { // set up the tdr style gROOT->ProcessLine(".L ~/tdrstyle.C"); tdrstyle(); std::string fileName = "NEWFILE"; TFile *file = new TFile(fileName.c_str()); std::string reffileName = "REFFILE"; TFile *reffile = new TFile(reffileName.c_str()); TText* te; TCanvas *canvas = new TCanvas("",""); // has to add ("","") to avoid creating a new canvas? int do_CTF_SecTrk = DOCFTSECTRK; // 1: ctf; 2: sectrk int normScale = NORMSCALE; // == 0: do nothing; 1: normalizeByEntries; 2: normalizeByIntegral 3: normalizeByEvents // Plots filled per event: createPlot(canvas, file, reffile, "perEvt", "n", 100, 0, 200, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "n", 100, 0, 200, te,"UU",0.55,0.70,false,false,true,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "ctf_nHighPurity", 100, 0, 200, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "ctf_fHighPurity", 100, 0, 1.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "nVertices", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "nPixelVertices", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); // BeamSpot createPlot(canvas, file, reffile, "perEvt", "bsX0", 50, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "bsY0", 50, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "bsZ0", 50, -5, 5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "bsSigmaZ", 50, 0, 15, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "bsWidthX", 50, 0, 0.2, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perEvt", "bsWidthY", 50, 0, 0.2, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); // Plots filled per track createPlot(canvas, file, reffile, "perTrk", "nHit", 40, 0, 40, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nLostHit", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nPXBhit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nPXFhit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nTIBhit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nTOBhit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nTIDhit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nTEChit", 20, 0, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nLayers", 30, 0, 30, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nPXBLayers", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nPXFLayers", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nPixelHit", 10, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "nLayers3D", 30, 0, 30, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "eta", 60, -3, 3, te,"UU",0.15,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "pt", 100, 0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "pt", 100, 0, 10, te,"UU",0.55,0.70,false,false,true,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "phi", 70, -3.5, 3.5, te,"UU",0.15,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "dxyCorr", 100, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "dz", 100, -20, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "xPCA", 100, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "yPCA", 100, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "zPCA", 100, -20, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "chi2ndof", 100, 0.0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "algo", 10, 0.0, 10, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "isHighPurity", 2, 0.0, 2, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "dxyCorr_pvtx", 100, -0.15, 0.15, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perTrk", "dzCorr_pvtx", 100, -0.5, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); // Plots filled per Real Vertex createPlot(canvas, file, reffile, "perGoodPvtx", "nTracks_pvtx", 100, 0, 100, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perGoodPvtx", "recx_pvtx", 100, -0.1, 0.3, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perGoodPvtx", "recy_pvtx", 100, -0.1, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perGoodPvtx", "recz_pvtx", 100, -20, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); // Plots filled per Vertex createPlot(canvas, file, reffile, "perVtx", "recx_pxlpvtx", 100, -0.1, 0.3, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perVtx", "recy_pxlpvtx", 100, -0.1, 0.5, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); createPlot(canvas, file, reffile, "perVtx", "recz_pxlpvtx", 100, -20, 20, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); // Plots filled per SiStripHit createPlot(canvas, file, reffile, "perSiHit", "cluster_charge", 100, 0, 1000, te,"UU",0.55,0.70,false,false,false,do_CTF_SecTrk, normScale); }
Indicator * CUS::calculate () { Config config; QStringList varList; QDict<PlotLine> lines; lines.setAutoDelete(TRUE); checkIncludes(); Indicator *output = new Indicator; output->setDateFlag(dateFlag); output->setLogScale(logScale); int loop; for (loop = 0; loop < (int) formulaList.count(); loop++) { // check if whole line is a comment QString s = formulaList[loop].left(2); if ( ! s.compare("//")) continue; if (formulaList[loop].contains(":=")) { QStringList l = QStringList::split(":=", formulaList[loop], FALSE); if (l.count() != 2) { qDebug("CUS::calculate: line %i parm missing", loop); return output; } QString var = l[0].stripWhiteSpace(); if (varList.findIndex(var) != -1) { qDebug("CUS::calculate: line %i duplicate variable: %s", loop, var.latin1()); return output; } varList.append(var); QStringList l2 = QStringList::split("(", l[1], FALSE); if (l2.count() != 2) { qDebug("CUS::calculate: line %i bad indicator format", loop); return output; } QString plugin = l2[0].stripWhiteSpace(); QString parms = l2[1]; parms.truncate(parms.find(")", 0, TRUE)); parms = parms.stripWhiteSpace(); while(parms.contains(" ")) parms = parms.remove(parms.find(" ", 0, TRUE), 1); IndicatorPlugin *plug = config.getIndicatorPlugin(plugin); if (! plug) { qDebug("CUS::calculate: %s plugin not loaded", plugin.latin1()); config.closePlugin(plugin); return output; } plug->setIndicatorInput(data); l = QStringList::split(",", parms, FALSE); int loop2; QPtrList<PlotLine> inList; inList.setAutoDelete(FALSE); for (loop2 = 0; loop2 < (int) l.count(); loop2++) { if (varList.findIndex(l[loop2]) != -1) inList.append(lines.find(l[loop2])); else { int itype = inputTypeList.findIndex(l[loop2]); if (itype != -1) { PlotLine *in = data->getInput((BarData::InputType) itype); if (! in) { qDebug("CUS::calculate:line%i parm%i: input not found", loop, loop2); return output; } lines.replace(l[loop2], in); inList.append(in); } } } PlotLine *out = plug->calculateCustom(parms, inList); if (! out) { qDebug("CUS::calculate: line %i: no PlotLine returned: %s", loop, parms.latin1()); config.closePlugin(plugin); return output; } lines.replace(var, out); } createPlot(formulaList[loop], lines, output); } return output; }