File indexing completed on 2024-09-27 07:03:24
0001
0002
0003
0004 #ifndef StructureFunction_
0005 #define StructureFunction_
0006
0007 enum class Hadron {
0008 PI_0,
0009 PI_P,
0010 PI_M,
0011 K_0,
0012 K_P,
0013 K_M,
0014 };
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026 class SfSet {
0027 public:
0028 SfSet() { }
0029 SfSet(SfSet const&) = delete;
0030 SfSet(SfSet&&) = delete;
0031 SfSet& operator=(SfSet const&) = delete;
0032 SfSet& operator=(SfSet&&) = delete;
0033 virtual ~SfSet() = default;
0034
0035 virtual double F_UUL(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0036 return 0.;
0037 }
0038 virtual double F_UUT(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0039 return 0.;
0040 }
0041 virtual double F_UU_cos_phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0042 return 0.;
0043 }
0044 virtual double F_UU_cos_2phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0045 return 0.;
0046 }
0047
0048 virtual double F_UL_sin_phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0049 return 0.;
0050 }
0051 virtual double F_UL_sin_2phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0052 return 0.;
0053 }
0054
0055 virtual double F_UTL_sin_phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0056 return 0.;
0057 }
0058 virtual double F_UTT_sin_phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0059 return 0.;
0060 }
0061 virtual double F_UT_sin_2phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0062 return 0.;
0063 }
0064 virtual double F_UT_sin_3phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0065 return 0.;
0066 }
0067 virtual double F_UT_sin_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0068 return 0.;
0069 }
0070 virtual double F_UT_sin_phih_p_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0071 return 0.;
0072 }
0073
0074 virtual double F_LU_sin_phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0075 return 0.;
0076 }
0077
0078 virtual double F_LL(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0079 return 0.;
0080 }
0081 virtual double F_LL_cos_phih(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0082 return 0.;
0083 }
0084
0085 virtual double F_LT_cos_phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0086 return 0.;
0087 }
0088 virtual double F_LT_cos_2phih_m_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0089 return 0.;
0090 }
0091 virtual double F_LT_cos_phis(Hadron h, double x, double z, double Q_sq, double ph_t_sq) const {
0092 return 0.;
0093 }
0094 };
0095
0096 #endif
0097