PARTONS
|
PARtonic Tomography Of Nucleon Software
|
Evaluation of differential cross-section for DDVCS process. More...
Public Member Functions | |
DDVCSProcessDMSW22 (const std::string &className) | |
Constructor. More... | |
virtual | ~DDVCSProcessDMSW22 () |
Destructor. More... | |
virtual DDVCSProcessDMSW22 * | clone () 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::DDVCSProcessModule | |
virtual | ~DDVCSProcessModule () |
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 ¶meters) |
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 DDVCSObservableResult | compute (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, const DDVCSObservableKinematic &kinematic, const List< GPDType > &gpdType=List< GPDType >()) |
virtual List< GPDType > | getListOfAvailableGPDTypeForComputation () const |
Must be implemented in child class. More... | |
DDVCSObservableResult | compute (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, const DDVCSObservableKinematic &kinematic, const List< GPDType > &gpdType, VCSSubProcessType::Type processType) |
Computes the differential cross-section. More... | |
virtual void | resetPreviousKinematic () |
Reset previous kinematics. More... | |
bool | isPreviousCCFKinematicDifferent (const DDVCSConvolCoeffFunctionKinematic &kinematic) const |
Check if this kinematics is different than the previous one. More... | |
DDVCSScalesModule * | getScaleModule () const |
Get scale module. More... | |
void | setScaleModule (DDVCSScalesModule *pScaleModule) |
Set scale module. More... | |
DDVCSXiConverterModule * | getXiConverterModule () const |
Get xi converter module. More... | |
void | setXiConverterModule (DDVCSXiConverterModule *pXiConverterModule) |
Set xi converted module. More... | |
DDVCSConvolCoeffFunctionModule * | getConvolCoeffFunctionModule () const |
Get CCF module;. More... | |
void | setConvolCoeffFunctionModule (DDVCSConvolCoeffFunctionModule *pConvolCoeffFunctionModule) |
Set CCF module. More... | |
Public Member Functions inherited from PARTONS::ProcessModule< DDVCSObservableKinematic, DDVCSObservableResult > | |
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::DDVCSProcessModule | |
static const std::string | DDVCS_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 | |
DDVCSProcessDMSW22 (const DDVCSProcessDMSW22 &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 > | CrossSectionBH () |
Bethe-Heitler differential cross section. More... | |
virtual PhysicalType< double > | CrossSectionVCS () |
Virtual Compton Scattering differential cross section. More... | |
virtual PhysicalType< double > | CrossSectionInterf () |
Interference differential cross section. More... | |
Protected Member Functions inherited from PARTONS::DDVCSProcessModule | |
DDVCSProcessModule (const std::string &className) | |
Default constructor. More... | |
DDVCSProcessModule (const DDVCSProcessModule &other) | |
Copy constructor. More... | |
virtual void | setKinematics (const DDVCSObservableKinematic &kinematic) |
Set internal kinematics. More... | |
virtual void | setExperimentalConditions (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
void | computeConvolCoeffFunction (const DDVCSObservableKinematic &kinematic, 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< DDVCSObservableKinematic, DDVCSObservableResult > | |
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 ¶meterName) const |
Use in automation process to throw exception when a parameter is missing from the XML scenario file. More... | |
Private Member Functions | |
std::complex< double > | ampliBH1 (int s2, int s1, int sl, int s) |
std::complex< double > | ampliBH1crossed (int s2, int s1, int sl, int s) |
std::complex< double > | ampliBH2 (int s2, int s1, int sl, int s) |
std::complex< double > | ampliBH2crossed (int s2, int s1, int sl, int s) |
std::complex< double > | ampliVCS (int s2, int s1, int sl, int s) |
double | crossSectionBH (int targetPolariz) |
double | crossSectionVCS (int targetPolariz) |
double | crossSectionInterf (int targetPolariz) |
std::complex< double > | sKS (const double r1[4], const double r2[4]) const |
std::complex< double > | tKS (const double r1[4], const double r2[4]) const |
std::complex< double > | fFunction (int lambda, double k0[4], double k1[4], int lambdaPrime, double k2[4], double k3[4]) const |
std::complex< double > | gFunction (int lambda, double L[4], double R[4], double k[4]) const |
std::complex< double > | Yfunction (int s2, int s1) const |
std::complex< double > | Zfunction (int s2, int s1) const |
std::complex< double > | J2function (int s2, int s1) const |
double | MinkProd (const double p[4], const double q[4]) const |
std::complex< double > | jFunction (int mu, int helic, double p1[4], double p2[4]) const |
std::complex< double > | J15plus (int s2, int s1) const |
std::complex< double > | J25plus (int s2, int s1) const |
double | LCperp (int mu, int nu) const |
std::complex< double > | Flong (int h1, int s1) const |
void | computeInternalVariables (double Mnucleon) |
Additional Inherited Members | |
Protected Attributes inherited from PARTONS::DDVCSProcessModule | |
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_Q2Prim |
Virtuality of the outgoing 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... | |
double | m_phiL |
Azimuthal angle of the lepton pair (in radians). More... | |
double | m_thetaL |
Polar angle of the lepton pair (in radians). More... | |
double | m_beamHelicity |
Beam helicity. More... | |
double | m_beamCharge |
Beam charge. More... | |
NumA::Vector3D | m_targetPolarization |
Target polarization. More... | |
DDVCSScalesModule * | m_pScaleModule |
Pointer to the underlying scale module. More... | |
DDVCSXiConverterModule * | m_pXiConverterModule |
Pointer to the underlying xi converter module. More... | |
DDVCSConvolCoeffFunctionModule * | m_pConvolCoeffFunctionModule |
Pointer to the underlying CCF module. More... | |
DDVCSConvolCoeffFunctionResult | m_dvcsConvolCoeffFunctionResult |
Stored Compton Form Factor result. More... | |
DDVCSConvolCoeffFunctionKinematic | m_lastCCFKinematics |
Last Compton Form Factor kinematics. More... | |
Protected Attributes inherited from PARTONS::ProcessModule< DDVCSObservableKinematic, DDVCSObservableResult > | |
bool | m_isCCFModuleDependent |
Boolean (true if this Process module depends on a CCF module). More... | |
Protected Attributes inherited from PARTONS::ModuleObject | |
ModuleObjectFactory * | m_pModuleObjectFactory |
Pointer tp module object factory. More... | |
Evaluation of differential cross-section for DDVCS process.
See 2303.13668 [hep-ph] as a reference.
PARTONS::DDVCSProcessDMSW22::DDVCSProcessDMSW22 | ( | const std::string & | className | ) |
Constructor.
See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.
className | name of child class. |
|
virtual |
Destructor.
|
protected |
Copy constructor.
|
private |
|
private |
|
private |
|
private |
|
private |
|
virtual |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.
Implements PARTONS::DDVCSProcessModule.
|
private |
|
protectedvirtual |
Bethe-Heitler differential cross section.
Reimplemented from PARTONS::DDVCSProcessModule.
|
private |
|
protectedvirtual |
Interference differential cross section.
Reimplemented from PARTONS::DDVCSProcessModule.
|
private |
|
protectedvirtual |
Virtual Compton Scattering differential cross section.
Reimplemented from PARTONS::DDVCSProcessModule.
|
private |
|
private |
|
private |
|
private |
|
protectedvirtual |
Pure virtual function that provides skeleton for module initialization.
Children must define and override it.
Reimplemented from PARTONS::DDVCSProcessModule.
|
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::DDVCSProcessModule.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
static |
Unique ID to automatically register the class in the registry.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |