Back to home page

EIC code displayed by LXR

 
 

    


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

0001 /*
0002  * GPDSubtractionConstantKM10.h
0003  *
0004  *  Created on: Oct 18, 2016
0005  *      Author: Pawel Sznajder (IPNO)
0006  */
0007 
0008 #ifndef GPD_SUBTRACTION_CONSTANT_KM10_H
0009 #define GPD_SUBTRACTION_CONSTANT_KM10_H
0010 
0011 #include <string>
0012 
0013 #include "../../utils/type/PhysicalType.h"
0014 #include "GPDSubtractionConstantModule.h"
0015 
0016 namespace PARTONS {
0017 
0018 /**
0019  * @class GPDSubtractionConstantKM10
0020  *
0021  * @brief Implementation of KM subtraction constant.
0022  *
0023  * This module implements the subtraction constant as proposed by Kumericki and Mueller in Ref. @cite Kumericki:2009uq.
0024  *
0025  * For an example of usage of this module see the abstract class documentation.
0026  */
0027 class GPDSubtractionConstantKM10: public GPDSubtractionConstantModule {
0028 
0029 public:
0030 
0031     /**
0032      * Unique ID to automatically register the class in the registry.
0033      */
0034     static const unsigned int classId;
0035 
0036     /**
0037      * Constructor.
0038      * @param className Name of this class.
0039      */
0040     GPDSubtractionConstantKM10(const std::string &className);
0041 
0042     /**
0043      * Destructor.
0044      */
0045     virtual ~GPDSubtractionConstantKM10();
0046 
0047     virtual GPDSubtractionConstantKM10* clone() const;
0048 
0049 protected:
0050 
0051     /** Copy constructor.
0052      * @param other Object to be copied.
0053      */
0054     GPDSubtractionConstantKM10(const GPDSubtractionConstantKM10& other);
0055 
0056     virtual PhysicalType<double> computeSubtractionConstant();
0057 
0058 private:
0059 
0060     double m_par_H_C;       ///< H_C parameter
0061     double m_par_H_M_sub;   ///< H_M_sub parameter
0062 };
0063 
0064 } /* namespace PARTONS */
0065 
0066 #endif /* GPD_SUBTRACTION_CONSTANT_KM10_H */