Ignore:
Timestamp:
02/13/04 15:28:02 (21 years ago)
Author:
wittek
Message:
*** empty log message ***
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/macros/ONOFFAnalysis.C

    r2798 r3140  
    8080
    8181        MBinning *binsdiff = new MBinning("BinningDiffsigma2");
    82         binsdiff->SetEdges(100, -5.0, 20.0);
     82        binsdiff->SetEdges(100, -10.0, 15.0);
    8383        plist->AddToList(binsdiff);
    8484
     
    176176      //const char *onfile  = "~magican/ct1test/wittek/mkn421_on.preproc";
    177177      //      const char *onfile  = "~magican/ct1test/wittek/mkn421_00-01";
    178       const char *onfile  = "/data/MAGIC/rootdata/2003_11_29/20031128_031*_D_Crab-Nebula_E.root";
     178      const char *onfile  = "20040126_Crab_";
    179179
    180180     const char *mcfile  = "/data/MAGIC/mc_eth/magLQE_3/gh/0/0/G_M0_00_0_550*.root";
     
    184184
    185185      // path for input for Mars
    186       TString inPath = "/data/MAGIC/scratch/wittek/";
     186      TString inPath = "/.magic/magicserv01/scratch/";
    187187
    188188      // path for output from Mars
    189       TString outPath = "/data/MAGIC/scratch/wittek/";
     189      TString outPath = "~wittek/datacrab/";
    190190
    191191      //-----------------------------------------------
     
    203203    //  - write root file for ON (or OFF or MC) data (ON1.root, ...);
    204204
    205     Bool_t JobA    = kTRUE; 
     205    Bool_t JobA    = kFALSE; 
    206206    Bool_t GPad    = kFALSE;    // generate padding histograms?
    207207    Bool_t WPad    = kFALSE;   // write out padding histograms ?
     
    234234
    235235    Bool_t JobB_SC_UP  = kTRUE;
    236     Bool_t CMatrix     = kTRUE;  // create training and test matrices
    237     Bool_t RMatrix     = kFALSE;  // read training and test matrices from file
    238     Bool_t WOptimize   = kFALSE;  // do optimization using the training sample
     236    Bool_t CMatrix     = kFALSE;  // create training and test matrices
     237    Bool_t RMatrix     = kTRUE;  // read training and test matrices from file
     238    Bool_t WOptimize   = kTRUE;  // do optimization using the training sample
    239239                                  // and write supercuts parameter values
    240240                                  // onto the file parSCfile
    241     Bool_t RTest       = kFALSE;  // test the supercuts using the test matrix
     241    Bool_t RTest       = kTRUE;  // test the supercuts using the test matrix
    242242    Bool_t WSC         = kFALSE;  // update input root file ?
    243243
     
    312312    // names of ON and OFF files to be read
    313313    // for generating the histograms to be used in the padding
    314     TString fileON  = onfile;
     314
     315    TString fileON  = inPath;
     316    fileON += onfile;
     317    fileON += "CalibratedEvts";
     318    fileON += ".root";
    315319    TString fileOFF = offfile;
    316320    TString fileMC  = mcfile;
     
    333337    // name of input root file
    334338    if (typeInput == "ON")
    335       TString filenamein(onfile);
     339      TString filenamein(fileON);
    336340    else if (typeInput == "OFF")
    337       TString filenamein(offfile);
     341      TString filenamein(fileOFF);
    338342    else if (typeInput == "MC")
    339       TString filenamein(mcfile);
     343      TString filenamein(fileMC);
    340344    gLog << "data to be padded : " << filenamein << endl;
    341345
    342346    // name of output root file
    343347    TString outNameImage = outPath;
     348    outNameImage += onfile;
     349    outNameImage += "Hillas";
    344350    outNameImage += typeInput;
    345351    outNameImage += "1.root";
     
    375381
    376382    MReadMarsFile  readON("Events", fileON);
    377     read.DisableAutoScheme();
    378       MCT1ReadPreProc readON(fileON);
     383    readON.DisableAutoScheme();
     384    //MCT1ReadPreProc readON(fileON);
    379385
    380386      //MFSelBasic selthetaon;
     
    454460
    455461    MReadMarsFile  readOFF("Events", fileOFF);
    456     read.DisableAutoScheme();
     462    readOFF.DisableAutoScheme();
    457463    //      MCT1ReadPreProc readOFF(fileOFF);
    458464
     
    534540
    535541    MReadMarsFile  readMC("Events", fileMC);
    536     read.DisableAutoScheme();
     542    readMC.DisableAutoScheme();
    537543    //      MCT1ReadPreProc readMC(fileMC);
    538544
     
    656662
    657663    MGeomApply        apply;
    658     MMcPedestalCopy   pcopy;
    659     MMcPedestalNSBAdd pnsb;
    660664
    661665    MPedestalWorkaround waround;
     
    667671    f2.SetName("Select Data");
    668672
    669     MCerPhotCalc      ncalc;
    670     ncalc.SetFilter(&f1);
    671     MCerPhotAnal2     nanal;
    672     nanal.SetFilter(&f2);
    673 
    674673    //if (typeInput ==  "ON")
    675674    //{
     
    690689    contbasic.SetName("SelBasic");
    691690
    692     MFillH fillblind("BlindPixels[MHBlindPixels]", "MBlindPixels");
    693     fillblind.SetName("HBlind");
     691    //MFillH fillblind("BlindPixels[MHBlindPixels]", "MBlindPixels");
     692    //fillblind.SetName("HBlind");
    694693
    695694    MSigmabarCalc sigbarcalc;
     
    734733    selstandard.SetHillasName(fHilName);
    735734    selstandard.SetImgParName(fImgParName);
    736     selstandard.SetCuts(92, 4, 60, 0.4, 1.05, 0.0, 0.0);
     735    selstandard.SetCuts(100, 4, 20, 0.0, 1.0, 0.0, 0.0);
    737736    MContinue contstandard(&selstandard);
    738737    contstandard.SetName("SelStandard");
    739738
    740 
     739   
    741740      MWriteRootFile write(outNameImage);
    742741
    743742      write.AddContainer("MRawRunHeader", "RunHeaders");
    744       write.AddContainer("MMcRunHeader",  "RunHeaders", kFALSE);
     743      //write.AddContainer("MMcRunHeader",  "RunHeaders", kFALSE);
    745744      //write.AddContainer("MTime",         "Events");
    746745      write.AddContainer("MMcEvt",        "Events");
     
    752751      write.AddContainer("MHillasSrc",    "Events");
    753752      write.AddContainer("MNewImagePar",  "Events");
    754 
     753   
    755754
    756755    //*****************************
     
    767766    tliston.AddToList(&read);
    768767
    769     tliston.AddToList(&f1);
    770     tliston.AddToList(&f2);
     768    //tliston.AddToList(&f1);
     769    //tliston.AddToList(&f2);
    771770    tliston.AddToList(&apply);
    772     tliston.AddToList(&pcopy);
    773     //tliston.AddToList(&waround);
    774 
    775     tliston.AddToList(&pnsb);
    776     tliston.AddToList(&ncalc);
    777     tliston.AddToList(&nanal);
    778 
    779     tliston.AddToList(&blindbeforepad);
     771    tliston.AddToList(&waround);
     772
     773    //tliston.AddToList(&blindbeforepad);
    780774    //  tliston.AddToList(&pad);
    781775    //  if (typeInput ==  "ON")
    782776    //  tliston.AddToList(&pointcorr);
    783     tliston.AddToList(&blind);
     777
     778    //tliston.AddToList(&blind);
    784779    tliston.AddToList(&contbasic);
    785780
    786     tliston.AddToList(&fillblind);
     781    //tliston.AddToList(&fillblind);
    787782    tliston.AddToList(&sigbarcalc);
    788783    tliston.AddToList(&fillsigtheta);
     
    825820
    826821    pliston.FindObject("SigmaTheta", "MHSigmaTheta")->DrawClone();
    827     pliston.FindObject("BlindPixels", "MHBlindPixels")->DrawClone();
     822    //pliston.FindObject("BlindPixels", "MHBlindPixels")->DrawClone();
    828823
    829824    pliston.FindObject("MHHillas")->DrawClone();
     
    17701765
    17711766    TString parSCinit = outPath;
    1772     //parSCinit += "parSC_1709d";
    1773     parSCinit = "";
    1774 
    1775     gLog << "parSCinit = " << parSCinit << endl;
     1767    parSCinit += "parSC_060204a";
     1768    //parSCinit = "";
     1769
     1770    if (parSCinit != "")
     1771    {
     1772      gLog << "Initial values of parameters are taken from file '"
     1773           << parSCinit << "'" << endl;
     1774    }
     1775    else
     1776    {
     1777      gLog << "Initial values of parameters are taken from the constructor of MSupercuts"
     1778           << endl;
     1779    }
     1780
    17761781
    17771782    //---------------
     
    17801785
    17811786    TString parSCfile = outPath;
    1782     parSCfile += "parSC_2310a";
     1787    parSCfile += "parSC_060204b";
    17831788
    17841789    gLog << "parSCfile = " << parSCfile << endl;
     
    17871792    // file to be updated (either ON or MC)
    17881793
    1789     //TString typeInput = "ON";
     1794    TString typeInput = "ON";
    17901795    //TString typeInput = "OFF";
    1791     TString typeInput = "MC";
     1796    //TString typeInput = "MC";
    17921797    gLog << "typeInput = " << typeInput << endl;
    17931798
    17941799    // name of input root file
    17951800    TString filenameData = outPath;
     1801    filenameData += onfile;
     1802    filenameData += "Hillas";
    17961803    filenameData += typeInput;
    1797     filenameData += "2.root";
     1804    filenameData += "1.root";
    17981805    gLog << "filenameData = " << filenameData << endl;
    17991806
    18001807    // name of output root file
    18011808    TString outNameImage = outPath;
     1809    outNameImage += onfile;
     1810    outNameImage += "Hillas";
    18021811    outNameImage += typeInput;
    1803     outNameImage += "3.root";
     1812    outNameImage += "2.root";
    18041813   
    18051814
     
    18131822    // for the training
    18141823    TString filenameTrain = outPath;
    1815     filenameTrain += "ON";
     1824    filenameTrain += onfile;
     1825    filenameTrain += "Hillas";
     1826    filenameTrain += typeInput;
    18161827    filenameTrain += "1.root";
    1817     Int_t howManyTrain = 800000;
     1828    Int_t howManyTrain = 7000;
    18181829    gLog << "filenameTrain = " << filenameTrain << ",   howManyTrain = "
    18191830         << howManyTrain  << endl;
     
    18211832    // for testing
    18221833    TString filenameTest = outPath;
    1823     filenameTest += "ON";
     1834    filenameTest += onfile;
     1835    filenameTest += "Hillas";
     1836    filenameTest += typeInput;
    18241837    filenameTest += "1.root";
    1825     Int_t howManyTest = 800000;
     1838    Int_t howManyTest = 7000;
    18261839
    18271840    gLog << "filenameTest = " << filenameTest << ",   howManyTest = "
     
    19301943    TArrayD steps(0);
    19311944 
     1945
    19321946    if (parSCinit == "")
    19331947    {
    19341948      Double_t vparams[104] = {
    19351949      // LengthUp
    1936         0.315585,  0.001455, 0.203198, 0.005532, -0.001670, -0.020362,
    1937         0.007388, -0.013463,
     1950        0.2,       0.,       0.,       0.,        0.,        0.0,
     1951        0.,        0.,
    19381952      // LengthLo
    1939         0.151530,  0.028323, 0.510707, 0.053089,  0.013708,  2.357993,
    1940         0.000080, -0.007157,
     1953        0.,        0.,       0.,       0.,        0.,        0.0,
     1954        0.,        0.,
    19411955      // WidthUp
    1942         0.145412, -0.001771, 0.054462, 0.022280, -0.009893,  0.056353,
    1943         0.020711, -0.016703,
     1956        0.1,       0.,       0.,       0.,        0.,        0.0,
     1957        0.,        0.,
    19441958      // WidthLo
    1945         0.089187, -0.006430, 0.074442, 0.003738, -0.004256, -0.014101,
    1946         0.006126, -0.002849,
     1959        0.,        0.,       0.,       0.,        0.,        0.0,
     1960        0.,        0.,
    19471961      // DistUp
    1948         1.787943,  0.0,      2.942310, 0.199815,  0.0,       0.249909,
    1949         0.189697,  0.0,
     1962        0.,        0.,       0.,       0.,        0.,        0.0,
     1963        0.,        0.,
    19501964      // DistLo
    1951         0.589406,  0.0,     -0.083964,-0.007975,  0.0,       0.045374,
    1952        -0.001750,  0.0,
     1965        0.,        0.,       0.,       0.,        0.,        0.0,
     1966        0.,        0.,
    19531967      // AsymUp
    19541968        1.e10,     0.0,      0.0,      0.0,       0.0,       0.0,
     
    19751989      Double_t vsteps[104] = {
    19761990      // LengthUp
    1977         0.03,      0.0002,   0.02,     0.0006,    0.0002,    0.002,
    1978         0.0008,    0.002,
     1991        0.02,      0.,       0.,       0.,        0.,        0.0,
     1992        0.,        0.,
    19791993      // LengthLo
    1980         0.02,      0.003,    0.05,     0.006,     0.002,     0.3,
    1981         0.0001,    0.0008,
     1994        0.,        0.,       0.,       0.,        0.,        0.0,
     1995        0.,        0.,
    19821996      // WidthUp
    1983         0.02,      0.0002,   0.006,    0.003,     0.002,     0.006,
    1984         0.002,     0.002,
     1997        0.01,      0.,       0.,       0.,        0.,        0.0,
     1998        0.,        0.,
    19851999      // WidthLo
    1986         0.009,     0.0007,   0.008,    0.0004,    0.0005,    0.002,
    1987         0.0007,    0.003,
     2000        0.,        0.,       0.,       0.,        0.,        0.0,
     2001        0.,        0.,
    19882002      // DistUp
    1989         0.2,       0.0,      0.3,      0.02,      0.0,       0.03,
    1990         0.02,      0.0
     2003        0.,        0.,       0.,       0.,        0.,        0.0,
     2004        0.,        0.,
    19912005      // DistLo
    1992         0.06,      0.0,      0.009,    0.0008,    0.0,       0.005,
    1993         0.0002,    0.0
    1994       // AsymUp 
     2006        0.,        0.,       0.,       0.,        0.,        0.0,
     2007        0.,        0.,
     2008      // AsymUp
    19952009        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    19962010        0.0,       0.0,
    1997       // AsymLo 
     2011      // AsymLo
    19982012        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    19992013        0.0,       0.0,
    2000       // ConcUp 
     2014      // ConcUp
    20012015        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    20022016        0.0,       0.0,
    2003       // ConcLo 
     2017      // ConcLo
    20042018        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    20052019        0.0,       0.0,
    2006       // Leakage1Up 
     2020      // Leakage1Up
    20072021        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    20082022        0.0,       0.0,
    2009       // Leakage1Lo 
     2023      // Leakage1Lo
    20102024        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    20112025        0.0,       0.0,
    2012       // AlphaUp 
    2013         0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
     2026      // AlphaUp
     2027        0.0,       0.0,      0.0,      0.0,       0.0,       0.0,
    20142028        0.0,       0.0                                                 };
     2029
    20152030
    20162031      params.Set(104, vparams);
     
    21422157
    21432158      write.AddContainer("MRawRunHeader", "RunHeaders");
    2144       write.AddContainer("MTime",         "Events");
     2159      //write.AddContainer("MTime",         "Events");
    21452160      write.AddContainer("MMcEvt",        "Events");
    2146       write.AddContainer("ThetaOrig",     "Events");
     2161      //write.AddContainer("ThetaOrig",     "Events");
    21472162      write.AddContainer("MSrcPosCam",    "Events");
    21482163      write.AddContainer("MSigmabar",     "Events");
     
    21522167      write.AddContainer("MNewImagePar",  "Events");
    21532168
    2154       write.AddContainer("HadRF",         "Events");
     2169      //write.AddContainer("HadRF",         "Events");
    21552170      write.AddContainer(hadSCName,       "Events");
    21562171   
Note: See TracChangeset for help on using the changeset viewer.