47#ifndef G4NeutronGeneralProcess_h
48#define G4NeutronGeneralProcess_h 1
146 inline void CurrentCrossSection(
const G4Track&);
149 static const size_t nTables = 5;
180 std::size_t nLowE = 100;
181 std::size_t nHighE = 10;
183 std::size_t idxEnergy = 0;
184 std::size_t matIndex = 0;
187 std::vector<G4double> fXsec;
196 return theHandler->
GetVector(idxt, matIndex)
204 return theHandler->
GetVector(idxt, matIndex)
225 return fSelectedProc;
230inline void G4NeutronGeneralProcess::CurrentCrossSection(
const G4Track& track)
234 if(mat != fCurrMat || energy != fCurrE) {
G4double condition(const G4ErrorSymMatrix &m)
G4double GetLogKineticEnergy() const
const G4PhysicsVector * GetVector(std::size_t itable, std::size_t ivec) const
std::size_t GetIndex() const
void SetCaptureProcess(G4HadronicProcess *)
G4NeutronGeneralProcess(const G4String &pname="NeutronGeneralProc")
~G4NeutronGeneralProcess() override
void StartTracking(G4Track *) override
G4int GetSubProcessSubType() const
G4NeutronGeneralProcess(G4NeutronGeneralProcess &)=delete
void ProcessDescription(std::ostream &outFile) const override
G4VCrossSectionDataSet * GetXSection(G4int type)
void PreparePhysicsTable(const G4ParticleDefinition &) override
G4double GetMeanFreePath(const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
void SelectedProcess(const G4Step &step, G4HadronicProcess *ptr, G4CrossSectionDataStore *)
const G4VProcess * GetSelectedProcess() const
G4VParticleChange * PostStepDoIt(const G4Track &, const G4Step &) override
void SetTimeLimit(G4double val)
void SetElasticProcess(G4HadronicProcess *)
G4double GetProbability(size_t idxt)
G4bool StorePhysicsTable(const G4ParticleDefinition *part, const G4String &directory, G4bool ascii) override
void BuildPhysicsTable(const G4ParticleDefinition &) override
G4double ComputeGeneralLambda(size_t idxe, size_t idxt)
const G4VProcess * GetCreatorProcess() const override
G4double PostStepGetPhysicalInteractionLength(const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
const G4String & GetSubProcessName() const
void SetMinEnergyLimit(G4double val)
G4HadronicProcess * GetHadronicProcess(G4int type)
void SetInelasticProcess(G4HadronicProcess *)
G4bool IsApplicable(const G4ParticleDefinition &) override
G4double LogVectorValue(const G4double energy, const G4double theLogEnergy) const
void SetProcessDefinedStep(const G4VProcess *aValue)
G4StepPoint * GetPostStepPoint() const
G4Material * GetMaterial() const
const G4DynamicParticle * GetDynamicParticle() const
G4double GetKineticEnergy() const
G4double currentInteractionLength