PARTONS  
PARtonic Tomography Of Nucleon Software
Public Member Functions | Static Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
PARTONS::DVMPProcessGK06 Class Reference

TODO. More...

Inheritance diagram for PARTONS::DVMPProcessGK06:
PARTONS::DVMPProcessModule PARTONS::ProcessModule< DVMPObservableKinematic, DVMPObservableResult > PARTONS::ModuleObject PARTONS::BaseObject

Public Member Functions

 DVMPProcessGK06 (const std::string &className)
 Constructor. More...
 
virtual ~DVMPProcessGK06 ()
 Default destructor. More...
 
virtual DVMPProcessGK06clone () const
 Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry. More...
 
- Public Member Functions inherited from PARTONS::DVMPProcessModule
virtual ~DVMPProcessModule ()
 Destructor. More...
 
virtual std::string toString () const
 Return a pre-formatted characters string for output visualization of class member's values. More...
 
virtual void resolveObjectDependencies ()
 Because of the initialization step order of the program, objects are registered in a total random order and some objects depend on others. More...
 
virtual void run ()
 
virtual void configure (const ElemUtils::Parameters &parameters)
 Provides a generic method to configure all types of modules by passing a Parameters object. More...
 
virtual void prepareSubModules (const std::map< std::string, BaseObjectData > &subModulesData)
 Method used in automation to prepare all the modules used by this current module and configure them recursively. More...
 
virtual List< GPDTypegetListOfAvailableGPDTypeForComputation () const
 Must be implemented in child class. More...
 
DVMPObservableResult compute (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, PolarizationType::Type mesonPolarization, const DVMPObservableKinematic &kinematic, const List< GPDType > &gpdType)
 Computes the differential cross-section. More...
 
virtual void resetPreviousKinematic ()
 Reset previous kinematics. More...
 
bool isPreviousCCFKinematicDifferent (const DVMPConvolCoeffFunctionKinematic &kinematic) const
 Check if this kinematics is different than the previous one. More...
 
DVMPScalesModulegetScaleModule () const
 Get scale module. More...
 
void setScaleModule (DVMPScalesModule *pScaleModule)
 Set scale module. More...
 
DVMPXiConverterModulegetXiConverterModule () const
 Get xi converter module. More...
 
void setXiConverterModule (DVMPXiConverterModule *pXiConverterModule)
 Set xi converted module. More...
 
DVMPConvolCoeffFunctionModulegetConvolCoeffFunctionModule () const
 Get CCF module;. More...
 
void setConvolCoeffFunctionModule (DVMPConvolCoeffFunctionModule *pConvolCoeffFunctionModule)
 Set CCF module. More...
 
void setConvolCoeffFunction (const DVMPConvolCoeffFunctionKinematic &kin, const DVMPConvolCoeffFunctionResult &result)
 Set manually CFFs. More...
 
- Public Member Functions inherited from PARTONS::ProcessModule< DVMPObservableKinematic, DVMPObservableResult >
virtual ~ProcessModule ()
 Destructor. More...
 
bool isCCFModuleDependent () const
 Check if this process module depends on a CCF module. More...
 
void setIsCCFModuleDependent (bool isCCFModuleDependent)
 Set if this process module depends on a CCF module. More...
 
- Public Member Functions inherited from PARTONS::ModuleObject
 ModuleObject (const std::string &className, ChannelType::Type channelType)
 Constructor. More...
 
virtual ~ModuleObject ()
 Default destructor. More...
 
unsigned int getReferenceModuleId () const
 Get reference module id. More...
 
void setReferenceModuleId (unsigned int referenceModuleId)
 Set reference module id. More...
 
ChannelType::Type getChannelType () const
 Get channel type. More...
 
- Public Member Functions inherited from PARTONS::BaseObject
 BaseObject (const std::string &className)
 Constructor. More...
 
virtual ~BaseObject ()
 Default destructor. More...
 
void serialize (ElemUtils::Packet &packet) const
 Used to split a complex C++ object into a concatenation of simple types. More...
 
void unserialize (ElemUtils::Packet &packet)
 Used to rebuild a complex C++ object from a concatenation of simple type. More...
 
bool operator< (const BaseObject &other) const
 Overload of < operator to sort BaseObject object by its indexId value. More...
 
const std::string & getClassName () const
 
unsigned int getObjectId () const
 
int getIndexId () const
 
void setIndexId (int indexId)
 

Static Public Attributes

static const unsigned int classId
 Unique ID to automatically register the class in the registry. More...
 
- Static Public Attributes inherited from PARTONS::DVMPProcessModule
static const std::string DVMP_PROCESS_MODULE_CLASS_NAME
 Type of the module in XML automation. More...
 
- Static Public Attributes inherited from PARTONS::ModuleObject
static const std::string CLASS_NAME = "className"
 

