|
PARTONS
|
PARtonic Tomography Of Nucleon Software
|
![]() |
Module for the DVCS process using the unpublished Guichon-Vanderhaeghen set of formulas. More...
Public Member Functions | |
| DVCSProcessGV08 (const std::string &className) | |
| Constructor. More... | |
| virtual | ~DVCSProcessGV08 () |
| Default destructor. More... | |
| virtual DVCSProcessGV08 * | 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::DVCSProcessModule | |
| virtual | ~DVCSProcessModule () |
| 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 DVCSObservableResult | compute (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, const DVCSObservableKinematic &kinematic, const List< GPDType > &gpdType=List< GPDType >()) |
| virtual List< GPDType > | getListOfAvailableGPDTypeForComputation () const |
| Must be implemented in child class. More... | |
| DVCSObservableResult | compute (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization, const DVCSObservableKinematic &kinematic, const List< GPDType > &gpdType, VCSSubProcessType::Type processType) |
| Computes the differential cross-section. More... | |
| virtual void | resetPreviousKinematic () |
| Reset previous kinematics. More... | |
| bool | isPreviousCCFKinematicDifferent (const DVCSConvolCoeffFunctionKinematic &kinematic) const |
| Check if this kinematics is different than the previous one. More... | |
| DVCSScalesModule * | getScaleModule () const |
| Get scale module. More... | |
| void | setScaleModule (DVCSScalesModule *pScaleModule) |
| Set scale module. More... | |
| DVCSXiConverterModule * | getXiConverterModule () const |
| Get xi converter module. More... | |
| void | setXiConverterModule (DVCSXiConverterModule *pXiConverterModule) |
| Set xi converted module. More... | |
| DVCSConvolCoeffFunctionModule * | getConvolCoeffFunctionModule () const |
| Get CCF module;. More... | |
| void | setConvolCoeffFunctionModule (DVCSConvolCoeffFunctionModule *pConvolCoeffFunctionModule) |
| Set CCF module. More... | |
| void | setConvolCoeffFunction (const DVCSConvolCoeffFunctionKinematic &kin, const DVCSConvolCoeffFunctionResult &result) |
| Set manually CFFs. More... | |
Public Member Functions inherited from PARTONS::ProcessModule< DVCSObservableKinematic, DVCSObservableResult > | |
| 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::DVCSProcessModule | |
| static const std::string | DVCS_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 | |
| DVCSProcessGV08 (const DVCSProcessGV08 &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::DVCSProcessModule | |
| DVCSProcessModule (const std::string &className) | |
| Default constructor. More... | |
| DVCSProcessModule (const DVCSProcessModule &other) | |
| Copy constructor. More... | |
| virtual void | setKinematics (const DVCSObservableKinematic &kinematic) |
| Set internal kinematics. More... | |
| virtual void | setExperimentalConditions (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
| void | computeConvolCoeffFunction (const DVCSObservableKinematic &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< DVCSObservableKinematic, DVCSObservableResult > | |
| 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 | |
| void | MakeExactBHCrossSections () |
| Fills the Jem and SigmaBHPol arrays. More... | |
| void | MakeExactVCSAndInterfCrossSections () |
| Fills the Ur, SigmaVCSPol and SigmaIPol arrays. More... | |
| double | DdirectDcrossed (double phi) |
| Denominator of the Bethe Heitler cross section. More... | |
| double | SqrAmplBH (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
| Returns the squared amplitude of Bethe Heitler process. More... | |
| double | SqrAmplVCSAndInterf (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
| Sum of the squared amplitude of VCS process and interference term. More... | |
| double | SqrAmplVCS (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
| Returns the squared amplitude of VCS process. More... | |
| double | SqrAmplInterf (double beamHelicity, double beamCharge, NumA::Vector3D targetPolarization) |
| Returns the interference term of the squared amplitude. More... | |
| void | MakeVCSHelicityAmplitudes () |
Private Attributes | |
| double | m_phaseSpace |
| Phase-space factor. More... | |
| double | m_phiGV |
| Angle between hadronic and leptonic planes (opposite sign of the phi angle of Trento). More... | |
| std::vector< double > | m_powerOfQ |
| std::vector< double > | m_powerOfProtonMass |
| double | m_yGV |
| double | m_xB2 |
| Square of \( x_B \). More... | |
| double | m_xBMin |
| double | m_xBMax |
| bool | Validation |
| bool | NoPrint |
| double | m_thetag |
| Angle between real and virtual photons. More... | |
| double | m_qpPerp |
| Component (here x-axis) of the real photon 3-momentum orthogonal to the virtual photon trajectory (here z-axis) in the hadronic plane (here xz-plane). More... | |
| double | m_Ur [100] |
| Coefficients of the expansion of the interference cross section wrt (combinations of) helicity amplitudes. More... | |
| double | m_Omega |
| (Function of) the linear polarization rate. More... | |
| double | m_s |
| Mandelstam variable (square of the total incoming 4-momentum). More... | |
| double | m_Q |
| Photon virtual mass i.e. square root of Q2. More... | |
| NumA::Vector4D | m_qCM |
| Virtual photon (propagates along z-axis). 4-vector defined in the CM frame. More... | |
| NumA::Vector4D | m_pCM |
| Incoming proton (propagates along z-axis). 4-vector defined in the CM frame. More... | |
| NumA::Vector4D | m_qpCM |
| Real photon (defines hadronic plane xz). 4-vector defined in the CM frame. More... | |
| NumA::Vector4D | m_ppCM |
| Outgoing proton. 4-vector defined in the CM frame. More... | |
| double | Jem [4][3] |
| Helicity amplitudes of the interference process assuming the real photon has helicity +1. More... | |
| double | RMvcs [4][3] |
| Real part of the helicity amplitudes of the VCS process assuming the real photon has helicity +1. More... | |
| double | IMvcs [4][3] |
| Imaginary part of the helicity amplitudes of the VCS process assuming the real photon has helicity +1. More... | |
| double | SigmaBHPol0 [4] |
| Coefficients for the unpolarized cross section of the Bethe-Heitler process. More... | |
| double | SigmaBHPolX [2] |
| Coefficients for the x-polarized cross section of the Bethe-Heitler process. More... | |
| double | SigmaBHPolY |
| Coefficient for the y-polarized cross section of the Bethe-Heitler process. More... | |
| double | SigmaBHPolZ [2] |
| Coefficients for the z-polarized cross section of the Bethe-Heitler process. More... | |
| double | SigmaVCSPol0 [5] |
| Coefficients for the unpolarized cross section of the Virtual Compton Scattering process. More... | |
| double | SigmaVCSPolX [4] |
| Coefficients for the x-polarized cross section of the Virtual Compton Scattering process. More... | |
| double | SigmaVCSPolY [5] |
| Coefficients for the y-polarized cross section of the Virtual Compton Scattering process. More... | |
| double | SigmaVCSPolZ [4] |
| Coefficients for the z-polarized cross section of the Virtual Compton Scattering process. More... | |
| double | SigmaIPol0 [8] |
| Coefficients for the unpolarized cross section (interference term). More... | |
| double | SigmaIPolX [8] |
| Coefficients for the x-polarized cross section (interference term). More... | |
| double | SigmaIPolY [8] |
| Coefficients for the x-polarized cross section (interference term). More... | |
| double | SigmaIPolZ [8] |
| Coefficients for the x-polarized cross section (interference term). More... | |
Additional Inherited Members | |
Protected Attributes inherited from PARTONS::DVCSProcessModule | |
| 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... | |
| double | m_beamHelicity |
| Beam helicity. More... | |
| double | m_beamCharge |
| Beam charge. More... | |
| NumA::Vector3D | m_targetPolarization |
| Target 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... | |
| double | m_epsilon |
| \( \epsilon = \frac{2 x_B M}{Q} \). More... | |
| DVCSScalesModule * | m_pScaleModule |
| Pointer to the underlying scale module. More... | |
| DVCSXiConverterModule * | m_pXiConverterModule |
| Pointer to the underlying xi converter module. More... | |
| DVCSConvolCoeffFunctionModule * | m_pConvolCoeffFunctionModule |
| Pointer to the underlying CCF module. More... | |
| DVCSConvolCoeffFunctionResult | m_dvcsConvolCoeffFunctionResult |
| Stored Compton Form Factor result. More... | |
| DVCSConvolCoeffFunctionKinematic | m_lastCCFKinematics |
| Last Compton Form Factor kinematics. More... | |
Protected Attributes inherited from PARTONS::ProcessModule< DVCSObservableKinematic, DVCSObservableResult > | |
| 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... | |
Module for the DVCS process using the unpublished Guichon-Vanderhaeghen set of formulas.
| PARTONS::DVCSProcessGV08::DVCSProcessGV08 | ( | const std::string & | className | ) |
Constructor.
See BaseObject::BaseObject and ModuleObject::ModuleObject for more details.
| className | name of child class. |
|
virtual |
Default destructor.
|
protected |
Copy constructor.
Use by the factory
| other |
|
virtual |
Virtual clone function to allow the factory to clone all derived members object stored in the BaseObjectRegistry.
Implements PARTONS::DVCSProcessModule.
|
protectedvirtual |
Bethe-Heitler differential cross section.
Reimplemented from PARTONS::DVCSProcessModule.
|
protectedvirtual |
Interference differential cross section.
Reimplemented from PARTONS::DVCSProcessModule.
|
protectedvirtual |
Virtual Compton Scattering differential cross section.
Reimplemented from PARTONS::DVCSProcessModule.
|
private |
Denominator of the Bethe Heitler cross section.
|
protectedvirtual |
Pure virtual function that provides skeleton for module initialization.
Children must define and override it.
Reimplemented from PARTONS::DVCSProcessModule.
|
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::DVCSProcessModule.
|
private |
Fills the Jem and SigmaBHPol arrays.
|
private |
Fills the Ur, SigmaVCSPol and SigmaIPol arrays.
|
private |
|
private |
Returns the squared amplitude of Bethe Heitler process.
|
private |
Returns the interference term of the squared amplitude.
|
private |
Returns the squared amplitude of VCS process.
|
private |
Sum of the squared amplitude of VCS process and interference term.
|
static |
Unique ID to automatically register the class in the registry.
|
private |
Imaginary part of the helicity amplitudes of the VCS process assuming the real photon has helicity +1.
|
private |
Helicity amplitudes of the interference process assuming the real photon has helicity +1.
|
private |
(Function of) the linear polarization rate.
|
private |
Incoming proton (propagates along z-axis). 4-vector defined in the CM frame.
|
private |
Phase-space factor.
|
private |
Angle between hadronic and leptonic planes (opposite sign of the phi angle of Trento).
|
private |
|
private |
|
private |
Outgoing proton. 4-vector defined in the CM frame.
|
private |
Photon virtual mass i.e. square root of Q2.
|
private |
Virtual photon (propagates along z-axis). 4-vector defined in the CM frame.
|
private |
Real photon (defines hadronic plane xz). 4-vector defined in the CM frame.
|
private |
Component (here x-axis) of the real photon 3-momentum orthogonal to the virtual photon trajectory (here z-axis) in the hadronic plane (here xz-plane).
|
private |
Mandelstam variable (square of the total incoming 4-momentum).
|
private |
Angle between real and virtual photons.
|
private |
Coefficients of the expansion of the interference cross section wrt (combinations of) helicity amplitudes.
|
private |
Square of \( x_B \).
|
private |
|
private |
|
private |
|
private |
|
private |
Real part of the helicity amplitudes of the VCS process assuming the real photon has helicity +1.
|
private |
Coefficients for the unpolarized cross section of the Bethe-Heitler process.
|
private |
Coefficients for the x-polarized cross section of the Bethe-Heitler process.
|
private |
Coefficient for the y-polarized cross section of the Bethe-Heitler process.
|
private |
Coefficients for the z-polarized cross section of the Bethe-Heitler process.
|
private |
Coefficients for the unpolarized cross section (interference term).
|
private |
Coefficients for the x-polarized cross section (interference term).
|
private |
Coefficients for the x-polarized cross section (interference term).
|
private |
Coefficients for the x-polarized cross section (interference term).
|
private |
Coefficients for the unpolarized cross section of the Virtual Compton Scattering process.
|
private |
Coefficients for the x-polarized cross section of the Virtual Compton Scattering process.
|
private |
Coefficients for the y-polarized cross section of the Virtual Compton Scattering process.
|
private |
Coefficients for the z-polarized cross section of the Virtual Compton Scattering process.
|
private |