Page Menu
Home
HEPForge
Search
Configure Global Search
Log In
Files
F8310212
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
26 KB
Subscribers
None
View Options
diff --git a/Shower/QTilde/Couplings/ShowerAlphaQCDNP.cc b/Shower/QTilde/Couplings/ShowerAlphaQCDNP.cc
deleted file mode 100644
--- a/Shower/QTilde/Couplings/ShowerAlphaQCDNP.cc
+++ /dev/null
@@ -1,422 +0,0 @@
-// -*- C++ -*-
-//
-// ShowerAlphaQCDNP.cc is a part of Herwig - A multi-purpose Monte Carlo event generator
-// Copyright (C) 2002-2019 The Herwig Collaboration
-//
-// Herwig is licenced under version 3 of the GPL, see COPYING for details.
-// Please respect the MCnet academic guidelines, see GUIDELINES for details.
-//
-//
-// This is the implementation of the non-inlined, non-templated member
-// functions of the ShowerAlphaQCDNP class.
-//
-#include "ShowerAlphaQCDNP.h"
-#include "ThePEG/PDT/ParticleData.h"
-#include "ThePEG/Interface/ClassDocumentation.h"
-#include "ThePEG/Interface/Switch.h"
-#include "ThePEG/Interface/Parameter.h"
-#include "ThePEG/Interface/ParVector.h"
-#include "ThePEG/Interface/Command.h"
-#include "ThePEG/Interface/Deleted.h"
-#include "ThePEG/Persistency/PersistentOStream.h"
-#include "ThePEG/Persistency/PersistentIStream.h"
-#include "ThePEG/Utilities/Throw.h"
-#include "ThePEG/Utilities/DescribeClass.h"
-#include "ThePEG/Config/Constants.h"
-#include "Herwig/Utilities/AlphaS.h"
-#include "gsl/gsl_sf_lambert.h"
-
-using namespace Herwig;
-using Herwig::Math::alphaS;
-using Herwig::Math::derivativeAlphaS;
-
-DescribeClass<ShowerAlphaQCDNP,ShowerAlpha>
-describeShowerAlphaQCDNP("Herwig::ShowerAlphaQCDNP","HwShower.so");
-
-IBPtr ShowerAlphaQCDNP::clone() const {
- return new_ptr(*this);
-}
-
-IBPtr ShowerAlphaQCDNP::fullclone() const {
- return new_ptr(*this);
-}
-
-void ShowerAlphaQCDNP::persistentOutput(PersistentOStream & os) const {
- os << ounit(_qmin,GeV) << _asMaxNP << _nfMaxNP
- << ounit(_thresholds,GeV) << ounit(_lambda,GeV)
- << _nloop << _thresopt
- << _alphain << _tolerance << _maxtry
- << _npPower << ounit(_optInputScale,GeV) << _quarkBranching
- << ounit(_quarkMasses,GeV);
-}
-
-void ShowerAlphaQCDNP::persistentInput(PersistentIStream & is, int) {
- is >> iunit(_qmin,GeV) >> _asMaxNP >> _nfMaxNP
- >> iunit(_thresholds,GeV) >> iunit(_lambda,GeV)
- >> _nloop >> _thresopt
- >> _alphain >> _tolerance >> _maxtry
- >> _npPower >> iunit(_optInputScale,GeV) >> _quarkBranching
- >> iunit(_quarkMasses,GeV);
-}
-
-void ShowerAlphaQCDNP::Init() {
-
- static ClassDocumentation<ShowerAlphaQCDNP> documentation
- ("This (concrete) class describes the QCD alpha running.");
-
- // default such that as(qmin) = 1 in the current parametrization.
- static Parameter<ShowerAlphaQCDNP,Energy> interfaceQmin
- ("Qmin", "Q < Qmin is treated with NP parametrization as of (unit [GeV])",
- &ShowerAlphaQCDNP::_qmin, GeV, 1*GeV, 0*GeV,
- 100.0*GeV,false,false,false);
-
- static Parameter<ShowerAlphaQCDNP,unsigned int> interfaceNumberOfLoops
- ("NumberOfLoops",
- "The number of loops to use in the alpha_S calculation",
- &ShowerAlphaQCDNP::_nloop, 3, 1, 3,
- false, false, Interface::limited);
-
- static Parameter<ShowerAlphaQCDNP,double> interfaceAlphaMZ
- ("AlphaIn",
- "The input value of the strong coupling at the chosen InputScale (default: MZ)",
- &ShowerAlphaQCDNP::_alphain, 0.118, 0.1, 0.2,
- false, false, Interface::limited);
-
- static Parameter<ShowerAlphaQCDNP,double> interfaceTolerance
- ("Tolerance",
- "The tolerance for discontinuities in alphaS at thresholds.",
- &ShowerAlphaQCDNP::_tolerance, 1e-10, 1e-20, 1e-4,
- false, false, Interface::limited);
-
- static Parameter<ShowerAlphaQCDNP,unsigned int> interfaceMaximumIterations
- ("MaximumIterations",
- "The maximum number of iterations for the Newton-Raphson method to converge.",
- &ShowerAlphaQCDNP::_maxtry, 100, 10, 1000,
- false, false, Interface::limited);
-
- static Switch<ShowerAlphaQCDNP,bool> interfaceThresholdOption
- ("ThresholdOption",
- "Whether to use the consistuent or normal masses for the thresholds",
- &ShowerAlphaQCDNP::_thresopt, true, false, false);
- static SwitchOption interfaceThresholdOptionCurrent
- (interfaceThresholdOption,
- "Current",
- "Use the current masses",
- true);
- static SwitchOption interfaceThresholdOptionConstituent
- (interfaceThresholdOption,
- "Constituent",
- "Use the constitent masses.",
- false);
-
- static Command<ShowerAlphaQCDNP> interfaceValue
- ("Value",
- "",
- &ShowerAlphaQCDNP::value, false);
-
- static Command<ShowerAlphaQCDNP> interfacecheck
- ("check",
- "check",
- &ShowerAlphaQCDNP::check, false);
-
- static Command<ShowerAlphaQCDNP> interfacecheckNf
- ("checkNf",
- "checkNf",
- &ShowerAlphaQCDNP::checkNf, false);
-
- static Command<ShowerAlphaQCDNP> interfacecheckscaleNP
- ("checkscaleNP",
- "checkscaleNP",
- &ShowerAlphaQCDNP::checkscaleNP, false);
-
- static Parameter<ShowerAlphaQCDNP,Energy> interfaceInputScale
- ("InputScale",
- "An optional input scale. MZ will be used if not set.",
- &ShowerAlphaQCDNP::_optInputScale, GeV, 91.1876_GeV, ZERO, 0*GeV,
- false, false, Interface::lowerlim);
-
- static ParVector<ShowerAlphaQCDNP,Energy> interfaceQuarkMasses
- ("QuarkMasses",
- "The quark masses to be used instead of the masses set in the particle data.",
- &ShowerAlphaQCDNP::_quarkMasses, GeV, -1, 0.0*GeV, 0.0*GeV, 0*GeV,
- false, false, Interface::lowerlim);
-
-
- static Switch<ShowerAlphaQCDNP,bool> interfaceQuarkBranching
- ("QuarkBranching",
- "True, if this coupling is used in a gluon to qqbar branching.",
- &ShowerAlphaQCDNP::_quarkBranching, false, false, false);
- static SwitchOption interfaceQuarkBranchingYes
- (interfaceQuarkBranching,
- "Yes",
- "Use in gluon to qqbar branching.",
- true);
- static SwitchOption interfaceQuarkBranchingNo
- (interfaceQuarkBranching,
- "No",
- "Use in gluon emission.",
- false);
-
- static Parameter<ShowerAlphaQCDNP,double> interfaceNPPower
- ("NPPower",
- "The non-perturbative power law",
- &ShowerAlphaQCDNP::_npPower, 2.0, 1.0, 10.,
- false, false, false);
-
-
-}
-
-void ShowerAlphaQCDNP::doinit() {
- ShowerAlpha::doinit();
- // calculate the value of 5-flavour lambda
- // evaluate the initial
- // value of Lambda from alphas if needed using Newton-Raphson
- _lambda[2]=computeLambda(_optInputScale,_alphain,5);
-
- // compute the threshold matching
- // top threshold
- for(int ix=1;ix<4;++ix) {
- if ( _quarkMasses.empty() ) {
- if(_thresopt)
- _thresholds[ix]=getParticleData(ix+3)->mass();
- else
- _thresholds[ix]=getParticleData(ix+3)->constituentMass();
- } else {
- // starting at zero rather than one, cf the other alphas's
- _thresholds[ix] = _quarkMasses[ix+2];
- }
- }
- // compute 6 flavour lambda by matching at top mass using Newton Raphson
- _lambda[3]=computeLambda(_thresholds[3],alphaS(_thresholds[3],_lambda[2],5,_nloop),6);
- // bottom threshold
- // compute 4 flavour lambda by matching at bottom mass using Newton Raphson
- _lambda[1]=computeLambda(_thresholds[2],alphaS(_thresholds[2],_lambda[2],5,_nloop),4);
- // charm threshold
- // compute 3 flavour lambda by matching at charm mass using Newton Raphson
- _lambda[0]=computeLambda(_thresholds[1],alphaS(_thresholds[1],_lambda[1],4,_nloop),3);
-
- //Energy q = scaleNPMin();
- //auto nflam = getLamNf(q);
- //_asMaxNP = alphaS(q, nflam.second, nflam.first, _nloop);
-
- Energy q = scaleThatmMinimizesScaleNP() ;
- _asMaxNP = value(q*q)*1.05;
-
- //_absoluteCutoff=_qmin*pow(100.*log(10.),-1./_npPower);
- _absoluteCutoff=_qmin*pow(log(10e100*GeV/_qmin),-1./_npPower);
-
- _nfMaxNP = nfNP(sqr(_absoluteCutoff));
-
-}
-
-string ShowerAlphaQCDNP::check(string args) {
-
- doinit();
-
- istringstream argin(args);
-
- double Q_low, Q_high;
- long n_steps;
-
- argin >> Q_low >> Q_high >> n_steps;
-
- string fname;
- argin >> fname;
-
- Repository::clog() << "checking alpha_s in range [" << Q_low << "," << Q_high << "] GeV in "
- << n_steps << " steps.\nResults are written to " << fname << "\n";
-
- double step_width = (Q_high-Q_low)/n_steps;
-
- ofstream out (fname.c_str());
-
- for (long k = 0; k <= n_steps; ++k) {
-
- Energy Q = Q_low*GeV + k*step_width*GeV;
-
- //out << (Q/GeV) << " " << value(Q*Q) << " " << _asMaxNP << "\n";
- out << (Q/GeV) << " " << value(Q*Q) << "\n";
-
-
- }
-
- return "alpha_s check finished";
-
-}
-
-string ShowerAlphaQCDNP::checkNf(string args) {
-
- doinit();
-
- istringstream argin(args);
-
- double Q_low, Q_high;
- long n_steps;
-
- argin >> Q_low >> Q_high >> n_steps;
-
- string fname;
- argin >> fname;
-
- Repository::clog() << "checking nfNP in range [" << Q_low << "," << Q_high << "] GeV in "
- << n_steps << " steps.\nResults are written to " << fname << "\n";
-
- double step_width = (Q_high-Q_low)/n_steps;
-
- ofstream out (fname.c_str());
-
- for (long k = 0; k <= n_steps; ++k) {
-
- Energy Q = Q_low*GeV + k*step_width*GeV;
-
- //out << (Q/GeV) << " " << nfNP(Q*Q) << " " << _nfMaxNP << "\n";
- out << (Q/GeV) << " " << nfNP(Q*Q) << "\n";
-
- }
-
- return "nfNP check finished";
-
-}
-
-
-
-string ShowerAlphaQCDNP::checkscaleNP(string args) {
-
- doinit();
-
- istringstream argin(args);
-
- double Q_low, Q_high;
- long n_steps;
-
- argin >> Q_low >> Q_high >> n_steps;
-
- string fname;
- argin >> fname;
-
- Repository::clog() << "checking scaleNP (in GeV) in range [" << Q_low << "," << Q_high << "] GeV in "
- << n_steps << " steps.\nResults are written to " << fname << "\n";
-
- double step_width = (Q_high-Q_low)/n_steps;
-
- ofstream out (fname.c_str());
-
- for (long k = 0; k <= n_steps; ++k) {
-
- Energy Q = Q_low*GeV + k*step_width*GeV;
-
- out << (Q/GeV) << " " << scaleNP(scaleFactor()*Q)/(1.*GeV) << "\n";
-
- }
-
- return "scaleNP check finished";
-
-}
-
-
-double ShowerAlphaQCDNP::value(const Energy2 scale) const {
-
- Energy q = scaleFactor()*sqrt(scale);
-
- if (q<_absoluteCutoff){
- auto nflam = getLamNf(_absoluteCutoff);
- double as = alphaS(scaleNP(_absoluteCutoff), nflam.second, nflam.first, _nloop);
- return as*pow(q/_absoluteCutoff,_npPower);
- } else {
- auto nflam = getLamNf(q);
- return alphaS(scaleNP(q), nflam.second, nflam.first, _nloop);
- }
-
-
-}
-
-
-string ShowerAlphaQCDNP::value(string scale) {
- istringstream readscale(scale);
- double inScale; readscale >> inScale;
- Energy theScale = inScale * GeV;
- initialize();
- ostringstream showvalue ("");
- showvalue << "alpha_s (" << theScale/GeV << " GeV) = "
- << value (sqr(theScale));
- return showvalue.str();
-}
-
-pair<short, Energy> ShowerAlphaQCDNP::getLamNf(Energy q) const {
- short nf = 6;
- // get lambda and nf according to the thresholds
- if (q < _thresholds[1]) nf = 3;
- else if (q < _thresholds[2]) nf = 4;
- else if (q < _thresholds[3]) nf = 5;
- return pair<short,Energy>(nf, _lambda[nf-3]);
-}
-
-Energy ShowerAlphaQCDNP::computeLambda(Energy match,
- double alpha,
- unsigned int nflav) const {
-
- Energy lamtest=200.0*MeV;
- double xtest;
- unsigned int ntry=0;
- do {
- ++ntry;
- xtest = log(sqr(match/lamtest));
- xtest += (alpha-alphaS(match,lamtest,nflav,_nloop))/derivativeAlphaS(match,lamtest,nflav,_nloop);
- Energy newLambda = match/exp(0.5 *xtest);
- lamtest = newLambda<match ? newLambda : 0.5*(lamtest+match);
- }
- while(abs(alpha-alphaS(match,lamtest,nflav,_nloop)) > _tolerance && ntry < _maxtry);
- return lamtest;
-
-}
-
-// --------------------------------------------------------------------------------
-// main modification for nonperturbative running in terms of changed argument and
-// nonperturbative number of flavours
-// --------------------------------------------------------------------------------
-
-double ShowerAlphaQCDNP::nfNP(const Energy2 q2) const {
- Energy q=sqrt(q2);
-
- if (q<_absoluteCutoff){
- return nfNP(_absoluteCutoff*_absoluteCutoff)*pow(_absoluteCutoff/q,_npPower);
- }
- else{
-
- //get p-nf
- double nf=getLamNf(q).first;
-
- //beta function coefficients; b=sum_i (alphaS/(4Pi))^i * sum_j b_ij *nf^j
- using Constants::pi;
- double b00 = 11.;
- double b01 = - 2./3.;
- double b10 = 51.;
- double b11 = - 19./3.;
- double c = (b00+b10*value(q2)/(4.*pi))/(b01+b11*value(q2)/(4.*pi));
-
- //absolute number of np-flavors
- double nfNPabs=(c+nf)*(q*scaleNPDerivative(q)/scaleNP(q))-c;
-
- //return ratio of np-flavors over p-flavors
- return nfNPabs/nf;
- }
-}
-
-Energy ShowerAlphaQCDNP::scaleNP(const Energy q) const {
- return q*(1.+(_qmin/q)*(exp(pow(_qmin/q,_npPower))-1.));
-}
-
-double ShowerAlphaQCDNP::scaleNPDerivative(const Energy q) const {
- return 1.-exp(pow(_qmin/q,_npPower))*_npPower*pow(_qmin/q,1.+_npPower);
-}
-
-Energy ShowerAlphaQCDNP::scaleThatmMinimizesScaleNP() const {
- double x=(1./_npPower)*gsl_sf_lambert_W0(pow(_npPower,1./(1.+_npPower))/(1.+_npPower));
- return _qmin*exp(x)*pow(_npPower,1./(1.+_npPower));
-
-}
-
-Energy ShowerAlphaQCDNP::scaleNPMin() const {
- double x=((1.+_npPower)/_npPower)*gsl_sf_lambert_W0(pow(_npPower,1./(1.+_npPower))/(1.+_npPower));
- return _qmin*(-1.+exp(x)+pow(x,-1./_npPower));
-}
diff --git a/Shower/QTilde/Couplings/ShowerAlphaQCDNP.h b/Shower/QTilde/Couplings/ShowerAlphaQCDNP.h
deleted file mode 100644
--- a/Shower/QTilde/Couplings/ShowerAlphaQCDNP.h
+++ /dev/null
@@ -1,382 +0,0 @@
-// -*- C++ -*-
-//
-// ShowerAlphaQCDNP.h is a part of Herwig - A multi-purpose Monte Carlo event generator
-// Copyright (C) 2002-2019 The Herwig Collaboration
-//
-// Herwig is licenced under version 3 of the GPL, see COPYING for details.
-// Please respect the MCnet academic guidelines, see GUIDELINES for details.
-//
-#ifndef HERWIG_ShowerAlphaQCDNP_H
-#define HERWIG_ShowerAlphaQCDNP_H
-//
-// This is the declaration of the ShowerAlphaQCDNP class.
-//
-
-#include "Herwig/Shower/ShowerAlpha.h"
-
-namespace Herwig {
-
-using namespace ThePEG;
-
-/** \ingroup Shower
- *
- * This concrete class provides the definition of the
- * pure virtual function value() and overestimateValue() for the
- * strong coupling.
- *
- * A number of different options for the running of the coupling
- * and its initial definition are supported.
- *
- * @see \ref ShowerAlphaQCDNPInterfaces "The interfaces"
- * defined for ShowerAlphaQCDNP.
- */
-class ShowerAlphaQCDNP: public ShowerAlpha {
-
-public:
-
- /**
- * The default constructor.
- */
- ShowerAlphaQCDNP() :
- ShowerAlpha(),
- _qmin(1*GeV), _asMaxNP(1.0), _nfMaxNP(15.0),
- _thresholds(4), _lambda(4),
- _nloop(2), _thresopt(false),
- _alphain(0.118), _tolerance(1e-10),
- _maxtry(100),
- _npPower(2.), _optInputScale(91.1876_GeV),
- _quarkBranching(false) {}
-
-public:
-
- /**
- * Methods to return the coupling
- */
- //@{
- /**
- * It returns the running coupling value evaluated at the input scale
- * multiplied by the scale factor scaleFactor().
- * @param scale The scale
- * @return The coupling
- */
- virtual double value(const Energy2 scale) const;
-
- /**
- * Virtual method that is supposed to return the
- * running alpha value evaluated at the input scale.
- * @param scale The scale
- * @return The coupling
- */
- virtual double showerValue(const Energy2 scale) const {
- if ( !_quarkBranching ) {
- return value(scale);
- }
- return nfNP(scale)*value(scale);
- }
-
- /**
- * It returns the running coupling value evaluated at the input scale
- * multiplied by the scale factor scaleFactor().
- */
- virtual double overestimateValue() const {
- return _asMaxNP;
- }
-
- /**
- * Virtual method, which
- * should be overridden in a derived class to provide an
- * overestimate approximation of the alpha value.
- */
- virtual double showerOverestimateValue() const {
- if ( !_quarkBranching ) {
- return overestimateValue();
- }
- return overestimateNfNP()*overestimateValue();
- }
-
- /**
- * Return the ratio of the coupling at the scale to the overestimated value
- */
- virtual double ratio(const Energy2 scale,double factor =1.) const {
- Energy2 q2 = sqr(factor)*scale;
- return value(q2)/overestimateValue();
- }
-
- /**
- * Virtual method which returns the ratio of the running alpha
- * value at the input scale to the overestimated value.
- * @param scale The scale
- * @return The ratio
- */
- virtual double showerRatio(const Energy2 scale,double factor=1.) const {
-
- if ( !_quarkBranching ) {
- return ratio(scale,factor);
- }
- return ratioNfNP(scale,factor)*ratio(scale,factor);
- }
-
- /**
- * Initialize this coupling.
- */
- virtual void initialize() { doinit(); }
-
- /**
- * A command to initialize the coupling and write
- * its value at the scale given by the argument (in GeV)
- */
- string value(string);
-
- /**
- * Match thresholds and write alpha_s
- * specified file; arguments are
- * Q_low/GeV Q_high/GeV n_steps filename
- */
- string check(string args);
-
- /**
- * Match thresholds and write alpha_s
- * specified file; arguments are
- * Q_low/GeV Q_high/GeV n_steps filename
- */
- string checkNf(string args);
-
- string checkscaleNP(string args);
-
- //@}
-
- /**
- * Get the value of \f$\Lambda_{\rm QCd}\f$
- * @param nf number of flavours
- */
- Energy lambdaQCD(unsigned int nf) {
- if (nf <= 3) return _lambda[0];
- else if (nf==4 || nf==5) return _lambda[nf-3];
- else return _lambda[3];
- }
-
- /**
- * Return the quark masses to be used; if not empty these masses
- * should be considered instead of the ones set in the particle data
- * objects.
- */
- const vector<Energy>& quarkMasses() const { return _quarkMasses; }
-
- /**
- * Return the non-perturbative running flavour number, normalized to
- * the number of active flavours.
- */
- double nfNP(const Energy2 scale) const;
-
- /**
- * Return the modification of the scale argument
- */
- Energy scaleNP(const Energy scale) const;
-
- /**
- * Return the the derivative of scaleNP
- */
- double scaleNPDerivative(const Energy scale) const;
-
- /**
- * Return the minimum of the modification of the scale argument
- */
- Energy scaleNPMin() const;
-
-
- /**
- * Return the scale q that minimizes scaleNP (i.e. scaleNP(q)=scaleNPMin() )
- */
- Energy scaleThatmMinimizesScaleNP() const;
-
- /**
- * Return the maximum of the non-perturbative running flavour number
- * normalized to the number of perturbatively active flavours.
- */
- double overestimateNfNP() const {
- return _nfMaxNP;
- }
-
- /**
- * Return ration to the maximum of the non-perturbative running
- * flavour number normalized to the number of perturbatively active
- * flavours.
- */
- double ratioNfNP(const Energy2 scale,double factor=1.) const {
- Energy2 q2 = sqr(factor)*scale;
- return nfNP(q2)/overestimateNfNP();
- }
-
-public:
-
- /** @name Functions used by the persistent I/O system. */
- //@{
- /**
- * Function used to write out object persistently.
- * @param os the persistent output stream written to.
- */
- void persistentOutput(PersistentOStream & os) const;
-
- /**
- * Function used to read in object persistently.
- * @param is the persistent input stream read from.
- * @param version the version number of the object when written.
- */
- void persistentInput(PersistentIStream & is, int version);
- //@}
-
- /**
- * The standard Init function used to initialize the interfaces.
- * Called exactly once for each class by the class description system
- * before the main function starts or
- * when this class is dynamically loaded.
- */
- static void Init();
-
-protected:
-
- /** @name Clone Methods. */
- //@{
- /**
- * Make a simple clone of this object.
- * @return a pointer to the new object.
- */
- virtual IBPtr clone() const;
-
- /** Make a clone of this object, possibly modifying the cloned object
- * to make it sane.
- * @return a pointer to the new object.
- */
- virtual IBPtr fullclone() const;
- //@}
-
-
-protected:
-
- /** @name Standard Interfaced functions. */
- //@{
- /**
- * Initialize this object after the setup phase before saving an
- * EventGenerator to disk.
- * @throws InitException if object could not be initialized properly.
- */
- virtual void doinit();
- //@}
-
-private:
-
- /**
- * Member functions which calculate the coupling
- */
- //@{
- /**
- * Compute the value of \f$Lambda\f$ needed to get the input value of
- * the strong coupling at the scale given for the given number of flavours
- * using the Newton-Raphson method
- * @param match The scale for the coupling
- * @param alpha The input coupling
- * @param nflav The number of flavours
- */
- Energy computeLambda(Energy match, double alpha, unsigned int nflav) const;
-
- /**
- * Return the value of \f$\Lambda\f$ and the number of flavours at the scale.
- * @param q The scale
- * @return The number of flavours at the scale and \f$\Lambda\f$.
- */
- pair<short, Energy> getLamNf(Energy q) const;
- //@}
-
-private:
-
- /**
- * The assignment operator is private and must never be called.
- * In fact, it should not even be implemented.
- */
- ShowerAlphaQCDNP & operator=(const ShowerAlphaQCDNP &) = delete;
-
-private:
-
- /**
- * Transition value
- */
- Energy _qmin;
-
- /**
- * Maximum value of alphas
- */
- double _asMaxNP;
-
- /**
- * Maximum of non-perturbative flavour number
- */
- double _nfMaxNP;
-
- /**
- * Thresholds for the different number of flavours
- */
- vector<Energy> _thresholds;
-
- /**
- * \f$\Lambda\f$ for the different number of flavours
- */
- vector<Energy> _lambda;
-
- /**
- * Option for the number of loops
- */
- unsigned int _nloop;
-
- /**
- * Option for the threshold masses
- */
- bool _thresopt;
-
- /**
- * Input value of \f$alpha_S(M_Z)\f$
- */
- double _alphain;
-
- /**
- * Tolerance for discontinuities at the thresholds
- */
- double _tolerance;
-
- /**
- * Maximum number of iterations for the Newton-Raphson method to converge
- */
- unsigned int _maxtry;
-
-
- /**
- * Power of non-perturbative modification
- */
- double _npPower;
-
- /**
- * Lowest cutoff scale
- */
- Energy _absoluteCutoff;
-
- /**
- * An optional input scale to be used for the input alphas; if zero MZ will
- * be used out of the particle data object.
- */
- Energy _optInputScale;
-
- /**
- * Flag if factor for quark branching should be included
- */
- bool _quarkBranching;
-
- /**
- * The quark masses to be used; if not empty these masses should be
- * considered instead of the ones set in the particle data objects.
- */
- vector<Energy> _quarkMasses;
-
-};
-
-}
-
-#endif /* HERWIG_ShowerAlphaQCDNP_H */
diff --git a/Shower/QTilde/Makefile.am b/Shower/QTilde/Makefile.am
--- a/Shower/QTilde/Makefile.am
+++ b/Shower/QTilde/Makefile.am
@@ -1,56 +1,55 @@
SUBDIRS = Matching SplittingFunctions/Onium SplittingFunctions/Dark
pkglib_LTLIBRARIES = HwShower.la
HwShower_la_LDFLAGS = $(AM_LDFLAGS) -module -version-info 30:0:0
HwShower_la_SOURCES = \
Couplings/ShowerAlphaQCD.h Couplings/ShowerAlphaQCD.cc \
Couplings/ShowerAlphaQED.h Couplings/ShowerAlphaQED.cc\
-Couplings/ShowerAlphaQCDNP.h Couplings/ShowerAlphaQCDNP.cc\
Couplings/HiddenValleyAlpha.cc Couplings/HiddenValleyAlpha.h \
QTildeShowerHandler.h QTildeShowerHandler.fh QTildeShowerHandler.cc \
SplittingFunctions/HalfHalfOneSplitFn.h SplittingFunctions/HalfHalfOneSplitFn.cc\
SplittingFunctions/HalfHalfOneEWSplitFn.h SplittingFunctions/HalfHalfOneEWSplitFn.cc\
SplittingFunctions/HalfHalfZeroEWSplitFn.h SplittingFunctions/HalfHalfZeroEWSplitFn.cc\
SplittingFunctions/OneOneOneEWSplitFn.h SplittingFunctions/OneOneOneEWSplitFn.cc\
SplittingFunctions/OneOneOneQEDSplitFn.h SplittingFunctions/OneOneOneQEDSplitFn.cc\
SplittingFunctions/OneOneZeroEWSplitFn.h SplittingFunctions/OneOneZeroEWSplitFn.cc\
SplittingFunctions/ZeroZeroZeroEWSplitFn.h SplittingFunctions/ZeroZeroZeroEWSplitFn.cc\
SplittingFunctions/OneZeroZeroEWSplitFn.h SplittingFunctions/OneZeroZeroEWSplitFn.cc\
SplittingFunctions/ZeroZeroOneEWSplitFn.h SplittingFunctions/ZeroZeroOneEWSplitFn.cc\
SplittingFunctions/OneOneOneSplitFn.h SplittingFunctions/OneOneOneSplitFn.cc\
SplittingFunctions/OneOneOneMassiveSplitFn.h SplittingFunctions/OneOneOneMassiveSplitFn.cc\
SplittingFunctions/ZeroZeroOneSplitFn.h SplittingFunctions/ZeroZeroOneSplitFn.cc\
SplittingFunctions/OneHalfHalfSplitFn.h SplittingFunctions/OneHalfHalfSplitFn.cc\
SplittingFunctions/HalfOneHalfSplitFn.h SplittingFunctions/HalfOneHalfSplitFn.cc\
SplittingFunctions/CMWOneOneOneSplitFn.h SplittingFunctions/CMWOneOneOneSplitFn.cc\
SplittingFunctions/CMWHalfHalfOneSplitFn.h SplittingFunctions/CMWHalfHalfOneSplitFn.cc\
Kinematics/Decay_QTildeShowerKinematics1to2.cc \
Kinematics/Decay_QTildeShowerKinematics1to2.h \
Kinematics/IS_QTildeShowerKinematics1to2.cc Kinematics/IS_QTildeShowerKinematics1to2.h \
Kinematics/FS_QTildeShowerKinematics1to2.cc Kinematics/FS_QTildeShowerKinematics1to2.h \
Kinematics/KinematicHelpers.h \
Kinematics/KinematicsReconstructor.cc \
Kinematics/KinematicsReconstructor.tcc \
Kinematics/KinematicsReconstructor.h \
Kinematics/KinematicsReconstructor.fh \
Base/HardTree.cc Base/HardTree.h Base/HardTree.fh \
Base/HardBranching.h Base/HardBranching.fh Base/HardBranching.cc\
Base/PartnerFinder.h Base/PartnerFinder.fh Base/PartnerFinder.cc \
Base/ShowerVeto.h Base/ShowerVeto.fh Base/ShowerVeto.cc \
Base/FullShowerVeto.h Base/FullShowerVeto.fh Base/FullShowerVeto.cc \
SplittingFunctions/SplittingGenerator.cc SplittingFunctions/SplittingGenerator.h\
SplittingFunctions/SplittingGenerator.fh \
Base/ShowerTree.h Base/ShowerTree.fh Base/ShowerTree.cc \
ShowerConfig.h ShowerConfig.cc \
Base/Branching.h \
Base/ShowerParticle.cc Base/ShowerParticle.fh Base/ShowerParticle.h \
Kinematics/ShowerKinematics.fh Kinematics/ShowerKinematics.h Kinematics/ShowerKinematics.cc \
Kinematics/ShowerBasis.fh Kinematics/ShowerBasis.h Kinematics/ShowerBasis.cc \
Base/ShowerProgenitor.fh Base/ShowerProgenitor.h \
SplittingFunctions/SudakovFormFactor.cc SplittingFunctions/SudakovFormFactor.h SplittingFunctions/SudakovFormFactor.fh \
SplittingFunctions/SudakovCutOff.cc SplittingFunctions/SudakovCutOff.h SplittingFunctions/SudakovCutOff.fh \
SplittingFunctions/PTCutOff.cc SplittingFunctions/PTCutOff.h \
SplittingFunctions/MassCutOff.cc SplittingFunctions/MassCutOff.h \
SplittingFunctions/VariableMassCutOff.cc SplittingFunctions/VariableMassCutOff.h \
SplittingFunctions/Sudakov1to2FormFactor.h SplittingFunctions/Sudakov1to2FormFactor.fh \
SplittingFunctions/Sudakov1to2FormFactor.cc \
Base/ShowerVertex.cc Base/ShowerVertex.fh Base/ShowerVertex.h
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sat, Dec 21, 5:43 PM (12 h, 31 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4023685
Default Alt Text
(26 KB)
Attached To
rHERWIGHG herwighg
Event Timeline
Log In to Comment