|
GENIEGenerator
|
Formula-based implementation of Oset model. More...
#include <INukeOsetFormula.h>
Public Member Functions | |
| void | setupOset (const double &density, const double &pionTk, const int &pionPDG, const double &protonFraction) |
| use to set up Oset class (assign pion Tk, nuclear density etc) | |
| Public Member Functions inherited from INukeOset | |
| INukeOset () | |
| contructor | |
| double | getTotalCrossSection () const |
| return total = (qel+cex+abs) cross section | |
| double | getCexCrossSection () const |
| return cex cross section | |
| double | getAbsorptionCrossSection () const |
| return absorption cross section | |
| double | getCexFraction () const |
| return fraction of cex events | |
| double | getAbsorptionFraction () const |
| return fraction of absorption events | |
Private Member Functions | |
| void | setNucleus (const double &density) |
| set nuclear density and Fermi momentum / energy | |
| void | setKinematics (const double &pionTk, const bool &isPi0) |
| do kinematics | |
| void | setDelta () |
| set up Delta | |
| void | setSelfEnergy () |
| calculate delta self energy | |
| double | deltaReduction () const |
| calculalte delta width reduction in nuclear medium | |
| void | setCrossSections () |
| calculalte cross sections for each channel | |
Private Attributes | |
| double | fPionMass |
| pion mass in MeV | |
| double | fPionMass2 |
| pion mass squared | |
| double | fPionMomentum |
| pion momentum in MeV | |
| double | fPionEnergy |
| pion total energy in MeV | |
| double | fMomentumCMS |
| momentum in CMS in MeV | |
| double | fMomentumCMS2 |
| momentum in CMS squared | |
| double | fInvariantMass |
| inv mass = sqrt(s mandelstam) in MeV | |
| double | fReducedHalfWidth |
| reduced delta half width in MeV | |
| double | fSelfEnergyTotal |
| total delta self energy in MeV | |
| double | fSelfEnergyAbsorption |
| abs part of delta self energy in MeV | |
| double | fDeltaPropagator2 |
| |delta propagator|^2 in MeV-2 | |
| double | fFermiMomentum |
| Fermi momentum in MeV. | |
| double | fFermiEnergy |
| Fermi energy in MeV. | |
| double | fCouplingFactor |
| (coupling constant / pion mass)^2 | |
Static Private Attributes | |
| static const double | fCouplingConstant = 0.36 * 4.0 * kPi |
| f*^2 | |
| static const double | fNucleonMass = kNucleonMass * 1000.0 |
| average nucleon mass [MeV] | |
| static const double | fNucleonMass2 = fNucleonMass * fNucleonMass |
| average nucleon mass squared | |
| static const double | fDeltaMass = 1232.0 |
| delta mass in MeV | |
| static const double | fNormalDensity = 0.17 |
| normal nuclear density [fm-3] | |
| static const double | fNormFactor = 197.327 * 197.327 * 10.0 |
| MeV^-2 -> mb. | |
| static const double | fCoefSigma [fNChannels] = {-0.01334, 0.06889, 0.19753} |
| s-wave parametrization eq. 3.7 | |
| static const double | fCoefB [fNChannels] = {-0.01866, 0.06602, 0.21972} |
| s-wave parametrization eq. 3.8 | |
| static const double | fCoefD [fNChannels] = {-0.08229, 0.37062,-0.03130} |
| s-wave parametrization eq. 3.8 | |
| static const double | ImB0 = 0.035 |
| s-wave parametrization eq. 3.12 | |
| static const double | fCoefCQ [fNChannels] = { -5.19, 15.35, 2.06} |
| quasi-elastic term (eq. 2.21) | |
| static const double | fCoefCA2 [fNChannels] = { 1.06, -6.64, 22.66} |
| two-body absorption (eq. 2.21) | |
| static const double | fCoefCA3 [fNChannels] = {-13.46, 46.17, -20.34} |
| three-body absorption (eq. 2.21) | |
| static const double | fCoefAlpha [fNChannels] = {0.382, -1.322, 1.466} |
| alpha (eq. 2.21) | |
| static const double | fCoefBeta [fNChannels] = {-0.038, 0.204, 0.613} |
| beta (eq. 2.21) | |
Additional Inherited Members | |
| Protected Member Functions inherited from INukeOset | |
| void | setCrossSections (const int &pionPDG, const double &protonFraction) |
| calculate avg cross sections according to proton / neutron fraction | |
| Protected Attributes inherited from INukeOset | |
| double | fNuclearDensity |
| nuclear density in fm-3 | |
| double | fPionKineticEnergy |
| pion kinetic energy in MeV | |
| double | fTotalCrossSection |
| el+cex+abs cross section (averaged over proton / neutron fraction) | |
| double | fCexCrossSection |
| cex cross section (averaged over proton / neutron fraction) | |
| double | fAbsorptionCrossSection |
| absorption cross section (averaged over proton / neutron fraction) | |
| double | fQelCrossSections [fNChannels] |
| total qel (el+cex) cross section for each channel | |
| double | fCexCrossSections [fNChannels] |
| cex cross section for each channel | |
| Static Protected Attributes inherited from INukeOset | |
| static const unsigned int | fNChannels = 3 |
| number of possible channels: pi+n, pi+p, pi0 | |
Formula-based implementation of Oset model.
Definition at line 17 of file INukeOsetFormula.h.
|
private |
calculalte delta width reduction in nuclear medium
related to Pauli blocking, see sec. 2.3
Definition at line 177 of file INukeOsetFormula.cxx.
References fFermiEnergy, fInvariantMass, fMomentumCMS, fNucleonMass, fNucleonMass2, fPionEnergy, and fPionMomentum.
Referenced by setDelta().
|
privatevirtual |
calculalte cross sections for each channel
Implements INukeOset.
Definition at line 108 of file INukeOsetFormula.cxx.
References INukeOset::fAbsorptionCrossSection, INukeOset::fCexCrossSections, fCoefB, fCoefD, fCoefSigma, fCouplingFactor, fDeltaPropagator2, fInvariantMass, fMomentumCMS2, INukeOset::fNChannels, fNormFactor, INukeOset::fNuclearDensity, fNucleonMass, fPionEnergy, fPionMass, fPionMass2, fPionMomentum, INukeOset::fQelCrossSections, fReducedHalfWidth, fSelfEnergyAbsorption, ImB0, genie::constants::kPi, and osetUtils::quadraticFunction().
Referenced by setupOset().
|
private |
set up Delta
Definition at line 83 of file INukeOsetFormula.cxx.
References deltaReduction(), fCouplingConstant, fCouplingFactor, fDeltaMass, fDeltaPropagator2, fInvariantMass, fMomentumCMS, fMomentumCMS2, fNucleonMass, fPionMass2, fReducedHalfWidth, fSelfEnergyTotal, genie::constants::kPi, and setSelfEnergy().
Referenced by setupOset().
|
private |
do kinematics
Definition at line 52 of file INukeOsetFormula.cxx.
References genie::PDGLibrary::Find(), fInvariantMass, fMomentumCMS, fMomentumCMS2, fNucleonMass, fNucleonMass2, fPionEnergy, INukeOset::fPionKineticEnergy, fPionMass, fPionMass2, fPionMomentum, genie::PDGLibrary::Instance(), genie::kPdgPi0, and genie::kPdgPiP.
Referenced by setupOset().
|
private |
set nuclear density and Fermi momentum / energy
Definition at line 38 of file INukeOsetFormula.cxx.
References fFermiEnergy, fFermiMomentum, INukeOset::fNuclearDensity, fNucleonMass2, and genie::constants::kPi.
Referenced by setupOset().
|
private |
calculate delta self energy
based on eq. 2.21
Definition at line 195 of file INukeOsetFormula.cxx.
References fCoefAlpha, fCoefBeta, fCoefCA2, fCoefCA3, fCoefCQ, fNormalDensity, INukeOset::fNuclearDensity, INukeOset::fPionKineticEnergy, fPionMass, fSelfEnergyAbsorption, fSelfEnergyTotal, and osetUtils::quadraticFunction().
Referenced by setDelta().
|
virtual |
use to set up Oset class (assign pion Tk, nuclear density etc)
Implements INukeOset.
Definition at line 227 of file INukeOsetFormula.cxx.
References genie::kPdgPi0, INukeOset::setCrossSections(), setCrossSections(), setDelta(), setKinematics(), and setNucleus().
|
staticprivate |
alpha (eq. 2.21)
delta parametrization coefficients (NuclPhys A468 (1987) 631-652)
Definition at line 31 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
s-wave parametrization eq. 3.8
Definition at line 20 of file INukeOsetFormula.h.
Referenced by setCrossSections().
|
staticprivate |
beta (eq. 2.21)
delta parametrization coefficients (NuclPhys A468 (1987) 631-652)
Definition at line 33 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
two-body absorption (eq. 2.21)
delta parametrization coefficients (NuclPhys A468 (1987) 631-652)
Definition at line 27 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
three-body absorption (eq. 2.21)
delta parametrization coefficients (NuclPhys A468 (1987) 631-652)
Definition at line 29 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
quasi-elastic term (eq. 2.21)
delta parametrization coefficients (NuclPhys A468 (1987) 631-652)
Definition at line 25 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
s-wave parametrization eq. 3.8
Definition at line 21 of file INukeOsetFormula.h.
Referenced by setCrossSections().
|
staticprivate |
s-wave parametrization eq. 3.7
Definition at line 19 of file INukeOsetFormula.h.
Referenced by setCrossSections().
|
staticprivate |
|
private |
(coupling constant / pion mass)^2
Definition at line 66 of file INukeOsetFormula.h.
Referenced by setCrossSections(), and setDelta().
|
staticprivate |
|
private |
|delta propagator|^2 in MeV-2
Definition at line 59 of file INukeOsetFormula.h.
Referenced by setCrossSections(), and setDelta().
|
private |
Fermi energy in MeV.
Definition at line 63 of file INukeOsetFormula.h.
Referenced by deltaReduction(), and setNucleus().
|
private |
Fermi momentum in MeV.
Definition at line 62 of file INukeOsetFormula.h.
Referenced by setNucleus().
|
private |
inv mass = sqrt(s mandelstam) in MeV
Definition at line 53 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setCrossSections(), setDelta(), and setKinematics().
|
private |
momentum in CMS in MeV
Definition at line 51 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setDelta(), and setKinematics().
|
private |
momentum in CMS squared
Definition at line 52 of file INukeOsetFormula.h.
Referenced by setCrossSections(), setDelta(), and setKinematics().
|
staticprivate |
normal nuclear density [fm-3]
Definition at line 32 of file INukeOsetFormula.h.
Referenced by setSelfEnergy().
|
staticprivate |
|
staticprivate |
average nucleon mass [MeV]
Definition at line 29 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setCrossSections(), setDelta(), and setKinematics().
|
staticprivate |
average nucleon mass squared
Definition at line 30 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setKinematics(), and setNucleus().
|
private |
pion total energy in MeV
Definition at line 50 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setCrossSections(), and setKinematics().
|
private |
pion mass in MeV
Definition at line 47 of file INukeOsetFormula.h.
Referenced by setCrossSections(), setKinematics(), and setSelfEnergy().
|
private |
pion mass squared
Definition at line 48 of file INukeOsetFormula.h.
Referenced by setCrossSections(), setDelta(), and setKinematics().
|
private |
pion momentum in MeV
Definition at line 49 of file INukeOsetFormula.h.
Referenced by deltaReduction(), setCrossSections(), and setKinematics().
|
private |
reduced delta half width in MeV
Definition at line 56 of file INukeOsetFormula.h.
Referenced by setCrossSections(), and setDelta().
|
private |
abs part of delta self energy in MeV
Definition at line 58 of file INukeOsetFormula.h.
Referenced by setCrossSections(), and setSelfEnergy().
|
private |
total delta self energy in MeV
Definition at line 57 of file INukeOsetFormula.h.
Referenced by setDelta(), and setSelfEnergy().
|
staticprivate |
s-wave parametrization eq. 3.12
Definition at line 38 of file INukeOsetFormula.h.
Referenced by setCrossSections().