Geant4  10.02.p03
ExExChPhysicsList Class Reference

#include <ExExChPhysicsList.hh>

Inheritance diagram for ExExChPhysicsList:
Collaboration diagram for ExExChPhysicsList:

Public Member Functions

G4double GetTransverseVariationMax ()
 
void SetTransverseVariationMax (G4double aDouble)
 
G4double GetTimeStepMin ()
 
void SetTimeStepMin (G4double aDouble)
 
 ExExChPhysicsList ()
 
 ~ExExChPhysicsList ()
 
void AddChanneling ()
 
void AddInelaticProcesses ()
 
void ConstructParticle ()
 
void ConstructProcess ()
 
void SetCuts ()
 
void SetFilePotentialName (const G4String &)
 
G4String GetFilePotentialName ()
 
- Public Member Functions inherited from G4VModularPhysicsList
 G4VModularPhysicsList ()
 
virtual ~G4VModularPhysicsList ()
 
void RegisterPhysics (G4VPhysicsConstructor *)
 
const G4VPhysicsConstructorGetPhysics (G4int index) const
 
const G4VPhysicsConstructorGetPhysics (const G4String &name) const
 
const G4VPhysicsConstructorGetPhysicsWithType (G4int physics_type) const
 
void ReplacePhysics (G4VPhysicsConstructor *)
 
void RemovePhysics (G4VPhysicsConstructor *)
 
void RemovePhysics (G4int type)
 
void RemovePhysics (const G4String &name)
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
G4int GetInstanceID () const
 
- Public Member Functions inherited from G4VUserPhysicsList
 G4VUserPhysicsList ()
 
virtual ~G4VUserPhysicsList ()
 
 G4VUserPhysicsList (const G4VUserPhysicsList &)
 
G4VUserPhysicsListoperator= (const G4VUserPhysicsList &)
 
void Construct ()
 
void UseCoupledTransportation (G4bool vl=true)
 
void SetDefaultCutValue (G4double newCutValue)
 
G4double GetDefaultCutValue () const
 
void BuildPhysicsTable ()
 
void PreparePhysicsTable (G4ParticleDefinition *)
 
void BuildPhysicsTable (G4ParticleDefinition *)
 
G4bool StorePhysicsTable (const G4String &directory=".")
 
G4bool IsPhysicsTableRetrieved () const
 
G4bool IsStoredInAscii () const
 
const G4StringGetPhysicsTableDirectory () const
 
void SetPhysicsTableRetrieved (const G4String &directory="")
 
void SetStoredInAscii ()
 
void ResetPhysicsTableRetrieved ()
 
void ResetStoredInAscii ()
 
void DumpList () const
 
void DumpCutValuesTable (G4int flag=1)
 
void DumpCutValuesTableIfRequested ()
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
void SetCutsWithDefault ()
 
void SetCutValue (G4double aCut, const G4String &pname)
 
G4double GetCutValue (const G4String &pname) const
 
void SetCutValue (G4double aCut, const G4String &pname, const G4String &rname)
 
void SetParticleCuts (G4double cut, G4ParticleDefinition *particle, G4Region *region=0)
 
void SetParticleCuts (G4double cut, const G4String &particleName, G4Region *region=0)
 
void SetCutsForRegion (G4double aCut, const G4String &rname)
 
void ResetCuts ()
 obsolete methods More...
 
void SetApplyCuts (G4bool value, const G4String &name)
 
G4bool GetApplyCuts (const G4String &name) const
 
void RemoveProcessManager ()
 
void AddProcessManager (G4ParticleDefinition *newParticle, G4ProcessManager *newManager=0)
 
void CheckParticleList ()
 
void DisableCheckParticleList ()
 
G4int GetInstanceID () const
 
void InitializeWorker ()
 

Public Attributes

G4double fTimeStepMin
 
G4double fTransverseVariationMax
 

Private Attributes

G4VPhysicsConstructorfParticleList
 
G4VPhysicsConstructorfEmPhysicsList
 
G4VPhysicsConstructorfDecayList
 
G4VPhysicsConstructorfRaddecayList
 
G4VPhysicsConstructorfHadronElasticPhysicsList
 
G4VPhysicsConstructorfHadronInelasticPhysicsList
 
G4VPhysicsConstructorfStoppingPhysics
 
G4VPhysicsConstructorfIonPhysics
 
G4VPhysicsConstructorfNeutronTrackingCut
 
G4VPhysicsConstructorfEmExtraPhysics
 
G4String fFilePotentialName
 
ExExChPhysicsListMessengerfMessenger
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VModularPhysicsList
static const G4VMPLManagerGetSubInstanceManager ()
 
- Static Public Member Functions inherited from G4VUserPhysicsList
static const G4VUPLManagerGetSubInstanceManager ()
 
