TTreeFormulaの使い方
自分用メモ。適宜加筆する予定。コードはコンパイルチェックしてません。
目的
TTreeに格納されている数字から任意(限界は?)の計算を行う。
使用法(例)
コンストラクタ
TTreeFormula *formula = new TTreeFormula("formula_name","branch.fValue", tree);
値を読み出してヒストグラムにFillする
インスタンスが1つの場合
branch.fValue
を適当なヒストグラムにFillする。
その際anotherBranch.fValue > 0
という制限をかける。
TTreeFormula *formula = new TTreeFormula("formula_name","branch.fValue", tree); TTreeFormula *selection = new TTreeFormula("selection_name","anotherBranch.fValue > 0", tree); for (Long64_t iEvent = 0, nEvent = tree->GetEntries(); iEvent != nEvent; ++iEvent) { tree->LoadTree(iEvent); if (selection->EvalInstance()) { h->Fill(formula->EvalInstance()); } }
よく分かっていないところ
TTreeFormulaManager::Syncの働き