ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4NuMuNucleusCcModel Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/hadronic/models/lepto_nuclear/include/G4NuMuNucleusCcModel.hh>

+ Inheritance diagram for G4NuMuNucleusCcModel:
+ Collaboration diagram for G4NuMuNucleusCcModel:

Public Member Functions

 G4NuMuNucleusCcModel (const G4String &name="NuMuNucleCcModel")
 
virtual ~G4NuMuNucleusCcModel ()
 
virtual void InitialiseModel ()
 
virtual G4bool IsApplicable (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)
 
virtual G4HadFinalStateApplyYourself (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)
 
void SampleLVkr (const G4HadProjectile &aTrack, G4Nucleus &targetNucleus)
 
G4double SampleXkr (G4double energy)
 
G4double GetXkr (G4int iEnergy, G4double prob)
 
G4double SampleQkr (G4double energy, G4double xx)
 
G4double GetQkr (G4int iE, G4int jX, G4double prob)
 
G4double GetMinNuMuEnergy ()
 
G4double ThresholdEnergy (G4double mI, G4double mF, G4double mP)
 
virtual void ModelDescription (std::ostream &) const
 
- Public Member Functions inherited from G4NeutrinoNucleusModel
 G4NeutrinoNucleusModel (const G4String &name="neutrino-nucleus")
 
virtual ~G4NeutrinoNucleusModel ()
 
void ClusterDecay (G4LorentzVector &lvX, G4int qX)
 
void MesonDecay (G4LorentzVector &lvX, G4int qX)
 
void FinalBarion (G4LorentzVector &lvB, G4int qB, G4int pdgB)
 
void RecoilDeexcitation (G4Fragment &fragment)
 
void FinalMeson (G4LorentzVector &lvM, G4int qM, G4int pdgM)
 
void CoherentPion (G4LorentzVector &lvP, G4int pdgP, G4Nucleus &targetNucleus)
 
void SetCutEnergy (G4double ec)
 
G4double GetCutEnergy ()
 
G4double GetNuEnergy ()
 
G4double GetQtransfer ()
 
G4double GetQ2 ()
 
G4double GetXsample ()
 
G4int GetPDGencoding ()
 
G4bool GetCascade ()
 
G4bool GetString ()
 
G4double GetCosTheta ()
 
G4double GetEmu ()
 
G4double GetEx ()
 
G4double GetMuMass ()
 
G4double GetW2 ()
 
G4double GetM1 ()
 
G4double GetMr ()
 
G4double GetTr ()
 
G4double GetDp ()
 
G4LorentzVector GetLVl ()
 
G4LorentzVector GetLVh ()
 
G4LorentzVector GetLVt ()
 
G4LorentzVector GetLVcpi ()
 
G4double GetMinNuMuEnergy ()
 
G4double ThresholdEnergy (G4double mI, G4double mF, G4double mP)
 
G4double FinalMomentum (G4double mI, G4double mF, G4double mP, G4LorentzVector lvX)
 
G4double FermiMomentum (G4Nucleus &targetNucleus)
 
G4double NucleonMomentum (G4Nucleus &targetNucleus)
 
G4double GetEx (G4int A, G4bool fP)
 
G4double GgSampleNM (G4Nucleus &nucl)
 
G4int GetEnergyIndex (G4double energy)
 
G4double GetNuMuQeTotRat (G4int index, G4double energy)
 
G4int GetOnePionIndex (G4double energy)
 
G4double GetNuMuOnePionProb (G4int index, G4double energy)
 
- Public Member Functions inherited from G4HadronicInteraction
 G4HadronicInteraction (const G4String &modelName="HadronicModel")
 
virtual ~G4HadronicInteraction ()
 
virtual G4double SampleInvariantT (const G4ParticleDefinition *p, G4double plab, G4int Z, G4int A)
 
G4double GetMinEnergy () const
 
G4double GetMinEnergy (const G4Material *aMaterial, const G4Element *anElement) const
 
void SetMinEnergy (G4double anEnergy)
 
void SetMinEnergy (G4double anEnergy, const G4Element *anElement)
 
void SetMinEnergy (G4double anEnergy, const G4Material *aMaterial)
 
G4double GetMaxEnergy () const
 
G4double GetMaxEnergy (const G4Material *aMaterial, const G4Element *anElement) const
 
void SetMaxEnergy (const G4double anEnergy)
 
void SetMaxEnergy (G4double anEnergy, const G4Element *anElement)
 
void SetMaxEnergy (G4double anEnergy, const G4Material *aMaterial)
 
G4int GetVerboseLevel () const
 
void SetVerboseLevel (G4int value)
 
const G4StringGetModelName () const
 
void DeActivateFor (const G4Material *aMaterial)
 
void ActivateFor (const G4Material *aMaterial)
 
void DeActivateFor (const G4Element *anElement)
 
void ActivateFor (const G4Element *anElement)
 
G4bool IsBlocked (const G4Material *aMaterial) const
 
G4bool IsBlocked (const G4Element *anElement) const
 
void SetRecoilEnergyThreshold (G4double val)
 
G4double GetRecoilEnergyThreshold () const
 
virtual const std::pair
< G4double, G4double
GetFatalEnergyCheckLevels () const
 
virtual std::pair< G4double,
G4double
GetEnergyMomentumCheckLevels () const
 
void SetEnergyMomentumCheckLevels (G4double relativeLevel, G4double absoluteLevel)
 
virtual void BuildPhysicsTable (const G4ParticleDefinition &)
 

Private Attributes

G4bool fData
 
G4bool fMaster
 

Static Private Attributes

static const G4int fResNumber = 6
 
static const G4double fResMass [6]
 
static const G4int fClustNumber = 4
 
static const G4double fMesMass [4] = {1260., 980., 770., 139.57}
 
static const G4int fMesPDG [4] = {20213, 9000211, 213, 211}
 
static const G4double fBarMass [4] = {1700., 1600., 1232., 939.57}
 
static const G4int fBarPDG [4] = {12224, 32224, 2224, 2212}
 
static const G4double fNuMuEnergyLogVector [50]
 
static G4double fNuMuXarrayKR [50][51] = {{1.0}}
 
static G4double fNuMuXdistrKR [50][50] = {{1.0}}
 
static G4double fNuMuQarrayKR [50][51][51] = {{{1.0}}}
 
static G4double fNuMuQdistrKR [50][51][50] = {{{1.0}}}
 
static const G4double fNuMuResQ [50][50]
 

Additional Inherited Members

- Protected Member Functions inherited from G4HadronicInteraction
void SetModelName (const G4String &nam)
 
G4bool IsBlocked () const
 
void Block ()
 
- Protected Attributes inherited from G4NeutrinoNucleusModel
G4ParticleDefinitiontheMuonMinus
 
G4ParticleDefinitiontheMuonPlus
 
G4double fSin2tW
 
G4double fCutEnergy
 
G4int fNbin
 
G4int fIndex
 
G4int fEindex
 
G4int fXindex
 
G4int fQindex
 
G4int fOnePionIndex
 
G4int fPDGencoding
 
G4bool fCascade
 
G4bool fString
 
G4bool fProton
 
G4bool f2p2h
 
G4bool fBreak
 
G4double fNuEnergy
 
G4double fQ2
 
G4double fQtransfer
 
G4double fXsample
 
G4double fM1
 
G4double fM2
 
G4double fMt
 
G4double fMu
 
G4double fW2
 
G4double fMpi
 
G4double fW2pi
 
G4double fMinNuEnergy
 
G4double fDp
 
G4double fTr
 
G4double fEmu
 
G4double fEmuPi
 
G4double fEx
 
G4double fMr
 
G4double fCosTheta
 
G4double fCosThetaPi
 
G4LorentzVector fLVh
 
G4LorentzVector fLVl
 
G4LorentzVector fLVt
 
G4LorentzVector fLVcpi
 
G4GeneratorPrecompoundInterfacefPrecoInterface
 
G4PreCompoundModelfPreCompound
 
G4ExcitationHandlerfDeExcitation
 
G4NucleusfRecoil
 
- Static Protected Attributes inherited from G4NeutrinoNucleusModel
static const G4int fResNumber = 6
 
