|
|
|||
File indexing completed on 2026-06-02 08:51:43
0001 #ifndef GLUON_DISTRIBUTION_H 0002 #define GLUON_DISTRIBUTION_H 0003 0004 /** 0005 * @file QuarkDistribution.h 0006 * @author: Bryan BERTHOU (SPhN / CEA Saclay) 0007 * @date 26 April 2015 0008 * @version 1.0 0009 */ 0010 0011 #include <string> 0012 0013 #include "../../BaseObject.h" 0014 0015 namespace PARTONS { 0016 0017 class ComparisonReport; 0018 0019 /** 0020 * @class GluonDistribution 0021 * 0022 * @brief Container to store value of single gluon distribution. 0023 * 0024 * This class represents a gluon distribution at a single kinematic point. For example, it can be a gluon GPD of a given type at some GPD kinematics. 0025 * 0026 * To see how this class can be used, analyze the following example: 0027 \code{.cpp} 0028 //in code, e.g. in one of GPD modules, one calculates value of GPD H for gluons at given kinematics 0029 double Hg = 3.45; 0030 0031 //store this result in GluonDistribution object 0032 GluonDistribution gluonDistribution(Hg); 0033 0034 //check what is inside 0035 Partons::getInstance()->getLoggerManager()->info("example", __func__, ElemUtils::Formatter() << "Gluon distribution contains: " << gluonDistribution.toString()); 0036 \endcode 0037 which gives via Logger: 0038 \code 0039 20-05-2017 08:51:19 [INFO] (example::main) Gluon distribution contains: GluonDistribution = 3.45 0040 \endcode 0041 * Check also the documentation of GPDResult and PartonDistribution classes, where GluonDistribution objects are used extensively. 0042 */ 0043 class GluonDistribution: public BaseObject { 0044 0045 public: 0046 0047 /** 0048 * Name of field in the database storing value of gluon distribution. 0049 */ 0050 static const std::string GLUON_DISTRIBUTION_DB_COLUMN_NAME; 0051 0052 /** 0053 * 0054 */ 0055 static const std::string GLUON_DISTRIBUTION_PARAMETER_NAME_GLUON_DISTRIBUTION; 0056 0057 /** 0058 * Default constructor. 0059 */ 0060 GluonDistribution(); 0061 0062 /** 0063 * Copy constructor. 0064 * @param other Object to be copied. 0065 */ 0066 GluonDistribution(const GluonDistribution &other); 0067 0068 /** 0069 * Assignment constructor. 0070 * @param gluonDistribution Value to be assigned. 0071 */ 0072 GluonDistribution(double gluonDistribution); 0073 0074 /** 0075 * Destructor. 0076 */ 0077 virtual ~GluonDistribution(); 0078 0079 virtual std::string toString() const; 0080 0081 //******************************************************** 0082 //*** SETTERS AND GETTERS ******************************** 0083 //******************************************************** 0084 0085 /** 0086 * Get value of gluon distribution. 0087 */ 0088 double getGluonDistribution() const; 0089 0090 /** 0091 * Set value of gluon distribution. 0092 */ 0093 void setGluonDistribution(double gluonDistribution); 0094 0095 /** 0096 * Check if any value of gluon distribution has been set. 0097 */ 0098 bool isNullObject() const; 0099 0100 /** 0101 * Set GluonDistribution::m_nullObject. 0102 */ 0103 void setNullObject(bool nullObject); 0104 0105 private: 0106 0107 /** 0108 * Value of gluon distribution. 0109 */ 0110 double m_gluonDistribution; 0111 0112 /** 0113 * Variable to check if any value of gluon distribution has been set. 0114 */ 0115 bool m_nullObject; 0116 }; 0117 0118 } /* namespace PARTONS */ 0119 0120 #endif /* GLUON_DISTRIBUTION_H */
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|