ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
RootFunctor-derived object for enforcing energy conservation in N-N. More...
Public Member Functions | |
ViolationEMomentumFunctor (Nucleus *const nucleus, ParticleList const &modAndCre, const G4double totalEnergyBeforeInteraction, ThreeVector const &boost, const G4bool localE) | |
Prepare for calling the () operator and scaleParticleMomenta. | |
virtual | ~ViolationEMomentumFunctor () |
G4double | operator() (const G4double x) const |
Compute the energy-conservation violation. | |
void | cleanUp (const G4bool success) const |
Clean up after root finding. | |
Public Member Functions inherited from G4INCL::RootFunctor | |
virtual | ~RootFunctor () |
Public Member Functions inherited from G4INCL::IFunction1D | |
IFunction1D () | |
IFunction1D (const G4double x0, const G4double x1) | |
virtual | ~IFunction1D () |
virtual G4double | getXMinimum () const |
Return the minimum allowed value of the independent variable. | |
virtual G4double | getXMaximum () const |
Return the maximum allowed value of the independent variable. | |
virtual G4double | integrate (const G4double x0, const G4double x1, const G4double step=-1.) const |
Integrate the function between two values. | |
IFunction1D * | primitive () const |
Return a pointer to the (numerical) primitive to this function. | |
InterpolationTable * | inverseCDFTable (ManipulatorFunc fWrap=0, const G4int nNodes=60) const |
Return a pointer to the inverse of the CDF of this function. | |
Private Member Functions | |
void | scaleParticleMomenta (const G4double alpha) const |
Scale the momenta of the modified and created particles. | |
Private Attributes | |
ParticleList | finalParticles |
List of final-state particles. | |
std::vector< ThreeVector > | particleMomenta |
CM particle momenta, as determined by the channel. | |
G4double | initialEnergy |
Total energy before the interaction. | |
Nucleus * | theNucleus |
Pointer to the nucleus. | |
ThreeVector const & | boostVector |
Pointer to the boost vector. | |
const G4bool | shouldUseLocalEnergy |
True if we should use local energy. | |
Additional Inherited Members | |
Public Types inherited from G4INCL::IFunction1D | |
typedef G4double(*const | ManipulatorFunc )(const G4double) |
Typedef to simplify the syntax of inverseCDFTable. | |
Protected Member Functions inherited from G4INCL::RootFunctor | |
RootFunctor (const G4double x0, const G4double x1) | |
Protected Attributes inherited from G4INCL::IFunction1D | |
G4double | xMin |
Minimum value of the independent variable. | |
G4double | xMax |
Maximum value of the independent variable. | |
RootFunctor-derived object for enforcing energy conservation in N-N.
Definition at line 116 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 116 of file G4INCLInteractionAvatar.hh
G4INCL::InteractionAvatar::ViolationEMomentumFunctor::ViolationEMomentumFunctor | ( | Nucleus *const | nucleus, |
ParticleList const & | modAndCre, | ||
const G4double | totalEnergyBeforeInteraction, | ||
ThreeVector const & | boost, | ||
const G4bool | localE | ||
) |
Prepare for calling the () operator and scaleParticleMomenta.
The constructor sets the private class members.
Definition at line 391 of file G4INCLInteractionAvatar.cc.
View newest version in sPHENIX GitHub at line 391 of file G4INCLInteractionAvatar.cc
References boostVector, e, finalParticles, and particleMomenta.
|
virtual |
Definition at line 407 of file G4INCLInteractionAvatar.cc.
View newest version in sPHENIX GitHub at line 407 of file G4INCLInteractionAvatar.cc
|
virtual |
Clean up after root finding.
Implements G4INCL::RootFunctor.
Definition at line 475 of file G4INCLInteractionAvatar.cc.
View newest version in sPHENIX GitHub at line 475 of file G4INCLInteractionAvatar.cc
|
virtual |
Compute the energy-conservation violation.
x | scale factor for the particle momenta |
Implements G4INCL::IFunction1D.
Definition at line 411 of file G4INCLInteractionAvatar.cc.
View newest version in sPHENIX GitHub at line 411 of file G4INCLInteractionAvatar.cc
References e.
|
private |
Scale the momenta of the modified and created particles.
Set the momenta of the modified and created particles to alpha times their original momenta (stored in particleMomenta). You must call init() before using this method.
alpha | scale factor |
Definition at line 421 of file G4INCLInteractionAvatar.cc.
View newest version in sPHENIX GitHub at line 421 of file G4INCLInteractionAvatar.cc
References kdfinder::abs(), G4INCL::InteractionAvatar::boostVector, e, energy, G4INCL::Particle::getA(), G4INCL::KinematicsUtils::getLocalEnergy(), G4INCL::InteractionAvatar::locEAccuracy, G4INCL::InteractionAvatar::maxIterLocE, G4INCL::InteractionAvatar::shouldUseLocalEnergy(), G4INCL::InteractionAvatar::theNucleus, and G4INCL::Nucleus::updatePotentialEnergy().
|
private |
Pointer to the boost vector.
Definition at line 145 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 145 of file G4INCLInteractionAvatar.hh
Referenced by ViolationEMomentumFunctor().
|
private |
List of final-state particles.
Definition at line 137 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 137 of file G4INCLInteractionAvatar.hh
Referenced by ViolationEMomentumFunctor().
|
private |
Total energy before the interaction.
Definition at line 141 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 141 of file G4INCLInteractionAvatar.hh
|
private |
CM particle momenta, as determined by the channel.
Definition at line 139 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 139 of file G4INCLInteractionAvatar.hh
Referenced by ViolationEMomentumFunctor().
|
private |
True if we should use local energy.
Definition at line 148 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 148 of file G4INCLInteractionAvatar.hh
|
private |
Pointer to the nucleus.
Definition at line 143 of file G4INCLInteractionAvatar.hh.
View newest version in sPHENIX GitHub at line 143 of file G4INCLInteractionAvatar.hh