static const G4double fResMass [6]
 
static const G4int fClustNumber = 4
 
static const G4double fMesMass [4] = {1260., 980., 770., 139.57}
 
static const G4int fMesPDG [4] = {20213, 9000211, 213, 211}
 
static const G4double fBarMass [4] = {1700., 1600., 1232., 939.57}
 
static const G4int fBarPDG [4] = {12224, 32224, 2224, 2212}
 
static const G4double fNuMuResQ [50][50]
 
static const G4double fNuMuEnergy [50]
 
static const G4double fNuMuQeTotRat [50]
 
static const G4double fOnePionEnergy [58]
 
static const G4double fOnePionProb [58]
 

Detailed Description

Definition at line 55 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 55 of file G4NuMuNucleusCcModel.hh

Constructor & Destructor Documentation

G4NuMuNucleusCcModel::G4NuMuNucleusCcModel ( const G4String name = "NuMuNucleCcModel")

Definition at line 122 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 122 of file G4NuMuNucleusCcModel.cc

References fData, fMaster, and InitialiseModel().

+ Here is the call graph for this function:

G4NuMuNucleusCcModel::~G4NuMuNucleusCcModel ( )
virtual

Definition at line 130 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 130 of file G4NuMuNucleusCcModel.cc

Member Function Documentation

G4HadFinalState * G4NuMuNucleusCcModel::ApplyYourself ( const G4HadProjectile aTrack,
G4Nucleus targetNucleus 
)
virtual

Implements G4NeutrinoNucleusModel.

Definition at line 267 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 267 of file G4NuMuNucleusCcModel.cc

References A(), G4HadFinalState::AddSecondary(), G4Nucleus::AtomicMass(), G4HadFinalState::Clear(), G4NeutrinoNucleusModel::ClusterDecay(), G4NeutrinoNucleusModel::CoherentPion(), Acts::Test::dX, CLHEP::HepLorentzVector::e(), energy, Acts::eX, G4NeutrinoNucleusModel::f2p2h, G4NeutrinoNucleusModel::fBreak, G4NeutrinoNucleusModel::fCascade, G4NeutrinoNucleusModel::fCosTheta, G4NeutrinoNucleusModel::fEmu, G4NeutrinoNucleusModel::FinalBarion(), G4ParticleTable::FindParticle(), G4NeutrinoNucleusModel::fLVh, G4NeutrinoNucleusModel::fLVl, G4NeutrinoNucleusModel::fLVt, G4NeutrinoNucleusModel::fM1, G4NeutrinoNucleusModel::fMinNuEnergy, G4NeutrinoNucleusModel::fMpi, G4NeutrinoNucleusModel::fMr, G4NeutrinoNucleusModel::fMt, G4NeutrinoNucleusModel::fMu, G4NeutrinoNucleusModel::fPDGencoding, G4NeutrinoNucleusModel::fProton, G4NeutrinoNucleusModel::fQtransfer, G4NeutrinoNucleusModel::fRecoil, G4NeutrinoNucleusModel::fString, G4NeutrinoNucleusModel::fW2, G4UniformRand, G4HadProjectile::Get4Momentum(), G4Nucleus::GetA_asInt(), G4HadProjectile::GetDefinition(), G4NeutrinoNucleusModel::GetEnergyIndex(), G4NeutrinoNucleusModel::GetNuMuOnePionProb(), G4NeutrinoNucleusModel::GetNuMuQeTotRat(), G4NeutrinoNucleusModel::GetOnePionIndex(), G4ParticleDefinition::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleDefinition::GetPDGMass(), G4HadProjectile::GetTotalEnergy(), G4Nucleus::GetZ_asInt(), GeV, CLHEP::HepLorentzVector::m(), CLHEP::HepLorentzVector::m2(), phi, source.hepunit::proton_mass_c2, ratio, SampleLVkr(), G4HadFinalState::SetEnergyChange(), G4HadFinalState::SetMomentumChange(), G4NeutrinoNucleusModel::theMuonMinus, G4NeutrinoNucleusModel::theMuonPlus, G4HadronicInteraction::theParticleChange, CLHEP::twopi, CLHEP::Hep3Vector::unit(), CLHEP::HepLorentzVector::vect(), and Z.

