|
|
|||
File indexing completed on 2026-06-02 08:17:12
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 DISBases DIS convolution maps 0015 * Collection of derived classes from ConvolutionMap that implement 0016 * the convolution map for NC and CC DIS structure functions. 0017 * @ingroup ConvMap 0018 */ 0019 ///@{ 0020 /** 0021 * @brief The DISNCBasis class is a derived of ConvolutionMap 0022 * specialised for the computation of the NC DIS structure 0023 * functions. 0024 */ 0025 class DISNCBasis: public ConvolutionMap 0026 { 0027 public: 0028 /** 0029 * @brief The map enumerators for the operands and the 0030 * distributions. 0031 */ 0032 enum Operand: int {CNS, CS, CG}; 0033 enum Object: int {GLUON, SIGMA, VALENCE, T3, V3, T8, V8, T15, V15, T24, V24, T35, V35}; 0034 0035 /** 0036 * @name Constructors 0037 * List of constructors. 0038 */ 0039 ///@{ 0040 /** 0041 * @brief The DISNCBasis constructor for the k-th 0042 * component of the structure functions. 0043 * @param k: index that identifies the component of the structure function 0044 * @param fact: factor that multiplies the whole structure function 0045 */ 0046 DISNCBasis(int const& k, double const& fact = 1); 0047 0048 /** 0049 * @brief The DISNCBasis constructor for the total structure functions. 0050 * @param Ch: vector of the effective quark charges 0051 */ 0052 DISNCBasis(std::vector<double> const& Ch); 0053 ///@} 0054 }; 0055 0056 /** 0057 * @brief The DISCCBasis class is a derived of ConvolutionMap 0058 * specialised for the computation of the CC DIS structure 0059 * functions. 0060 */ 0061 class DISCCBasis: public ConvolutionMap 0062 { 0063 public: 0064 /** 0065 * @brief The map enumerators for the operands and the 0066 * distributions. 0067 */ 0068 enum Operand: int {CNS, CS, CG}; 0069 enum Object: int {GLUON, SIGMA, VALENCE, T3, V3, T8, V8, T15, V15, T24, V24, T35, V35}; 0070 0071 /** 0072 * @brief Map between one single index and the CKM matrix 0073 * elements: 0074 * 0075 * 1 - Vud2 0076 * 2 - Vus2 0077 * 3 - Vub2 0078 * 4 - Vcd2 0079 * 5 - Vcs2 0080 * 6 - Vcb2 0081 * 7 - Vtd2 0082 * 8 - Vts2 0083 * 9 - Vtb2 0084 */ 0085 std::map<int, std::pair<int, int>> Vij = 0086 { 0087 {1, {1, 1}}, {2, {1, 2}}, {3, {1, 3}}, 0088 {4, {2, 1}}, {5, {2, 2}}, {6, {2, 3}}, 0089 {7, {3, 1}}, {8, {3, 2}}, {9, {3, 3}} 0090 }; 0091 0092 /** 0093 * @name Constructors 0094 * List of constructors. 0095 */ 0096 ///@{ 0097 /** 0098 * @brief The DISCCBasis constructor for the (i,k)-th 0099 * component of the structure functions. 0100 * @param l: index that identifies the component of the structure function 0101 * @param Is3: switch to tell the constructure whether the structure function is F3 or not 0102 * @param fact: factor that multiplies the whole structure function 0103 */ 0104 DISCCBasis(int const& l, bool const& Is3, double const& fact = 1); 0105 0106 /** 0107 * @brief The DISCCBasis constructor for the total structure functions. 0108 * @param CKM: vector with the CKM matrix entries 0109 * @param Is3: switch to tell the constructure whether the structure function is F3 or not 0110 */ 0111 DISCCBasis(std::vector<double> const& CKM, bool const& Is3); 0112 ///@} 0113 }; 0114 ///@} 0115 }
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|