コード例 #1
0
ファイル: vt.c プロジェクト: columbia-irt/manhattan
}

static const char *yes = "yes";
static const char *no = "no";

static const char *bool_str(vt_bool_t b)
{
	return b == VT_BOOL_TRUE ? yes : no;
}

static int vt_cmd_sys_fancy_off(const struct vt_handle *vh,
				__attribute__ ((unused)) const char *str)
{
	struct vt_handle *sysvh = vt_handle_get();
	sysvh->vh_opt.fancy = VT_BOOL_FALSE;
	fprintf(vh->vh_stream, "%s\n", bool_str(sysvh->vh_opt.fancy));
	return 0;
}

static int vt_cmd_sys_fancy_on(const struct vt_handle *vh,
			       __attribute__ ((unused)) const char *str)
{
	struct vt_handle *sysvh = vt_handle_get();
	sysvh->vh_opt.fancy = VT_BOOL_TRUE;
	fprintf(vh->vh_stream, "%s\n", bool_str(sysvh->vh_opt.fancy));
	return 0;
}

static int vt_cmd_sys_fancy(const struct vt_handle *vh,
			    __attribute__ ((unused)) const char *str)
{
コード例 #2
0
ファイル: drawMinBias.C プロジェクト: amarini/pandolf
int main(int argc, char* argv[]) {

  if( argc != 8 && argc != 7 ) {
    std::cout << "USAGE: ./drawMinBias [(string)DiJet/Inclusive] [(string)data_dataset] [(string)mc_dataset] [(string)algoType] [(int)pt_thresh] [(string)raw/corr] [(bool)useID=true]" << std::endl;
    exit(23);
  }

  std::string dijet_inclusive( argv[1] );
  std::string data_dataset( argv[2] );
  std::string mc_dataset( argv[3] );
  std::string algoType( argv[4] );
  int pt_thresh = atoi( argv[5] );
  std::string raw_corr( argv[6] );
  Float_t etamax = 3.;

  bool useID = true;
  if( argc==8 ) {
    std::string bool_str( argv[7] );
    if( bool_str=="false" ) useID = false;
  }

  bool sameEvents = false; //until njets histos have no overflows... or maybe use GetEntries instead of integral?

  DrawBase* db = new DrawBase("MinBias");
  db->set_raw_corr( raw_corr );
  db->set_pt_thresh( pt_thresh );
  //db->set_etamax( etamax );
  db->set_etamax(3.);
  db->set_pdf_aussi((bool)false);

  char outputdir_char[200];
  sprintf( outputdir_char, "%sPlots_%s_vs_%s_%s_%dGeV%s_eta%d", dijet_inclusive.c_str(), data_dataset.c_str(), mc_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*db->get_etamax()));
  std::string outputdir_str(outputdir_char);
  if( !useID )
    outputdir_str = outputdir_str + "_noID";

  db->set_outputdir(outputdir_str);

  //std::string dataFileName = "MinBias_" + data_dataset + "_" + algoType;
  char dataFileName[150];
  if( useID )
    sprintf( dataFileName, "%s_%s_%s_%dGeV%s_eta%d.root", dijet_inclusive.c_str(), data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*db->get_etamax()));
    //sprintf( dataFileName, "%s_DATA_%s_%s_%dGeV%s_eta%d.root", data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*ETAMAX));
  else 
    sprintf( dataFileName, "%s_%s_%s_%dGeV%s_eta%d_noID.root", dijet_inclusive.c_str(), data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*db->get_etamax()));
    //sprintf( dataFileName, "%s_DATA_%s_%s_%dGeV%s_eta%d_noDeltaPhi.root", data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*ETAMAX));
  TFile* dataFile = TFile::Open(dataFileName);
  std::cout << "Opened data file '" << dataFileName << "'." << std::endl;

  db->set_dataFile( dataFile );

  char mcFileName[150];
//if( mc_dataset=="" ) {
//  if( useID )
//    sprintf( mcFileName, "%s_%s_%s_%dGeV%s_eta%d.root", dijet_inclusive.c_str(), data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*ETAMAX));
//  else
//    sprintf( mcFileName, "%s_%s_%s_%dGeV%s_eta%d_noID.root", dijet_inclusive.c_str(), data_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*ETAMAX));
//} else {
    if( useID )
      sprintf( mcFileName, "%s_%s_%s_%dGeV%s_eta%d.root", dijet_inclusive.c_str(), mc_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*db->get_etamax()));
    else
      sprintf( mcFileName, "%s_%s_%s_%dGeV%s_eta%d_noID.root", dijet_inclusive.c_str(), mc_dataset.c_str(), algoType.c_str(), pt_thresh, raw_corr.c_str(), (int)(10.*db->get_etamax()));
