Kalanand's June 2011 Log

   May 2011   
June 2011
   July 2011   

June 18th

Multivariate training with TMVA

Today I sent email to Alexx Perloff with instructions on how to run multi-variate training. I copy the email below so that I don't have to type again :-)
Please checkout the TMVA package from sourceforge and compile. Then 
checkout files from  UserCode/kalanand/mva/

 Then: start with the file called "WWTMVAClassification.C". The file has lots of 
comments and is kind of selfexplanatory. You will need to update the 
acceptance cuts, the input file names (for W+jets and WW trees), and variables 
to use for optimization. The TMVA supports a number of classifiers for optimization:
cut & count, neural net, decision trees: simple/baggining/boosted, k-nearest-neighbor,
random forest, fisher, ... to name just a few.

  You can run one algorithm at a time, using commands like:

root -l WWTMVAClassification.C\(\"BDT\"\)
root -l WWTMVAClassification.C\(\"KNN\"\)
root -l WWTMVAClassification.C\(\"Likelihood\"\)
root -l WWTMVAClassification.C\(\"MLP\"\)
root -l WWTMVAClassification.C\(\"Fisher\"\)
root -l WWTMVAClassification.C\(\"Cuts\"\)

June 23rd

CVS checkout a given tag and directory

Here are the steps (thanks Steve Mrenna for figuring out)

1. Go to the directory you want to import
2. Type "cvs import UserCode/kalanand/ThisDirectory vtag start"
    vtag is a made-up version tag, start is an example release tag
3. To use, type "cvs co -l UserCode/ThisDirectory UserCode/kalanand/ThisDirectory"

June 27th

HLTHighLevel filter

The following filter will select the events which pass any of the trigger paths in the list (logical OR). You can change the boolean parameter "andOR" to True if you want the logical AND.
##-------- Electron events of interest --------
HLTEle =cms.EDFilter("HLTHighLevel",
     TriggerResultsTag = cms.InputTag("TriggerResults","","HLT"),
     HLTPaths = cms.vstring("HLT_Photon15_Cleaned_L1R", "HLT_Ele15_*", "HLT_Ele17_*", "HLT_Ele22_*", "HLT_Ele25_*","HLT_Ele27_*", "HLT_Ele32_*"),
     eventSetupPathsKey = cms.string(''),
     andOr = cms.bool(True), #----- True = OR, False = AND between the HLTPaths
     throw = cms.bool(False) # throw exception on unknown path names
Now if you want to exclude a (set of) trigger(s) then you simply include the filter in the path with a twilde(~) sign before its name, e.g.,
EleVetoSequence = cms.Sequence(  ~HLTEle)
will reject events which pass any of the above electron paths.

Go to May's log

Last modified: Mon Jun 27 08:19:43 CST 2011