- Protected Types inherited from G4VModularPhysicsList
typedef G4VMPLData::G4PhysConstVectorData G4PhysConstVector
 
- Protected Member Functions inherited from G4VModularPhysicsList
 G4VModularPhysicsList (const G4VModularPhysicsList &)
 
G4VModularPhysicsListoperator= (const G4VModularPhysicsList &)
 
- Protected Member Functions inherited from G4VUserPhysicsList
void AddTransportation ()
 
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
 
void BuildIntegralPhysicsTable (G4VProcess *, G4ParticleDefinition *)
 
virtual void RetrievePhysicsTable (G4ParticleDefinition *, const G4String &directory, G4bool ascii=false)
 
void InitializeProcessManager ()
 
G4ParticleTable::G4PTblDicIteratorGetParticleIterator () const
 
- Protected Attributes inherited from G4VModularPhysicsList
G4int verboseLevel
 
G4int g4vmplInstanceID
 
- Protected Attributes inherited from G4VUserPhysicsList
G4ParticleTabletheParticleTable
 
G4int verboseLevel
 
G4double defaultCutValue
 
G4bool isSetDefaultCutValue
 
G4ProductionCutsTablefCutsTable
 
G4bool fRetrievePhysicsTable
 
G4bool fStoredInAscii
 
G4bool fIsCheckedForRetrievePhysicsTable
 
G4bool fIsRestoredCutValues
 
G4String directoryPhysicsTable
 
G4bool fDisableCheckParticleList
 
G4int g4vuplInstanceID
 
- Static Protected Attributes inherited from G4VModularPhysicsList
static G4RUN_DLL G4VMPLManager G4VMPLsubInstanceManager
 
- Static Protected Attributes inherited from G4VUserPhysicsList
static G4RUN_DLL G4VUPLManager subInstanceManager
 

Detailed Description

Definition at line 34 of file ExExChPhysicsList.hh.

Constructor & Destructor Documentation

◆ ExExChPhysicsList()

ExExChPhysicsList::ExExChPhysicsList ( )

Definition at line 65 of file ExExChPhysicsList.cc.

66 
67  fFilePotentialName = "";
71 
73 
75 
77 
79 
81 
83 
85 
87 
89 
91 }
G4VPhysicsConstructor * fNeutronTrackingCut
ExExChPhysicsListMessenger * fMessenger
G4VPhysicsConstructor * fHadronElasticPhysicsList
G4VPhysicsConstructor * fRaddecayList
G4double fTransverseVariationMax
G4VPhysicsConstructor * fIonPhysics
G4VPhysicsConstructor * fParticleList
G4VPhysicsConstructor * fStoppingPhysics
G4VPhysicsConstructor * fEmPhysicsList
static const double angstrom
Definition: SystemOfUnits.h:81
G4VPhysicsConstructor * fEmExtraPhysics
G4VPhysicsConstructor * fDecayList
G4VPhysicsConstructor * fHadronInelasticPhysicsList
Here is the caller graph for this function:

◆ ~ExExChPhysicsList()

ExExChPhysicsList::~ExExChPhysicsList ( )

Definition at line 95 of file ExExChPhysicsList.cc.

95  {
96  delete fMessenger;
97  delete fEmPhysicsList;
98  delete fDecayList;
99  delete fRaddecayList;
102  delete fStoppingPhysics;
103  delete fIonPhysics;
104  delete fNeutronTrackingCut;
105  delete fEmExtraPhysics;
106 }
G4VPhysicsConstructor * fNeutronTrackingCut
ExExChPhysicsListMessenger * fMessenger
G4VPhysicsConstructor * fHadronElasticPhysicsList
G4VPhysicsConstructor * fRaddecayList
G4VPhysicsConstructor * fIonPhysics
G4VPhysicsConstructor * fStoppingPhysics
G4VPhysicsConstructor * fEmPhysicsList
G4VPhysicsConstructor * fEmExtraPhysics
G4VPhysicsConstructor * fDecayList
G4VPhysicsConstructor * fHadronInelasticPhysicsList
Here is the caller graph for this function:

Member Function Documentation

◆ AddChanneling()

void ExExChPhysicsList::AddChanneling ( )

Definition at line 148 of file ExExChPhysicsList.cc.

