ColliderBit_eventloop.cpp
Go to the documentation of this file.
53 static std::streambuf *coutbuf = std::cout.rdbuf(); // save cout buffer for running the loop quietly 86 result.convergence_options[collider].target_stat = colOptions.getValue<double>("target_fractional_uncert"); 87 result.convergence_options[collider].stop_at_sys = colOptions.getValueOrDef<bool>(true, "halt_when_systematic_dominated"); 88 result.convergence_options[collider].all_analyses_must_converge = colOptions.getValueOrDef<bool>(false, "all_analyses_must_converge"); 89 result.convergence_options[collider].all_SR_must_converge = colOptions.getValueOrDef<bool>(false, "all_SR_must_converge"); 91 result.invalidate_failed_points[collider] = colOptions.getValueOrDef<bool>(false, "invalidate_failed_points"); 93 result.analyses[collider] = colOptions.getValueOrDef<std::vector<str>>(std::vector<str>(), "analyses"); 97 ColliderBit_error().raise(LOCAL_INFO,"Option min_nEvents is greater than corresponding max_nEvents for collider " 99 // Check that the analyses all correspond to actual ColliderBit analyses, and sort them into separate maps for each detector. 184 cout << DEBUG_PREFIX << "Starting main event loop. Will do " << stoppingres.at(collider) << " events before testing convergence." << endl; 246 cout << DEBUG_PREFIX << "Did " << eventCountBetweenConvergenceChecks << " events of " << result.current_event_count() << " simulated so far." << endl; 272 cerr << DEBUG_PREFIX << "Final event count: current_event_count() = " << result.current_event_count() << endl; 327 cout << DEBUG_PREFIX << "CollectAnalyses: Dep::ATLASAnalysisNumbers->size() = " << Dep::ATLASAnalysisNumbers->size() << endl; 328 cout << DEBUG_PREFIX << "CollectAnalyses: Dep::CMSAnalysisNumbers->size() = " << Dep::CMSAnalysisNumbers->size() << endl; 329 cout << DEBUG_PREFIX << "CollectAnalyses: Dep::IdentityAnalysisNumbers->size() = " << Dep::IdentityAnalysisNumbers->size() << endl; 333 if (Dep::ATLASAnalysisNumbers->size() != 0) result.insert(result.end(), Dep::ATLASAnalysisNumbers->begin(), Dep::ATLASAnalysisNumbers->end()); 334 if (Dep::CMSAnalysisNumbers->size() != 0) result.insert(result.end(), Dep::CMSAnalysisNumbers->begin(), Dep::CMSAnalysisNumbers->end()); 335 if (Dep::IdentityAnalysisNumbers->size() != 0) result.insert(result.end(), Dep::IdentityAnalysisNumbers->begin(), Dep::IdentityAnalysisNumbers->end()); 355 // cout << DEBUG_PREFIX << "CollectAnalyses: Current size of 'result': " << result.size() << endl; 361 // cout << DEBUG_PREFIX << "CollectAnalyses: 'result' contains AnalysisData pointer to " << adp << endl; 362 // cout << DEBUG_PREFIX << "CollectAnalyses: -- Will now loop over all signal regions in " << adp << endl; 365 // cout << DEBUG_PREFIX << "CollectAnalyses: -- " << adp << " contains signal region: " << sr.sr_label << ", n_sig_MC = " << sr.n_sig_MC << ", n_sig_scaled = " << n_sig_scaled << endl; 367 // cout << DEBUG_PREFIX << "CollectAnalyses: -- Done looping over signal regions in " << adp << endl; std::map< str, int > event_count Number of events generated for each collider. Definition: MCLoopInfo.hpp:52 DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry DecayTable::Entry double Definition: ColliderBit_LEP_rollcall.hpp:183 Piped_exceptions piped_errors Global instance of Piped_exceptions class for errors. void getLHCEventLoopInfo(map_str_dbl &result) Store some information about the event generation. Definition: ColliderBit_eventloop.cpp:304 bool end_of_event_file Maximum allowed number of failed events has been reached and MC loop terminated. Definition: MCLoopInfo.hpp:40 const int & current_event_count() const Get the number of events generated for the current collider. Definition: MCLoopInfo.cpp:135 Piped_exceptions piped_warnings Global instance of Piped_exceptions class for warnings. bool exceeded_maxFailedEvents Maximum allowed number of failed events has been reached. Definition: MCLoopInfo.hpp:37 bool inquire() Check whether any exceptions were requested without handling them. Definition: exceptions.cpp:607 std::map< str, convergence_settings > convergence_options Convergence options for each collider. Definition: MCLoopInfo.hpp:55 std::map< str, bool > invalidate_failed_points Invalidate points where number of failed events > maxFailedEvents? One bool for each collider... Definition: MCLoopInfo.hpp:49 Piped_invalid_point piped_invalid_point Global instance of piped invalid point class. Definition: exceptions.cpp:544 Declarations common to all ColliderBit event loop functions. void CollectAnalyses(AnalysisDataPointers &result) Loop over all analyses and collect them in one place. Definition: ColliderBit_eventloop.cpp:318 std::map< str, int > maxFailedEvents Maximum allowable number of failed events before MC loop is terminated for each collider. Definition: MCLoopInfo.hpp:46 std::map< str, std::map< str, std::vector< str > > > detector_analyses Analysis list for each detector of each collider. Definition: MCLoopInfo.hpp:61 Header file that includes all GAMBIT headers required for a module source file. TYPE getValueOrDef(TYPE def, const args &... keys) const Definition: yaml_options.hpp:115 str getDetector(const str &name) Return the detector to be used for a given analysis name, checking that the analysis exists... Definition: AnalysisContainer.cpp:176 void check(exception &excep) Check whether any exceptions were requested, and raise them. Definition: exceptions.cpp:564 void check() Check whether an exception was requested, and throw it if necessary. Definition: exceptions.cpp:481 std::map< std::string, double > map_str_dbl Shorthand for a string-to-double map. Definition: basebaseprinter.hpp:52 std::vector< const AnalysisData * > AnalysisDataPointers Definition: ColliderBit_types.hpp:70 Container for event loop status data and settings. Definition: MCLoopInfo.hpp:31 std::map< str, std::vector< str > > analyses Analysis list for each collider. Definition: MCLoopInfo.hpp:58 |