+ Here is the call graph for this function:

G4double G4NuMuNucleusCcModel::GetMinNuMuEnergy ( )
inline

Definition at line 81 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 81 of file G4NuMuNucleusCcModel.hh

References G4NeutrinoNucleusModel::fM1, G4NeutrinoNucleusModel::fMu, and CLHEP::MeV.

G4double G4NuMuNucleusCcModel::GetQkr ( G4int  iE,
G4int  jX,
G4double  prob 
)

Definition at line 892 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 892 of file G4NuMuNucleusCcModel.cc

References fNuMuQarrayKR, fNuMuQdistrKR, G4NeutrinoNucleusModel::fQindex, and G4UniformRand.

Referenced by SampleQkr().

+ Here is the caller graph for this function:

G4double G4NuMuNucleusCcModel::GetXkr ( G4int  iEnergy,
G4double  prob 
)

Definition at line 790 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 790 of file G4NuMuNucleusCcModel.cc

References fNuMuXarrayKR, fNuMuXdistrKR, G4NeutrinoNucleusModel::fXindex, G4UniformRand, x1, x2, and xx.

Referenced by SampleXkr().

+ Here is the caller graph for this function:

void G4NuMuNucleusCcModel::InitialiseModel ( )
virtual

Reimplemented from G4HadronicInteraction.

Definition at line 147 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 147 of file G4NuMuNucleusCcModel.cc

References fData, fMaster, G4NeutrinoNucleusModel::fNbin, fNuMuQarrayKR, fNuMuQdistrKR, fNuMuXarrayKR, fNuMuXdistrKR, G4MUTEXLOCK, G4MUTEXUNLOCK, and k.

Referenced by G4NuMuNucleusCcModel().

+ Here is the caller graph for this function:

G4bool G4NuMuNucleusCcModel::IsApplicable ( const G4HadProjectile aTrack,
G4Nucleus targetNucleus 
)
virtual

Reimplemented from G4NeutrinoNucleusModel.

Definition at line 244 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 244 of file G4NuMuNucleusCcModel.cc

References energy, G4NeutrinoNucleusModel::fMinNuEnergy, G4HadProjectile::GetDefinition(), G4ParticleDefinition::GetParticleName(), G4HadProjectile::GetTotalEnergy(), G4Nucleus::GetZ_asInt(), and Z.

+ Here is the call graph for this function:

void G4NuMuNucleusCcModel::ModelDescription ( std::ostream &  outFile) const
virtual

Reimplemented from G4NeutrinoNucleusModel.

Definition at line 134 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 134 of file G4NuMuNucleusCcModel.cc

void G4NuMuNucleusCcModel::SampleLVkr ( const G4HadProjectile aTrack,
G4Nucleus targetNucleus 
)
G4double G4NuMuNucleusCcModel::SampleQkr ( G4double  energy,
G4double  xx 
)

Definition at line 832 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 832 of file G4NuMuNucleusCcModel.cc

References e, e1, e2, G4NeutrinoNucleusModel::fEindex, fNuMuEnergyLogVector, fNuMuXarrayKR, G4NeutrinoNucleusModel::fXindex, G4Log(), G4UniformRand, and GetQkr().

Referenced by SampleLVkr().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4NuMuNucleusCcModel::SampleXkr ( G4double  energy)

Definition at line 751 of file G4NuMuNucleusCcModel.cc.

View newest version in sPHENIX GitHub at line 751 of file G4NuMuNucleusCcModel.cc

References e, e1, e2, G4NeutrinoNucleusModel::fEindex, fNuMuEnergyLogVector, G4Log(), G4UniformRand, GetXkr(), x1, x2, and xx.

Referenced by SampleLVkr().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4NuMuNucleusCcModel::ThresholdEnergy ( G4double  mI,
G4double  mF,
G4double  mP 
)
inline

Definition at line 83 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 83 of file G4NuMuNucleusCcModel.hh

References G4NeutrinoNucleusModel::fW2, and w.

Member Data Documentation

const G4double G4NuMuNucleusCcModel::fBarMass = {1700., 1600., 1232., 939.57}
staticprivate

Definition at line 101 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 101 of file G4NuMuNucleusCcModel.hh

const G4int G4NuMuNucleusCcModel::fBarPDG = {12224, 32224, 2224, 2212}
staticprivate

Definition at line 102 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 102 of file G4NuMuNucleusCcModel.hh

const G4int G4NuMuNucleusCcModel::fClustNumber = 4
staticprivate

Definition at line 96 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 96 of file G4NuMuNucleusCcModel.hh

G4bool G4NuMuNucleusCcModel::fData
private

Definition at line 117 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 117 of file G4NuMuNucleusCcModel.hh

Referenced by G4NuMuNucleusCcModel(), and InitialiseModel().

G4bool G4NuMuNucleusCcModel::fMaster
private

Definition at line 117 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 117 of file G4NuMuNucleusCcModel.hh

Referenced by G4NuMuNucleusCcModel(), and InitialiseModel().

const G4double G4NuMuNucleusCcModel::fMesMass = {1260., 980., 770., 139.57}
staticprivate

Definition at line 98 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 98 of file G4NuMuNucleusCcModel.hh

const G4int G4NuMuNucleusCcModel::fMesPDG = {20213, 9000211, 213, 211}
staticprivate

Definition at line 99 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 99 of file G4NuMuNucleusCcModel.hh

const G4double G4NuMuNucleusCcModel::fNuMuEnergyLogVector
staticprivate
Initial value:
= {
115.603, 133.424, 153.991, 177.729, 205.126, 236.746, 273.24, 315.361, 363.973, 420.08, 484.836, 559.573, 645.832,
745.387, 860.289, 992.903, 1145.96, 1322.61, 1526.49, 1761.8, 2033.38, 2346.83, 2708.59, 3126.12, 3608.02, 4164.19,
4806.1, 5546.97, 6402.04, 7388.91, 8527.92, 9842.5, 11359.7, 13110.8, 15131.9, 17464.5, 20156.6, 23263.8, 26849.9,
30988.8, 35765.7, 41279, 47642.2, 54986.3, 63462.4, 73245.2, 84536, 97567.2, 112607, 129966 }

Definition at line 104 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 104 of file G4NuMuNucleusCcModel.hh

Referenced by SampleQkr(), and SampleXkr().

G4double G4NuMuNucleusCcModel::fNuMuQarrayKR = {{{1.0}}}
staticprivate

Definition at line 110 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 110 of file G4NuMuNucleusCcModel.hh

Referenced by GetQkr(), and InitialiseModel().

G4double G4NuMuNucleusCcModel::fNuMuQdistrKR = {{{1.0}}}
staticprivate

Definition at line 111 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 111 of file G4NuMuNucleusCcModel.hh

Referenced by GetQkr(), and InitialiseModel().

const G4double G4NuMuNucleusCcModel::fNuMuResQ[50][50]
staticprivate

Definition at line 114 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 114 of file G4NuMuNucleusCcModel.hh

G4double G4NuMuNucleusCcModel::fNuMuXarrayKR = {{1.0}}
staticprivate

Definition at line 108 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 108 of file G4NuMuNucleusCcModel.hh

Referenced by GetXkr(), InitialiseModel(), and SampleQkr().

G4double G4NuMuNucleusCcModel::fNuMuXdistrKR = {{1.0}}
staticprivate

Definition at line 109 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 109 of file G4NuMuNucleusCcModel.hh

Referenced by GetXkr(), and InitialiseModel().

const G4double G4NuMuNucleusCcModel::fResMass
staticprivate
Initial value:
=
{2190., 1920., 1700., 1600., 1440., 1232. }

Definition at line 94 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 94 of file G4NuMuNucleusCcModel.hh

const G4int G4NuMuNucleusCcModel::fResNumber = 6
staticprivate

Definition at line 93 of file G4NuMuNucleusCcModel.hh.

View newest version in sPHENIX GitHub at line 93 of file G4NuMuNucleusCcModel.hh


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