Protected Member Functions

 DVMPProcessGK06 (const DVMPProcessGK06 &other)
 Copy constructor. More...
 
virtual void initModule ()
 Pure virtual function that provides skeleton for module initialization. More...
 
virtual void isModuleWellConfigured ()
 Pure virtual function that provides skeleton to check if the module is well initialized and configured. More...
 
virtual PhysicalType< double > CrossSection ()
 Differential cross section. More...
 
- Protected Member Functions inherited from PARTONS::DVMPProcessModule
 DVMPProcessModule (const std::string &className)
 Default constructor. More...
 
 DVMPProcessModule (const DVMPProcessModule &other)
 Copy constructor. More...
 
virtual void setKinematics (const DVMPObservableKinematic &kinematic)
 Set internal kinematics. More...
 
virtual void setExperimentalConditions (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, PolarizationType::Type mesonPolarization)
 
void computeConvolCoeffFunction (const DVMPObservableKinematic &kinematic, PolarizationType::Type mesonPolarization, const List< GPDType > &gpdType=List< GPDType >())
 Compute CCF for a given kinematics. More...
 
std::complex< double > getConvolCoeffFunctionValue (GPDType::Type gpdType)
 Gives back a previously computed Compton Form Factor. More...
 
- Protected Member Functions inherited from PARTONS::ProcessModule< DVMPObservableKinematic, DVMPObservableResult >
 ProcessModule (const std::string &className, ChannelType::Type channelType)
 Constructor. More...
 
 ProcessModule (const ProcessModule &other)
 Copy constructor. More...
 
- Protected Member Functions inherited from PARTONS::ModuleObject
 ModuleObject (const ModuleObject &other)
 
- Protected Member Functions inherited from PARTONS::BaseObject
 BaseObject (const BaseObject &other)
 Copy constructor. More...
 
void info (const std::string &functionName, const std::string &message) const
 Print info message into logger. More...
 
void debug (const std::string &functionName, const std::string &message) const
 Print debug message into logger. More...
 
void warn (const std::string &functionName, const std::string &message) const
 Print warning message into logger. More...
 
void errorMissingParameter (const std::string &parameterName) const
 Use in automation process to throw exception when a parameter is missing from the XML scenario file. More...
 

Private Member Functions

double CrossSectionL ()
 Partial cross-section L. More...
 
double CrossSectionT ()
 Partial cross-section T. More...
 
double CrossSectionLT ()
 Partial cross-section LT. More...
 
double CrossSectionTT ()
 Partial cross-section TT. More...
 
double AsymmetryAUUcosphi ()
 cos(\phi) moment of AUU. More...
 
double AsymmetryAUUcos2phi ()
 cos(2\phi) moment of AUU. More...
 
double AsymmetryAULsinphi ()
 sin(\phi) moment of AUL. More...
 
double AsymmetryAULsin2phi ()
 sin(2\phi) moment of AUL. More...
 
double AsymmetryAULsin3phi ()
 sin(3\phi) moment of AUL. More...
 
double AsymmetryALUsinphi ()
 sin_\phi moment of ALU. More...
 
double AsymmetryALLconst ()
 constant term in ALL. More...
 
double AsymmetryALLcosphi ()
 cos(\phi) moment of ALL. More...
 
double AsymmetryALLcos2phi ()
 cos(2\phi) moment of ALL. More...
 
double poleResidue ()
 The residue of the pole in Pi+ production. More...
 
double poleAmplitude0p0p ()
 Computation of the pion pole amplitude M_{0+0+}. More...
 
double poleAmplitude0m0p ()
 Computation of the pion pole amplitude M_{0-0+}. More...
 
double poleAmplitude0mpp ()
 Computation of the pion pole amplitude M_{0-++}. More...
 
double poleAmplitude0ppp ()
 Computation of the pion pole amplitude M_{0+++}. More...
 
double poleAmplitude0pmp ()
 Computation of the pion pole amplitude M_{0+-+}. More...
 
double poleAmplitude0mmp ()
 Computation of the pion pole amplitude M_{0–+}. More...
 
std::complex< double > Amplitude0p0p ()
 Computation of the amplitude M_{0+0+}. More...
 
std::complex< double > Amplitude0m0p ()
 Computation of the amplitude M_{0-0+}. More...
 
std::complex< double > Amplitude0mpp ()
 Computation of the amplitude M_{0-++}. More...
 
std::complex< double > Amplitude0ppp ()
 Computation of the amplitude M_{0+++}. More...
 
std::complex< double > Amplitude0pmp ()
 Computation of the amplitude M_{0+-+}. More...
 
std::complex< double > Amplitude0mmp ()
 Computation of the amplitude M_{0–+}. More...
 