//}
  TFile* mcFile = TFile::Open(mcFileName);
  std::cout << "Opened mc file '" << mcFileName << "'." << std::endl;

  db->set_mcFile( mcFile );

  if( sameEvents ) {
    db->set_sameEventNormalization();
  } else {
    db->set_sameInstanceNormalization();
  }

//TH1F* h1_nJets_data = (TH1F*)dataFile->Get("nJets");
//TH1F* h1_nJets_mc = (TH1F*)mcFile->Get("nJets");

//TH1F* h1_phiJet_data = (TH1F*)dataFile->Get("phiJet");
//TH1F* h1_phiJet_mc = (TH1F*)mcFile->Get("phiJet");


//Float_t scaleFactor = ( sameEvents ) ? h1_nJets_data->Integral()/h1_nJets_mc->Integral() : h1_phiJet_data->Integral()/h1_phiJet_mc->Integral();

  bool log = true;

  if( dijet_inclusive == "DiJet" ) {
    db->drawHisto( "deltaPhiJet", "",0);
    db->drawHisto( "asymmJet", "");
    db->drawHisto( "diJetMass", "",1, log);
  }

  db->drawHisto( "massJet", "",1, log);
  db->drawHisto( "MoEJet", "",1, log);

  db->drawHisto( "ptJet", "",1, log);
  db->drawHisto( "ptCorrJet", "",1, log);
  db->drawHisto( "ptCorrJet", "barrel",1, log);
  db->drawHisto( "ptCorrJet", "endcap",1, log);
  db->drawHisto( "ptCorrJet", "eta1430",1, log);
  db->drawHisto( "ptCorrJet", "Rch050",1, log);
  db->drawHisto( "ptCorrJet", "Rch5070",1, log);
  db->drawHisto( "ptCorrJet", "Rch70100",1, log);
  db->drawHisto( "phiJet", "");
  db->drawHisto( "etaJet", "");

  db->drawHisto( "nCandJet", "",log);

  db->drawHisto( "RchJet", "",1);
  db->drawHisto( "RchJet", "eta02",1);
  db->drawHisto( "RchJet", "eta23",1);
  db->drawHisto( "RchJet", "barrel",1);
  db->drawHisto( "RchJet", "eta163",1);
  db->drawHisto( "RchJet", "eta1425",1);
  db->drawHisto( "RnhJet", "",1, log);
  db->drawHisto( "RnhJet", "eta02",1, log);
  db->drawHisto( "RnhJet", "eta23",1, log);
  db->drawHisto( "RnhJet", "barrel",1, log);
  db->drawHisto( "RnhJet", "eta163",1, log);
  db->drawHisto( "RnhJet", "eta1425",1, log);
  db->drawHisto( "RgammaJet", "",1, log);
  db->drawHisto( "RgammaJet", "eta02",1, log);
  db->drawHisto( "RgammaJet", "eta23",1, log);
  db->drawHisto( "RgammaJet", "barrel",1, log);
  db->drawHisto( "RgammaJet", "eta163",1, log);
  db->drawHisto( "RgammaJet", "eta1425",1, log);
  db->drawHisto( "RgammanhJet", "barrel",1, log);
  db->drawHisto( "RgammanhJet", "eta163",1, log);
  db->drawHisto( "RgammanhJet", "eta1425",1, log);

  db->drawHisto( "EchJet", "",1, log);
  db->drawHisto( "EchJet", "eta02",1, log);
  db->drawHisto( "EchJet", "eta23",1, log);
  db->drawHisto( "EchJet", "barrel",1, log);
  db->drawHisto( "EchJet", "eta163",1, log);
  db->drawHisto( "EchJet", "eta1425",1, log);
  db->drawHisto( "EnhJet", "",1, log);
  db->drawHisto( "EnhJet", "eta02",1, log);
  db->drawHisto( "EnhJet", "eta23",1, log);
  db->drawHisto( "EnhJet", "barrel",1, log);
  db->drawHisto( "EnhJet", "eta163",1, log);
  db->drawHisto( "EnhJet", "eta1425",1, log);
  db->drawHisto( "EgammaJet", "",1, log);
  db->drawHisto( "EgammaJet", "eta02",1, log);
  db->drawHisto( "EgammaJet", "eta23",1, log);
  db->drawHisto( "EgammaJet", "barrel",1, log);
  db->drawHisto( "EgammaJet", "eta163",1, log);
  db->drawHisto( "EgammaJet", "eta1425",1, log);
  db->drawHisto( "EgammanhJet", "barrel",1, log);
  db->drawHisto( "EgammanhJet", "eta163",1, log);
  db->drawHisto( "EgammanhJet", "eta1425",1, log);

  db->drawHisto( "PTchJet", "",1, log);
  db->drawHisto( "PTgammaJet", "",1, log);
  db->drawHisto( "PTnhJet", "",1, log);

  db->drawHisto( "EphotAveJet", "",1, log);

  db->drawHisto( "NchJet", "",1, log);
  db->drawHisto( "NchJet", "barrel",1, log);
  db->drawHisto( "NchJet", "eta163",1, log);
  db->drawHisto( "NchJet", "eta1425",1, log);
  db->drawHisto( "NchJet", "eta02",1, log);
  db->drawHisto( "NchJet", "eta23",1, log);
  db->drawHisto( "NnhJet", "",1, log);
  db->drawHisto( "NnhJet", "eta02",1, log);
  db->drawHisto( "NnhJet", "eta23",1, log);
  db->drawHisto( "NnhJet", "barrel",1, log);
  db->drawHisto( "NnhJet", "eta163",1, log);
  db->drawHisto( "NnhJet", "eta1425",1, log);
  db->drawHisto( "NgammaJet", "",1, log);
  db->drawHisto( "NgammaJet", "eta02",1, log);
  db->drawHisto( "NgammaJet", "eta23",1, log);
  db->drawHisto( "NgammaJet", "barrel",1, log);
  db->drawHisto( "NgammaJet", "eta163",1, log);
  db->drawHisto( "NgammaJet", "eta1425",1, log);
  db->drawHisto( "NgammanhJet", "barrel",1, log);
  db->drawHisto( "NgammanhJet", "eta163",1, log);
  db->drawHisto( "NgammanhJet", "eta1425",1, log);

  std::string ptVar;
  if( raw_corr=="raw" )
    ptVar = "pt";
  else 
    ptVar = "ptCorr";

  db->drawProfile( "pt", "eta", 1);
  db->drawProfile( "ptCorr", "eta", 1);

  db->drawProfile( "Rch", "eta", 1);
  db->drawProfile( "Rgamma", "eta", 1);
  db->drawProfile( "Rnh", "eta", 1);
  db->drawProfile( "Rgammanh", "eta", 1);

  db->drawProfile( "Ech", "eta", 1);
  db->drawProfile( "Egamma", "eta", 1);
  db->drawProfile( "Enh", "eta", 1);
  db->drawProfile( "Egammanh", "eta", 1);

  db->drawProfile( "PTch", "eta", 1);
  db->drawProfile( "PTgamma", "eta", 1);
  db->drawProfile( "PTnh", "eta", 1);

  db->drawProfile( "Nch", "eta", 1);
  db->drawProfile( "Ngamma", "eta", 1);
  db->drawProfile( "Nnh", "eta", 1);
  db->drawProfile( "Ngammanh", "eta", 1);

  db->drawProfile( "Rch", ptVar, 1);
  db->drawProfile( "Rgamma", ptVar, 1);
  db->drawProfile( "Rnh", ptVar, 1);

  db->drawProfile( "Ech", ptVar, 1);
  db->drawProfile( "Egamma", ptVar, 1);
  db->drawProfile( "Enh", ptVar, 1);

  db->drawProfile( "Nch", ptVar, 1);
  db->drawProfile( "Ngamma", ptVar, 1);
  db->drawProfile( "Nnh", ptVar, 1);

  db->drawProfile( "Egamma", "Ech", 1);
  db->drawProfile( "Enh",    "Ech", 1);

  db->drawProfile( "Rgamma", "Rch", 1);
  db->drawProfile( "Rnh",    "Rch", 1);
  db->drawProfile( "Rgamma",    "Rnh", 1);