148  {
149 
150  XVCrystalCharacteristic* vPotentialEnergy =
152  XVCrystalCharacteristic* vElectricField =
154  XVCrystalCharacteristic* vNucleiDensity =
156  XVCrystalCharacteristic* vElectronDensity =
158 
159  XVCrystalIntegratedDensity* vIntegratedDensityNuclei =
161  vIntegratedDensityNuclei->SetPotential(vPotentialEnergy);
162  vIntegratedDensityNuclei->SetDensity(vNucleiDensity);
163 
164  XVCrystalIntegratedDensity* vIntegratedDensityElectron =
166  vIntegratedDensityElectron->SetPotential(vPotentialEnergy);
167  vIntegratedDensityElectron->SetDensity(vElectronDensity);
168 
169  XCrystalIntegratedDensityHub* vIntegratedDensityHub =
171  vIntegratedDensityHub->SetPotential(vPotentialEnergy);
172  vIntegratedDensityHub->SetDensityNuclei(vNucleiDensity);
173  vIntegratedDensityHub->SetDensityElectron(vElectronDensity);
174 
175  for(G4int i=-3;i<=+3;i++){
176  if(i!=0){
177  vIntegratedDensityHub->SetIntegratedDensityNuclei(
179  vIntegratedDensityHub->SetIntegratedDensityElectron(
181  }
182  }
183 
184  ExExChProcessChanneling* channeling =
186  channeling->SetPotential(vPotentialEnergy);
187  channeling->SetIntegratedDensity(vIntegratedDensityHub);
188  channeling->SetElectricField(vElectricField);
189  channeling->SetNucleiDensity(vNucleiDensity);
190  channeling->SetElectronDensity(vElectronDensity);
191 
193  channeling->SetTimeStepMin(fTimeStepMin);
194  if(fFilePotentialName != ""){
196  }
197 
199  particleIterator->reset();
200  while( (*particleIterator)() ){
201  G4ParticleDefinition* particle = particleIterator->value();
202  G4ProcessManager* pManager = particle->GetProcessManager();
203  G4String particleName = particle->GetParticleName();
204 
205  if(particle->GetPDGCharge() != 0)
206  {
207  pManager->AddDiscreteProcess(channeling);
208  }
209  }
210  G4cout << "\nPhysicsList::AddChanneling: Channeling process added...\n";
211  G4cout << G4endl;
212 }
void SetFileCharacteristicsName(const G4String &vFilename)
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
G4ProcessManager * GetProcessManager() const
void SetDensityElectron(XVCrystalCharacteristic *)
int G4int
Definition: G4Types.hh:78
G4double fTransverseVariationMax
const G4String & GetParticleName() const
G4GLOB_DLL std::ostream G4cout
void SetDensityNuclei(XVCrystalCharacteristic *)
void SetPotential(XVCrystalCharacteristic *)
void SetTimeStepMin(G4double aDouble)
void SetPotential(XVCrystalCharacteristic *)
void SetIntegratedDensityNuclei(XVCrystalIntegratedDensity *, G4int)
void SetDensity(XVCrystalCharacteristic *)
void SetIntegratedDensity(XCrystalIntegratedDensityHub *)
void SetElectricField(XVCrystalCharacteristic *)
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const
void SetPotential(XVCrystalCharacteristic *)
void SetNucleiDensity(XVCrystalCharacteristic *)
void SetTransverseVariationMax(G4double aDouble)
void SetElectronDensity(XVCrystalCharacteristic *)
std::vector< G4InuclElementaryParticle >::iterator particleIterator
Definition: G4BigBanger.cc:65
#define G4endl
Definition: G4ios.hh:61
void SetIntegratedDensityElectron(XVCrystalIntegratedDensity *, G4int)
G4double GetPDGCharge() const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddInelaticProcesses()

void ExExChPhysicsList::AddInelaticProcesses ( )
Here is the caller graph for this function:

◆ ConstructParticle()

void ExExChPhysicsList::ConstructParticle ( void  )
virtual

Reimplemented from G4VModularPhysicsList.

Definition at line 142 of file ExExChPhysicsList.cc.

142  {
144 }
G4VPhysicsConstructor * fParticleList
virtual void ConstructParticle()=0
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ConstructProcess()

void ExExChPhysicsList::ConstructProcess ( void  )
virtual

Reimplemented from G4VModularPhysicsList.

Definition at line 110 of file ExExChPhysicsList.cc.

110  {
111 
113 
115 
117 
119 
121 
123 
125 
127 
129 
131 
133 
134  AddChanneling();
135 
136  G4cout << "### ExExChPhysicsList::ConstructProcess is done" << G4endl;
137 }
G4VPhysicsConstructor * fNeutronTrackingCut
G4VPhysicsConstructor * fHadronElasticPhysicsList
G4VPhysicsConstructor * fRaddecayList
G4VPhysicsConstructor * fIonPhysics
G4VPhysicsConstructor * fParticleList
G4VPhysicsConstructor * fStoppingPhysics
G4VPhysicsConstructor * fEmPhysicsList
G4GLOB_DLL std::ostream G4cout
G4VPhysicsConstructor * fEmExtraPhysics
G4VPhysicsConstructor * fDecayList
G4VPhysicsConstructor * fHadronInelasticPhysicsList
virtual void ConstructProcess()=0
#define G4endl
Definition: G4ios.hh:61
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetFilePotentialName()

G4String ExExChPhysicsList::GetFilePotentialName ( )

Definition at line 236 of file ExExChPhysicsList.cc.

236  {
237  return fFilePotentialName;
238 }
Here is the caller graph for this function:

◆ GetTimeStepMin()

G4double ExExChPhysicsList::GetTimeStepMin ( )
inline

Definition at line 56 of file ExExChPhysicsList.hh.

56 {return fTimeStepMin;};
Here is the caller graph for this function:

◆ GetTransverseVariationMax()

G4double ExExChPhysicsList::GetTransverseVariationMax ( )
inline

Definition at line 53 of file ExExChPhysicsList.hh.

53 {return fTransverseVariationMax;};
G4double fTransverseVariationMax
Here is the caller graph for this function:

◆ SetCuts()

void ExExChPhysicsList::SetCuts ( )
virtual

Reimplemented from G4VUserPhysicsList.

Definition at line 217 of file ExExChPhysicsList.cc.

218 {
219  // These values are used as the default production thresholds
220  // for the world volume.
222 
223 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetFilePotentialName()

void ExExChPhysicsList::SetFilePotentialName ( const G4String vFilename)

Definition at line 227 of file ExExChPhysicsList.cc.

227  {
228  if(fFilePotentialName != vFilename){
229  fFilePotentialName = vFilename;
231  }
232 }
void PhysicsHasBeenModified()
static G4RunManager * GetRunManager()
Definition: G4RunManager.cc:79
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetTimeStepMin()

void ExExChPhysicsList::SetTimeStepMin ( G4double  aDouble)
inline

Definition at line 57 of file ExExChPhysicsList.hh.

57 {fTimeStepMin = aDouble;};
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetTransverseVariationMax()

void ExExChPhysicsList::SetTransverseVariationMax ( G4double  aDouble)
inline

Definition at line 54 of file ExExChPhysicsList.hh.

54 {fTransverseVariationMax = aDouble;};
G4double fTransverseVariationMax
Here is the caller graph for this function:

Member Data Documentation

◆ fDecayList

G4VPhysicsConstructor* ExExChPhysicsList::fDecayList
private

Definition at line 39 of file ExExChPhysicsList.hh.

◆ fEmExtraPhysics

G4VPhysicsConstructor* ExExChPhysicsList::fEmExtraPhysics
private

Definition at line 46 of file ExExChPhysicsList.hh.

◆ fEmPhysicsList

G4VPhysicsConstructor* ExExChPhysicsList::fEmPhysicsList
private

Definition at line 38 of file ExExChPhysicsList.hh.

◆ fFilePotentialName

G4String ExExChPhysicsList::fFilePotentialName
private

Definition at line 48 of file ExExChPhysicsList.hh.

◆ fHadronElasticPhysicsList

G4VPhysicsConstructor* ExExChPhysicsList::fHadronElasticPhysicsList
private

Definition at line 41 of file ExExChPhysicsList.hh.

◆ fHadronInelasticPhysicsList

G4VPhysicsConstructor* ExExChPhysicsList::fHadronInelasticPhysicsList
private

Definition at line 42 of file ExExChPhysicsList.hh.

◆ fIonPhysics

G4VPhysicsConstructor* ExExChPhysicsList::fIonPhysics
private

Definition at line 44 of file ExExChPhysicsList.hh.

◆ fMessenger

ExExChPhysicsListMessenger* ExExChPhysicsList::fMessenger
private

Definition at line 49 of file ExExChPhysicsList.hh.

◆ fNeutronTrackingCut

G4VPhysicsConstructor* ExExChPhysicsList::fNeutronTrackingCut
private

Definition at line 45 of file ExExChPhysicsList.hh.

◆ fParticleList

G4VPhysicsConstructor* ExExChPhysicsList::fParticleList
private

Definition at line 37 of file ExExChPhysicsList.hh.

◆ fRaddecayList

G4VPhysicsConstructor* ExExChPhysicsList::fRaddecayList
private

Definition at line 40 of file ExExChPhysicsList.hh.

◆ fStoppingPhysics

G4VPhysicsConstructor* ExExChPhysicsList::fStoppingPhysics
private

Definition at line 43 of file ExExChPhysicsList.hh.

◆ fTimeStepMin

G4double ExExChPhysicsList::fTimeStepMin

Definition at line 73 of file ExExChPhysicsList.hh.

◆ fTransverseVariationMax

G4double ExExChPhysicsList::fTransverseVariationMax

Definition at line 74 of file ExExChPhysicsList.hh.


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