double lambdaFunction (double a, double b, double c) const
 Mandalstam function. More...
 

Private Attributes

double m_W2
 W^2 variable. More...
 
double m_gamma
 gamma variable. More...
 
double m_eps
 epsilon variable. More...
 
double m_xi
 xi variable. More...
 
double m_tminGK
 tMin a la GK. More...
 

Additional Inherited Members

- Protected Attributes inherited from PARTONS::DVMPProcessModule
double m_xB
 Bjorken variable. More...
 
double m_t
 Mandelstam variable (square of the 4-momentum transferm in GeV2). More...
 
double m_Q2
 Virtuality of the incoming photon (in GeV2). More...
 
double m_E
 Beam energy in target rest frame (in GeV). More...
 
double m_phi
 Angle between leptonic and hadronic plane (in radians, Trento convention). More...
 
MesonType::Type m_mesonType
 Meson type. More...
 
double m_beamHelicity
 Beam helicity. More...
 
double m_beamCharge
 Beam charge. More...
 
NumA::Vector3D m_targetPolarization
 Target polarization. More...
 
PolarizationType::Type m_mesonPolarization
 Meson polarization. More...
 
double m_tmin
 Minimal value of t. More...
 
double m_tmax
 Maximal value of t. More...
 
double m_xBmin
 Minimal value of xB. More...
 
double m_y
 Lepton energy fraction. More...
 
DVMPScalesModulem_pScaleModule
 Pointer to the underlying scale module. More...
 
DVMPXiConverterModulem_pXiConverterModule
 Pointer to the underlying xi converter module. More...
 
DVMPConvolCoeffFunctionModulem_pConvolCoeffFunctionModule
 Pointer to the underlying CCF module. More...
 
DVMPConvolCoeffFunctionResult m_dvcsConvolCoeffFunctionResult
 Stored Compton Form Factor result. More...
 
DVMPConvolCoeffFunctionKinematic m_lastCCFKinematics
 Last Compton Form Factor kinematics. More...
 
- Protected Attributes inherited from PARTONS::ProcessModule< DVMPObservableKinematic, DVMPObservableResult >
bool m_isCCFModuleDependent
 Boolean (true if this Process module depends on a CCF module). More...
 
- Protected Attributes inherited from PARTONS::ModuleObject
ModuleObjectFactorym_pModuleObjectFactory
 Pointer tp module object factory. More...
 

Detailed Description

TODO.

Constructor & Destructor Documentation

◆ DVMPProcessGK06() [1/2]

PARTONS::DVMPProcessGK06::DVMPProcessGK06 ( const std::string &  className)

Constructor.

See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.

Parameters
classNamename of child class.

◆ ~DVMPProcessGK06()

PARTONS::DVMPProcessGK06::~DVMPProcessGK06 ( )
virtual

Default destructor.

◆ DVMPProcessGK06() [2/2]

PARTONS::DVMPProcessGK06::DVMPProcessGK06 ( const DVMPProcessGK06 other)
protected

Copy constructor.

Parameters
otherObject to be copied.

Member Function Documentation

◆ Amplitude0m0p()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0m0p ( )
private

Computation of the amplitude M_{0-0+}.

◆ Amplitude0mmp()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0mmp ( )
private

Computation of the amplitude M_{0–+}.

◆ Amplitude0mpp()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0mpp ( )
private

Computation of the amplitude M_{0-++}.

◆ Amplitude0p0p()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0p0p ( )
private

Computation of the amplitude M_{0+0+}.

◆ Amplitude0pmp()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0pmp ( )
private

Computation of the amplitude M_{0+-+}.

◆ Amplitude0ppp()

std::complex< double > PARTONS::DVMPProcessGK06::Amplitude0ppp ( )
private

Computation of the amplitude M_{0+++}.

◆ AsymmetryALLconst()

double PARTONS::DVMPProcessGK06::AsymmetryALLconst ( )
private

constant term in ALL.

◆ AsymmetryALLcos2phi()

double PARTONS::DVMPProcessGK06::AsymmetryALLcos2phi ( )
private

cos(2\phi) moment of ALL.

◆ AsymmetryALLcosphi()

double PARTONS::DVMPProcessGK06::AsymmetryALLcosphi ( )
private

cos(\phi) moment of ALL.

◆ AsymmetryALUsinphi()

double PARTONS::DVMPProcessGK06::AsymmetryALUsinphi ( )
private

sin_\phi moment of ALU.

◆ AsymmetryAULsin2phi()

double PARTONS::DVMPProcessGK06::AsymmetryAULsin2phi ( )
private

sin(2\phi) moment of AUL.

◆ AsymmetryAULsin3phi()

double PARTONS::DVMPProcessGK06::AsymmetryAULsin3phi ( )
private

