Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-06-02 08:17:13

0001 //
0002 // APFEL++ 2017
0003 //
0004 // Author: Valerio Bertone: valerio.bertone@cern.ch
0005 //
0006 
0007 #pragma once
0008 
0009 #include "apfel/convolutionmap.h"
0010 
0011 namespace apfel
0012 {
0013   /**
0014    * @defgroup MatchBases Matching convolution maps
0015    * Collection of derived classes from ConvolutionMap that implement
0016    * the convolution map for the matching at the heavy-quark
0017    * thresholds.
0018    * @ingroup ConvMap
0019    */
0020   ///@{
0021   /**
0022    * @brief The MatchingBasisQCD class is a derived of
0023    * ConvolutionMap specialised for the matching of distributions
0024    * using the QCD evolution basis and without assuming that intrinsic
0025    * heavy quark contributions vanish.
0026    */
0027   class MatchingBasisQCD: public ConvolutionMap
0028   {
0029   public:
0030     /**
0031      * @brief The map enumerators for the operands and the
0032      * distributions.
0033      */
0034     enum Operand: int {M0, M1, M2, M3, M4, M5, M6, M7, M8, M9, M10};
0035     enum Object:  int {GLUON, SIGMA, VALENCE, T3, V3, T8, V8, T15, V15, T24, V24, T35, V35};
0036 
0037     /**
0038      * @brief The MatchingBasisQCD constructor for the matching in the
0039      * QCD evolution basis with nf active flavours.
0040      @param nf: number of active flavours
0041      */
0042     MatchingBasisQCD(int const& nf);
0043   };
0044 
0045   /**
0046    * @brief The MatchingOperatorBasisQCD class is a derived of
0047    * ConvolutionMap specialised for the matching of the evolution of
0048    * operators at the heavy-quark thresholds using the QCD evolution
0049    * basis.
0050    */
0051   class MatchingOperatorBasisQCD: public ConvolutionMap
0052   {
0053   public:
0054     /**
0055      * @brief The MatchingOperatorBasisQCD constructor
0056      * @param nf: number of active flavours
0057      */
0058     MatchingOperatorBasisQCD(int const& nf);
0059   };
0060 
0061   /**
0062    * @brief The PhysicalMatchingBasisQCD class is a derived of
0063    * ConvolutionMap specialised for the matching of distributions
0064    * using the physical basis and without assuming that intrinsic
0065    * heavy quark contributions vanish.
0066    */
0067   class PhysicalMatchingBasisQCD: public ConvolutionMap
0068   {
0069   public:
0070     /**
0071      * @brief The map enumerators for the operands and the
0072      * distributions.
0073      */
0074     enum Operand: int {ONE, KGG, KGL, KGH, KLG, KLL, KLLP, KHG, KHL, KHH, KLLm};
0075     enum Object:  int {TM, BM, CM, SM, UM, DM, GLUON, DP, UP, SP, CP, BP, TP};
0076 
0077     /**
0078      * @brief The PhysicalMatchingBasisQCD constructor for the
0079      * matching in the QCD evolution basis with nf active flavours.
0080      @param nf: number of active flavours
0081      */
0082     PhysicalMatchingBasisQCD(int const& nf);
0083   };
0084 
0085   /**
0086    * @brief The MatchingOperatorBasisQCD class is a derived of
0087    * ConvolutionMap specialised for the matching of the evolution of
0088    * operators at the heavy-quark thresholds using the physical basis.
0089    */
0090   class PhysicalMatchingOperatorBasisQCD: public ConvolutionMap
0091   {
0092   public:
0093     /**
0094      * @brief The PhysicalMatchingOperatorBasisQCD constructor
0095      * @param nf: number of active flavours
0096      */
0097     PhysicalMatchingOperatorBasisQCD(int const& nf);
0098   };
0099   ///@}
0100 }