Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-06-02 08:51:42

0001 #ifndef ACTIVE_FLAVORS_THRESHOLDS_H
0002 #define ACTIVE_FLAVORS_THRESHOLDS_H
0003 
0004 /**
0005  * @file ActiveFlavorsThresholds.h
0006  * @author Bryan BERTHOU (SPhN / CEA Saclay)
0007  * @date 07 August 2015
0008  * @version 1.0
0009  */
0010 
0011 #include <string>
0012 
0013 namespace PARTONS {
0014 
0015 /**
0016  * @class ActiveFlavorsThresholds
0017  *
0018  * @brief Interval of factorization scale with fixed number of flavors.
0019  *
0020  * This class is used to indicate an interval of factorization scale where a fixed number of quark flavors is active.
0021  */
0022 class ActiveFlavorsThresholds {
0023 
0024 public:
0025 
0026     /**
0027      * Default constructor.
0028      */
0029     ActiveFlavorsThresholds();
0030 
0031     /**
0032      * Assignment constructor.
0033      * @param nf Number of quark flavor being active in the interval.
0034      * @param lowerBound Lower bound of the interval.
0035      * @param upperBound Upper bound of the interval.
0036      * @param index Index of interval.
0037      */
0038     ActiveFlavorsThresholds(unsigned short nf, double lowerBound, double upperBound,
0039             unsigned int index);
0040 
0041     /**
0042      * Destructor.
0043      */
0044     virtual ~ActiveFlavorsThresholds();
0045 
0046     /**
0047      * Relation operator that checks if the value of left operand is less than the value of right operand (in this case returned is this->m_nf < other.m_nf).
0048      * Used by std::sort function.
0049      * @param other Right hand value.
0050      * @return True if the value of left operand is less than the value of right operand, otherwise false.
0051      */
0052     bool operator <(const ActiveFlavorsThresholds &other) const;
0053 
0054     /**
0055      * Return a pre-formatted characters string for output visualization of class member's values
0056      *
0057      * @return a pre-formatted characters string
0058      */
0059     virtual std::string toString() const;
0060 
0061     //********************************************************
0062     //*** SETTERS AND GETTERS ********************************
0063     //********************************************************
0064 
0065     /**
0066      * Get number of quark flavor being active in the interval.
0067      */
0068     unsigned short getNf() const;
0069 
0070     /**
0071      * Set number of quark flavor being active in the interval.
0072      */
0073     void setNf(unsigned short nf);
0074 
0075     /**
0076      * Get lower bound of the interval.
0077      */
0078     double getLowerBound() const;
0079 
0080     /**
0081      * Set lower bound of the interval.
0082      */
0083     void setLowerBound(double lowerBound);
0084 
0085     /**
0086      * Get upper bound of the interval.
0087      */
0088     double getUpperBound() const;
0089 
0090     /**
0091      * Set upper bound of the interval.
0092      */
0093     void setUpperBound(double upperBound);
0094 
0095     /**
0096      * Get index of interval.
0097      */
0098     unsigned int getIndex() const;
0099 
0100     /**
0101      * Set index of interval.
0102      */
0103     void setIndex(unsigned int index);
0104 
0105 private:
0106 
0107     /**
0108      * Number of quark flavor being active in the interval.
0109      */
0110     unsigned short m_nf;
0111 
0112     /**
0113      * Lower bound of the interval.
0114      */
0115     double m_lowerBound;
0116 
0117     /**
0118      * Upper bound of the interval.
0119      */
0120     double m_upperBound;
0121 
0122     /**
0123      * Index of interval.
0124      */
0125     unsigned int m_index;
0126 };
0127 
0128 } /* namespace PARTONS */
0129 
0130 #endif /* ACTIVE_FLAVORS_THRESHOLDS_H */