#include <G4PionMinusNuclearAtRestChips.hh>
Inheritance diagram for G4PionMinusNuclearAtRestChips:
Public Member Functions | |
G4PionMinusNuclearAtRestChips (const G4String &processName="PionMinusCaptureAtRest") | |
~G4PionMinusNuclearAtRestChips () | |
G4bool | IsApplicable (const G4ParticleDefinition &aParticle) |
void | BuildPhysicsTable (const G4ParticleDefinition &) |
G4double | AtRestGetPhysicalInteractionLength (const G4Track &track, G4ForceCondition *condition) |
G4double | GetMeanLifeTime (const G4Track &aTrack, G4ForceCondition *condition) |
G4VParticleChange * | AtRestDoIt (const G4Track &, const G4Step &) |
Definition at line 42 of file G4PionMinusNuclearAtRestChips.hh.
G4PionMinusNuclearAtRestChips::G4PionMinusNuclearAtRestChips | ( | const G4String & | processName = "PionMinusCaptureAtRest" |
) | [inline] |
Definition at line 51 of file G4PionMinusNuclearAtRestChips.hh.
References fHadronAtRest, G4HadronicDeprecate, and G4VProcess::SetProcessSubType().
00052 : G4VRestProcess (processName, fHadronic) 00053 { 00054 G4HadronicDeprecate("G4PionMinusNuclearAtRestChips"); 00055 SetProcessSubType(fHadronAtRest); 00056 }
G4PionMinusNuclearAtRestChips::~G4PionMinusNuclearAtRestChips | ( | ) | [inline] |
G4VParticleChange * G4PionMinusNuclearAtRestChips::AtRestDoIt | ( | const G4Track & | , | |
const G4Step & | ||||
) | [inline, virtual] |
Reimplemented from G4VRestProcess.
Definition at line 84 of file G4PionMinusNuclearAtRestChips.hh.
References G4ChiralInvariantPhaseSpace::ApplyYourself(), G4DynamicParticle::GetDefinition(), G4Track::GetDynamicParticle(), G4StopElementSelector::GetElement(), G4Track::GetMaterial(), and G4PionMinus::PionMinus().
00085 { 00086 if(aTrack.GetDynamicParticle()->GetDefinition() != G4PionMinus::PionMinus()) 00087 { 00088 throw G4HadronicException(__FILE__, __LINE__, 00089 "Calling G4PionMinusNuclearAtRestChips with particle other than pi-!!!"); 00090 } 00091 00092 // Create target 00093 G4Element* theTarget = theSelector.GetElement(aTrack.GetMaterial()); 00094 G4Nucleus aTargetNucleus(theTarget->GetA_asInt(), theTarget->GetZ_asInt()); 00095 00096 // Call chips 00097 return theModel.ApplyYourself(aTrack, aTargetNucleus); 00098 }
G4double G4PionMinusNuclearAtRestChips::AtRestGetPhysicalInteractionLength | ( | const G4Track & | track, | |
G4ForceCondition * | condition | |||
) | [virtual] |
Reimplemented from G4VRestProcess.
Definition at line 101 of file G4PionMinusNuclearAtRestChips.hh.
References G4VProcess::currentInteractionLength, G4DynamicParticle::DumpInfo(), G4cout, G4endl, G4Track::GetDynamicParticle(), G4Track::GetMaterial(), GetMeanLifeTime(), G4Material::GetName(), G4VProcess::GetProcessName(), NotForced, ns, G4VProcess::ResetNumberOfInteractionLengthLeft(), G4VProcess::theNumberOfInteractionLengthLeft, and G4VProcess::verboseLevel.
00102 { 00103 ResetNumberOfInteractionLengthLeft(); 00104 *condition = NotForced; 00105 currentInteractionLength = GetMeanLifeTime(track, condition); 00106 #ifdef CHIPSdebug 00107 if ((currentInteractionLength <0.0) || (verboseLevel>2)) 00108 { 00109 G4cout << "G4PionMinusNuclearAtRestChips::AtRestGetPhysicalInteractionLength "; 00110 G4cout << "[ " << GetProcessName() << "]" <<G4endl; 00111 track.GetDynamicParticle()->DumpInfo(); 00112 G4cout << " in Material " << track.GetMaterial()->GetName() <<G4endl; 00113 G4cout << "MeanLifeTime = " << currentInteractionLength/CLHEP::ns << "[ns]" <<G4endl; 00114 } 00115 #endif 00116 return theNumberOfInteractionLengthLeft * currentInteractionLength; 00117 }
void G4PionMinusNuclearAtRestChips::BuildPhysicsTable | ( | const G4ParticleDefinition & | ) | [inline, virtual] |
G4double G4PionMinusNuclearAtRestChips::GetMeanLifeTime | ( | const G4Track & | aTrack, | |
G4ForceCondition * | condition | |||
) | [inline, virtual] |
Implements G4VRestProcess.
Definition at line 72 of file G4PionMinusNuclearAtRestChips.hh.
Referenced by AtRestGetPhysicalInteractionLength().
G4bool G4PionMinusNuclearAtRestChips::IsApplicable | ( | const G4ParticleDefinition & | aParticle | ) | [inline, virtual] |
Reimplemented from G4VProcess.
Definition at line 60 of file G4PionMinusNuclearAtRestChips.hh.
References G4PionMinus::PionMinusDefinition().
00061 { 00062 return ( &aParticle == G4PionMinus::PionMinusDefinition() ); 00063 }