#include <CexmcProductionModel.hh>
Definition at line 60 of file CexmcProductionModel.hh.
◆ CexmcProductionModel()
CexmcProductionModel::CexmcProductionModel |
( |
const G4String & |
name = "unspecified" , |
|
|
G4bool |
fermiMotionIsOn = false |
|
) |
| |
|
explicit |
Definition at line 49 of file CexmcProductionModel.cc.
G4ParticleDefinition * nucleusOutputParticle
G4ParticleDefinition * nucleusParticle
G4ParticleDefinition * incidentParticle
CexmcAngularRangeList angularRanges
CexmcProductionModelMessenger * messenger
G4ParticleDefinition * outputParticle
◆ ~CexmcProductionModel()
CexmcProductionModel::~CexmcProductionModel |
( |
| ) |
|
|
virtual |
◆ AddAngularRange()
Definition at line 90 of file CexmcProductionModel.cc.
101 for (
int i( 0 ); i < nmbOfDivs; ++i )
103 G4double binWidth( ( top - bottom ) / nmbOfDivs );
105 curBottom -= binWidth;
108 #ifdef CEXMC_USE_ROOT 109 CexmcHistoManager::Instance()->AddARHistos( aRange );
G4bool IsGoodCandidateForAngularRange(G4double top, G4double bottom) const
G4bool IsValidCandidateForAngularRange(G4double top, G4double bottom, G4int nmbOfDivs=1) const
CexmcAngularRangeList angularRanges
◆ ApplyFermiMotion()
void CexmcProductionModel::ApplyFermiMotion |
( |
G4bool |
on, |
|
|
G4bool |
fromMessenger = true |
|
) |
| |
|
inline |
Definition at line 142 of file CexmcProductionModel.hh.
virtual void FermiMotionStatusChangeHook(void)
void ThrowExceptionIfProjectIsRead(CexmcExceptionType type, G4bool extraCond=true)
◆ FermiMotionStatusChangeHook()
void CexmcProductionModel::FermiMotionStatusChangeHook |
( |
void |
| ) |
|
|
protectedvirtual |
◆ GetAngularRanges()
◆ GetIncidentParticle()
◆ GetName()
const G4String & CexmcProductionModel::GetName |
( |
void |
| ) |
const |
|
inline |
◆ GetNucleusOutputParticle()
◆ GetNucleusParticle()
◆ GetOutputParticle()
◆ GetProductionModelData()
◆ GetTriggeredAngularRanges()
◆ IsFermiMotionOn()
G4bool CexmcProductionModel::IsFermiMotionOn |
( |
void |
| ) |
const |
|
inline |
◆ IsGoodCandidateForAngularRange()
Definition at line 134 of file CexmcProductionModel.cc.
140 if ( ! runManager->ProjectIsRead() )
146 for ( CexmcAngularRangeList::iterator k( normalizedARanges.begin() );
147 k != normalizedARanges.end(); ++k )
149 if ( top <= k->top && bottom >= k->bottom )
CexmcAngularRangeList angularRangesRef
void GetNormalizedAngularRange(const CexmcAngularRangeList &src, CexmcAngularRangeList &dst)
static G4RunManager * GetRunManager()
std::vector< CexmcAngularRange > CexmcAngularRangeList
◆ IsValidCandidateForAngularRange()
Definition at line 244 of file CexmcProductionModel.hh.
247 return top > bottom && top <= 1.0 && top > -1.0 && bottom < 1.0 &&
248 bottom >= -1.0 && nmbOfDivs >= 1;
◆ PrintInitialData()
void CexmcProductionModel::PrintInitialData |
( |
void |
| ) |
const |
|
inline |
Definition at line 172 of file CexmcProductionModel.hh.
174 const char * fermiMotionMsg(
"Fermi motion in the target is off" );
176 fermiMotionMsg =
"Fermi motion in the target is on";
G4GLOB_DLL std::ostream G4cout
CexmcAngularRangeList angularRanges
◆ SetAngularRange()
Definition at line 66 of file CexmcProductionModel.cc.
77 for (
int i( 0 ); i < nmbOfDivs; ++i )
79 G4double binWidth( ( top - bottom ) / nmbOfDivs );
81 curBottom -= binWidth;
85 CexmcHistoManager::Instance()->SetupARHistos(
angularRanges );
G4bool IsGoodCandidateForAngularRange(G4double top, G4double bottom) const
G4bool IsValidCandidateForAngularRange(G4double top, G4double bottom, G4int nmbOfDivs=1) const
CexmcAngularRangeList angularRanges
◆ SetAngularRanges()
Definition at line 154 of file CexmcProductionModel.hh.
159 #ifdef CEXMC_USE_ROOT 160 CexmcHistoManager::Instance()->SetupARHistos(
angularRanges );
CexmcAngularRangeList angularRangesRef
CexmcAngularRangeList angularRanges
◆ SetProductionModelData()
◆ SetTriggeredAngularRanges()
void CexmcProductionModel::SetTriggeredAngularRanges |
( |
G4double |
opCosThetaSCM | ) |
|
Definition at line 115 of file CexmcProductionModel.cc.
119 for ( CexmcAngularRangeList::iterator k(
angularRanges.begin() );
122 if ( opCosThetaSCM <= k->top && opCosThetaSCM > k->bottom )
124 k->top, k->bottom, k->index ) );
CexmcAngularRangeList angularRanges
CexmcAngularRangeList triggeredAngularRanges
◆ angularRanges
◆ angularRangesRef
◆ fermiMotionIsOn
G4bool CexmcProductionModel::fermiMotionIsOn |
|
protected |
◆ incidentParticle
◆ messenger
◆ name
◆ nucleusOutputParticle
◆ nucleusParticle
◆ outputParticle
◆ productionModelData
◆ triggeredAngularRanges
The documentation for this class was generated from the following files: