Comments (2)
Also add the following code (but note the need to add boost as a dependency),
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/json_parser.hpp>
#include <vector>
#include <string>
#include <algorithm>
#include <iostream>
class LumiFilter
{
private:
boost::property_tree::ptree ptree;
public:
LumiFilter(std::string filename = "/cms/xaastorage/PicoTrees/JSON_FILES/Cert_271036-284044_13TeV_ReReco_07Aug2017_Collisions16_JSON.txt");
~LumiFilter();
float Eval(float run, float lumi);
};
LumiFilter::LumiFilter(std::string filename = "/cms/xaastorage/PicoTrees/JSON_FILES/Cert_271036-284044_13TeV_ReReco_07Aug2017_Collisions16_JSON.txt") {
boost::property_tree::read_json(filename, ptree);
}
LumiFilter::~LumiFilter() {
}
float LumiFilter::Eval(float run, float lumi) {
for ( const auto& runEntry : ptree ) {
if (std::stoul(runEntry.first) == (unsigned int)run) {
for ( const auto& lrEntry : runEntry.second ) {
const auto lrNd = lrEntry.second;
unsigned int lumStart = std::stoul(lrNd.begin()->second.data());
unsigned int lumEnd = std::stoul((++lrNd.begin())->second.data());
unsigned int L = (unsigned int) lumi;
if ((L < lumEnd) && (L > lumStart)) {
return 1.;
}
}
}
}
return 0.;
}
from timber.
Adapted version of copied script (LumiFilter
) included in #19. Still need to port printLumiJson.py
from timber.
Related Issues (20)
- Module for HEM issue
- Top tagging SF module
- W tagging SF module
- Create full b*->tW all-hadronic example HOT 1
- New JME module constructors that don't use collection structs
- Adjust clang reader warning about matching columns
- Add either a DeepAK8 SF module or pieces to existing modules
- TopTag_SF: Secondary constructor which takes in tau32 cut value rather than WP code
- P_T reordering for JES/R and HEM modules
- Allow SetActiveNode to take in str with Node name
- Create way for AddCorrection to load existing columns HOT 1
- Speed up Prefire module with non-collection version
- Add CondorHelper as a subpackage
- Add automatic reporting to CL for selection on final RDataFrame node
- Runs tree not saved when using "RECREATE" to snapshot
- Swig (or other) GenMatching functionality for simple python experimenting
- CompareShapes y-axis title from A.U. to Events
- Docstring for analyzer.Apply() incomplete
- Consider an APV flag w/ provenance
- Fix conflict between snapshotting all columns and collection structs
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timber.