Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F8723738
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
3 KB
Subscribers
None
View Options
diff --git a/include/RHEJ/Analysis.hh b/include/RHEJ/Analysis.hh
index 1cde817..ea7a722 100644
--- a/include/RHEJ/Analysis.hh
+++ b/include/RHEJ/Analysis.hh
@@ -1,105 +1,51 @@
/** \file Analysis.hh
* \brief Header file for the Analysis Interface (ABC)
*
* Contains the Analysis struct and the Dynamic Analysis
* struct. Also contains some histogram centric functions
* such as histogram_names(), parameters(), draw_histogram()
* update_parameter()
*/
#pragma once
#include <vector>
#include <string>
namespace YAML{
class Node;
}
//! Reversed HEJ Namespace
namespace RHEJ{
class Event;
/** \struct Analysis Analysis.hh "include/RHEJ/Analysis.hh"
* \brief Analysis Struct
*
* This is the interface that all analyses should implement,
* i.e. all custom analyses have to derived from this struct.
*/
struct Analysis{
//! Fill event into analysis (e.g. to histograms)
/**
* @param res_event The event in resummation phase space
* @param FO_event The original fixed-order event
*/
virtual void fill(Event const & res_event, Event const & FO_event) = 0;
//! Decide whether an event passes the cuts
/**
* @param res_event The event in resummation phase space
* @param FO_event The original fixed-order event
*/
virtual bool pass_cuts(Event const & res_event, Event const & FO_event) = 0;
//! Finalise analysis
/**
* This function is called after all events have been processed and
* can be used for example to print out or save the results.
*/
virtual void finalise() = 0;
virtual ~Analysis() = default;
};
- /** \struct DynamicAnalysis Analysis.hh "include/RHEJ/Analysis.hh"
- * \brief DynamicAnalysis struct to be used with HEJview
- *
- * Inherits from the standard Analysis struct.
- */
- struct DynamicAnalysis : Analysis {
- /** \struct Parameter Analysis.hh "include/RHEJ/Analysis.hh"
- * \brief Parameter Struct which contains Parameters of Analysis
- *
- * Contains all info necessary about a parameter of the analysis.
- */
- struct Parameter{
- std::string name; /**< Name of parameter */
- double value; /**< Value of Paramter */
- double min; /**< Min Value allowed for parameter */
- double max; /**< Max Value allowed for parameter */
- };
-
- //! Virtual Histogram Names Function
- /**
- * Returns a vector of the names of the histograms.
- */
- virtual std::vector<std::string> histogram_names() const = 0;
-
- //! Virtual Parameters Function
- /**
- * Returns the a posteriori adjustable parameters of the analysis,
- * for instance weight-weight cuts
- */
- virtual std::vector<Parameter> parameters() const = 0;
-
- //! Virtual Draw Histogram Function
- /**
- * @param name Name of Histogram to be drawn
- * @param filename Name of Output file containing Histogram
- *
- */
- virtual void draw_histogram(
- std::string const & name, std::string const & filename
- ) const = 0;
-
- //! Virtual Update Parameter Function
- /**
- * @param name Name of the Parameter which is to be updated
- * @param value Value to be updated to
- * @returns true if any histograms have changed
- *
- */
- virtual bool update_parameter(std::string const & name, double value) = 0;
-
- //! Dynamic Analysis Destructor
- virtual ~DynamicAnalysis() = default;
- };
-
}
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Mon, Jan 20, 9:14 PM (1 d, 1 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4242438
Default Alt Text
(3 KB)
Attached To
rHEJ HEJ
Event Timeline
Log In to Comment