//drawH2( dataFile, mcFile, "Rgamma", "Rch", 1);
//drawH2( dataFile, mcFile, "Rnh",    "Rch", 1);
//drawH2( dataFile, mcFile, "Rnh",    "Rgamma", 1);

  db->drawProfile( "Ngamma", "Nch", 1);
  db->drawProfile( "Nnh",    "Nch", 1);

  // stacks:
  db->drawStack( "R", "eta", "RECO", (bool)true);
  db->drawStack( "R", "eta", "RECO", (bool)false);

  db->drawStack( "R", ptVar, "barrel", "RECO", (bool)true);
  db->drawStack( "R", ptVar, "barrel", "RECO", (bool)false);

  db->drawStack( "R", "phi", "barrel", "RECO", (bool)true);
  db->drawStack( "R", "phi", "barrel", "RECO", (bool)false);

  db->drawStack( "R", "eta", "GEN", (bool)false);
  db->drawStack( "R", "pt", "barrel", "GEN", (bool)false);
  db->drawStack( "R", "phi", "barrel", "GEN", (bool)false);

  return 0;

}  
コード例 #3
0
ファイル: ltl2fsm.t.cpp プロジェクト: arafato/ltl2fsm
int main(int argc, char ** argv)
{
    ::diagnostics::Logging_Config::init();
    
    if(argc < 2){
	usage();
	return 1;
    }

    ::std::string root_dir("");
    ::std::string _namespace("");
    ::std::string include_prefix("");
    ::std::string formula = ("");
    bool include_type = false;
    ::std::string bool_str("false");
    ::std::string pos_nfa("Pos_Nfa");
    ::std::string neg_nfa("Neg_Nfa");
    ::std::string classname("");
            
    while(argc > 1 && argv[1][0] == '-'){
	switch(argv[1][1]){
        case 'r': 
            root_dir = argv[2];
            --argc;
            ++argv;
            break;
        case 'n':
            _namespace = argv[2];
            --argc;
            ++argv;		
            break;
        case 'p':
            include_prefix = argv[2];
            --argc;
            ++argv;		
            break;
        case 'i':
            bool_str = argv[2];
            --argc;
            ++argv;		
            break;
        case 'c':
            classname = argv[2];
            pos_nfa = "";
            neg_nfa = "";
            pos_nfa = "Pos_" + classname;
            neg_nfa = "Neg_" + classname;
            --argc;
            ++argv;
            break;
        case 'f':
            formula = argv[2];
            --argc;
            ++argv;		
            break;
        default: usage();
            break;
	}
	--argc;
	++argv;
    }

    if(formula == ""){
	::std::cout << "You must specify a formula! Exiting..." << ::std::endl;
	return 1;
    }

    if(bool_str == "true")
	include_type = true;
        
    typedef ::ltl2fsm::Graphviz_Representation Representation_t;
    typedef ::ltl2fsm::Ltl_To_Nfa_Pair_Module<Representation_t> Ltl_To_Nfa_Pair_Module_t;
    typedef ::ltl2fsm::Nfa_To_Cpp_Module<Representation_t> Nfa_To_Cpp_Module_t;
    
    Ltl_To_Nfa_Pair_Module_t ltl_to_nfa_pair_module;
    Ltl_To_Nfa_Pair_Module_t::Nfa_Pair_t nfa_pair;
    Nfa_To_Cpp_Module_t nfa_to_cpp_module;
    
    try{

	nfa_pair = ltl_to_nfa_pair_module.execute(formula);
    }
    catch( ::ltl2fsm::Invalid_Ltl_Syntax const & ils){
	::std::cout << ils.what() << ::std::endl;
	return 1;
    }
    catch( ::ltl2fsm::Fork_Error const & fe ){
	::std::cout << fe.what() << ::std::endl;
	return 1;
    }

    if(root_dir != ""){
	::std::string root_dir_pos_nfa = root_dir + pos_nfa;
	::std::ofstream pos_nfa_cpp((root_dir_pos_nfa + ".cpp").c_str());
        ::std::ofstream pos_nfa_hpp((root_dir_pos_nfa + ".hpp").c_str());
	nfa_to_cpp_module.execute(*nfa_pair.first, 
				  pos_nfa_cpp,
                                  pos_nfa_hpp,
                                  pos_nfa,
                                  _namespace,
				  include_prefix,
                                  formula,
				  include_type);
	
	::std::string root_dir_neg_nfa = root_dir + neg_nfa;
	::std::ofstream neg_nfa_cpp((root_dir_neg_nfa + ".cpp").c_str());
	::std::ofstream neg_nfa_hpp((root_dir_neg_nfa + ".hpp").c_str());
	nfa_to_cpp_module.execute(*nfa_pair.second, 
				  neg_nfa_cpp,
                                  neg_nfa_hpp,
                                  neg_nfa,
                                  _namespace,
				  include_prefix,
                                  ::std::string("!(" + formula + ")"),
				  include_type);
    }
    else{
	nfa_to_cpp_module.execute(*nfa_pair.first, 
				  ::std::cout,
                                  ::std::cout,
				  pos_nfa,
				  _namespace,
				  include_prefix,
                                  formula,
				  include_type);
	
	nfa_to_cpp_module.execute(*nfa_pair.second, 
				  ::std::cout,
                                  ::std::cout,
				  neg_nfa,
				  _namespace,
				  include_prefix,
                                  ::std::string("!(" + formula + ")"),
				  include_type);
    }
            
    return 0;
}