Skip to content

Commit

Permalink
Implementing O(as) space-like polarised matching conditions
Browse files Browse the repository at this point in the history
  • Loading branch information
vbertone committed Nov 16, 2023
1 parent 0ce5e9b commit 8b3aeb3
Show file tree
Hide file tree
Showing 3 changed files with 152 additions and 10 deletions.
78 changes: 75 additions & 3 deletions inc/apfel/matchingconditions_sl.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ namespace apfel
*/
///@{
/**
* @defgroup NLOMC NLO matching conditions
* @defgroup NLOMC NLO unpolarised matching conditions
* @ingroup MatchCond
*/
///@{
Expand Down Expand Up @@ -101,7 +101,79 @@ namespace apfel
///@}

/**
* @defgroup NNLOMC NNLO matching conditions
* @defgroup NLOMCpol NLO longitudinally polarised matching conditions
* @ingroup MatchCond
*/
///@{
/**
* @brief O(&alpha;<SUB>s</SUB>) term propotional to
* ln(&mu;<SUP>2</SUP>/m<SUP>2</SUP>).
*/
class AS1polHg_L: public Expression
{
public:
AS1polHg_L();
double Regular(double const& x) const;
};

/**
* @brief O(&alpha;<SUB>s</SUB>) term propotional to
* ln(&mu;<SUP>2</SUP>/m<SUP>2</SUP>).
*/
class AS1polggH_L: public Expression
{
public:
AS1polggH_L();
double Local(double const&) const;
};

/**
* @brief O(&alpha;<SUB>s</SUB>) term propotional to
* ln(&mu;<SUP>2</SUP>/m<SUP>2</SUP>) for the HH matching.
*/
class AS1polHH_L: public Expression
{
public:
AS1polHH_L();
double Singular(double const& x) const;
};

/**
* @brief O(&alpha;<SUB>s</SUB>) constant term for the HH
* matching.
*/
class AS1polHH_0: public Expression
{
public:
AS1polHH_0();
double Singular(double const& x) const;
};

/**
* @brief O(&alpha;<SUB>s</SUB>) term propotional to
* ln(&mu;<SUP>2</SUP>/m<SUP>2</SUP>) for the gH matching.
*/
class AS1polgH_L: public Expression
{
public:
AS1polgH_L();
double Regular(double const& x) const;
};

/**
* @brief O(&alpha;<SUB>s</SUB>) constant term for the gH
* matching.
*/
class AS1polgH_0: public Expression
{
public:
AS1polgH_0();
double Regular(double const& x) const;
};
///@}

/**
* @defgroup NNLOMC NNLO unpolarised matching conditions
* @ingroup MatchCond
*/
///@{
Expand Down Expand Up @@ -294,7 +366,7 @@ namespace apfel
///@}

/**
* @defgroup NNNLOMC NNNLO matching conditions
* @defgroup NNNLOMC NNNLO unpolarised matching conditions
* @note Approximated expressions from
* https://github.com/MSHTPDF/N3LO_additions. Details to be found in
* https://arxiv.org/pdf/2207.04739.pdf. Logarithmic terms currently
Expand Down
24 changes: 17 additions & 7 deletions src/evolution/dglapbuilder.cc
Original file line number Diff line number Diff line change
Expand Up @@ -411,18 +411,28 @@ namespace apfel
}

// ===============================================================
// NLO matching conditions (unknown so far thus set to zero)
// NLO matching conditions
std::map<int, std::map<int, Operator>> MatchNLO;
const Operator AS1HgL {g, AS1polHg_L{}, IntEps};
const Operator AS1ggHL{g, AS1polggH_L{}, IntEps};
const Operator AS1gH0 {g, AS1polgH_0{}, IntEps};
const Operator AS1gHL {g, AS1polgH_L{}, IntEps};
const Operator AS1HH0 {g, AS1polHH_0{}, IntEps};
const Operator AS1HHL {g, AS1polHH_L{}, IntEps};
for (int nf = nfi; nf <= nff; nf++)
{
const Operator AS1Hg = LogKth[nf] * AS1HgL;
const Operator AS1ggH = LogKth[nf] * AS1ggHL;
const Operator AS1gH = AS1gH0 + LogKth[nf] * AS1gHL;
const Operator AS1HH = AS1HH0 + LogKth[nf] * AS1HHL;
std::map<int, Operator> OM;
OM.insert({MatchingBasisQCD::M0, Zero});
OM.insert({MatchingBasisQCD::M1, Zero});
OM.insert({MatchingBasisQCD::M2, Zero});
OM.insert({MatchingBasisQCD::M3, Zero});
OM.insert({MatchingBasisQCD::M4, Zero});
OM.insert({MatchingBasisQCD::M5, Zero});
OM.insert({MatchingBasisQCD::M6, Zero});
OM.insert({MatchingBasisQCD::M1, AS1ggH});
OM.insert({MatchingBasisQCD::M2, AS1gH});
OM.insert({MatchingBasisQCD::M3, AS1gH});
OM.insert({MatchingBasisQCD::M4, AS1Hg});
OM.insert({MatchingBasisQCD::M5, AS1HH});
OM.insert({MatchingBasisQCD::M6, AS1HH});
OM.insert({MatchingBasisQCD::M7, Zero});
MatchNLO.insert({nf, OM});
}
Expand Down
60 changes: 60 additions & 0 deletions src/evolution/matchingconditions_sl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,66 @@ namespace apfel
return 2 * CF * ( 1 + pow(1 - x, 2) ) * ( - 1 - 2 * log(x) ) / x;
}

//_________________________________________________________________________________
AS1polHg_L::AS1polHg_L():
Expression()
{
}
double AS1polHg_L::Regular(double const& x) const
{
return 4 * TR * ( 2 * x - 1 );
}

//_________________________________________________________________________________
AS1polggH_L::AS1polggH_L():
Expression()
{
}
double AS1polggH_L::Local(double const&) const
{
return - 4 * TR / 3.;
}

//_________________________________________________________________________________
AS1polHH_L::AS1polHH_L():
Expression()
{
}
double AS1polHH_L::Singular(double const& x) const
{
return 2 * CF * ( 1 + pow(x, 2) ) / ( 1 - x );
}

//_________________________________________________________________________________
AS1polHH_0::AS1polHH_0():
Expression()
{
}
double AS1polHH_0::Singular(double const& x) const
{
return 2 * CF * ( 1 + pow(x, 2) ) * ( - 1 - 2 * log(1 - x) ) / ( 1 - x );
}

//_________________________________________________________________________________
AS1polgH_L::AS1polgH_L():
Expression()
{
}
double AS1polgH_L::Regular(double const& x) const
{
return 2 * CF * ( 2 - x );
}

//_________________________________________________________________________________
AS1polgH_0::AS1polgH_0():
Expression()
{
}
double AS1polgH_0::Regular(double const& x) const
{
return 2 * CF * ( 2 - 2 * x - 2 * ( 2 - x ) * log(x) );
}

//_________________________________________________________________________________
APS2Hq_0::APS2Hq_0():
Expression()
Expand Down

0 comments on commit 8b3aeb3

Please sign in to comment.