sin(3\phi) moment of AUL.

◆ AsymmetryAULsinphi()

double PARTONS::DVMPProcessGK06::AsymmetryAULsinphi ( )
private

sin(\phi) moment of AUL.

◆ AsymmetryAUUcos2phi()

double PARTONS::DVMPProcessGK06::AsymmetryAUUcos2phi ( )
private

cos(2\phi) moment of AUU.

◆ AsymmetryAUUcosphi()

double PARTONS::DVMPProcessGK06::AsymmetryAUUcosphi ( )
private

cos(\phi) moment of AUU.

◆ clone()

DVMPProcessGK06 * PARTONS::DVMPProcessGK06::clone ( ) const
virtual

Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.

Returns

Implements PARTONS::DVMPProcessModule.

◆ CrossSection()

PhysicalType< double > PARTONS::DVMPProcessGK06::CrossSection ( )
protectedvirtual

Differential cross section.

Reimplemented from PARTONS::DVMPProcessModule.

◆ CrossSectionL()

double PARTONS::DVMPProcessGK06::CrossSectionL ( )
private

Partial cross-section L.

◆ CrossSectionLT()

double PARTONS::DVMPProcessGK06::CrossSectionLT ( )
private

Partial cross-section LT.

◆ CrossSectionT()

double PARTONS::DVMPProcessGK06::CrossSectionT ( )
private

Partial cross-section T.

◆ CrossSectionTT()

double PARTONS::DVMPProcessGK06::CrossSectionTT ( )
private

Partial cross-section TT.

◆ initModule()

void PARTONS::DVMPProcessGK06::initModule ( )
protectedvirtual

Pure virtual function that provides skeleton for module initialization.

Children must define and override it.

Reimplemented from PARTONS::DVMPProcessModule.

◆ isModuleWellConfigured()

void PARTONS::DVMPProcessGK06::isModuleWellConfigured ( )
protectedvirtual

Pure virtual function that provides skeleton to check if the module is well initialized and configured.

Children must define and override it.

Reimplemented from PARTONS::DVMPProcessModule.

◆ lambdaFunction()

double PARTONS::DVMPProcessGK06::lambdaFunction ( double  a,
double  b,
double  c 
) const
private

Mandalstam function.

◆ poleAmplitude0m0p()

double PARTONS::DVMPProcessGK06::poleAmplitude0m0p ( )
private

Computation of the pion pole amplitude M_{0-0+}.

◆ poleAmplitude0mmp()

double PARTONS::DVMPProcessGK06::poleAmplitude0mmp ( )
private

Computation of the pion pole amplitude M_{0–+}.

◆ poleAmplitude0mpp()

double PARTONS::DVMPProcessGK06::poleAmplitude0mpp ( )
private

Computation of the pion pole amplitude M_{0-++}.

◆ poleAmplitude0p0p()

double PARTONS::DVMPProcessGK06::poleAmplitude0p0p ( )
private

Computation of the pion pole amplitude M_{0+0+}.

◆ poleAmplitude0pmp()

double PARTONS::DVMPProcessGK06::poleAmplitude0pmp ( )
private

Computation of the pion pole amplitude M_{0+-+}.

◆ poleAmplitude0ppp()

double PARTONS::DVMPProcessGK06::poleAmplitude0ppp ( )
private

Computation of the pion pole amplitude M_{0+++}.

◆ poleResidue()

double PARTONS::DVMPProcessGK06::poleResidue ( )
private

The residue of the pole in Pi+ production.

Member Data Documentation

◆ classId

const unsigned int PARTONS::DVMPProcessGK06::classId
static
Initial value:
=
new DVMPProcessGK06("DVMPProcessGK06"))
unsigned int registerBaseObject(BaseObject *pBaseObject)
Store a unique instance of a module identified by a unique string character key.
Definition: BaseObjectRegistry.cpp:45
static BaseObjectRegistry * getInstance()
Static function to be able to retrieve a unique instance pointer of this class anywhere in the code.
Definition: BaseObjectRegistry.cpp:15
DVMPProcessGK06(const std::string &className)
Constructor.
Definition: DVMPProcessGK06.cpp:21

Unique ID to automatically register the class in the registry.

◆ m_eps

double PARTONS::DVMPProcessGK06::m_eps
private

epsilon variable.

◆ m_gamma

double PARTONS::DVMPProcessGK06::m_gamma
private

gamma variable.

◆ m_tminGK

double PARTONS::DVMPProcessGK06::m_tminGK
private

tMin a la GK.

◆ m_W2

double PARTONS::DVMPProcessGK06::m_W2
private

W^2 variable.

◆ m_xi

double PARTONS::DVMPProcessGK06::m_xi
private

xi variable.


The documentation for this class was generated from the following files: