#include <G4BOptnForceCommonTruncatedExp.hh>
|
| G4BOptnForceCommonTruncatedExp (G4String name) |
|
virtual | ~G4BOptnForceCommonTruncatedExp () |
|
virtual const G4VBiasingInteractionLaw * | ProvideOccurenceBiasingInteractionLaw (const G4BiasingProcessInterface *, G4ForceCondition &) |
|
virtual G4double | ProposeAlongStepLimit (const G4BiasingProcessInterface *) |
|
virtual G4GPILSelection | ProposeGPILSelection (const G4GPILSelection processSelection) |
|
virtual G4VParticleChange * | ApplyFinalStateBiasing (const G4BiasingProcessInterface *, const G4Track *, const G4Step *, G4bool &) |
|
virtual G4double | DistanceToApplyOperation (const G4Track *, G4double, G4ForceCondition *) |
|
virtual G4VParticleChange * | GenerateBiasingFinalState (const G4Track *, const G4Step *) |
|
G4ILawCommonTruncatedExp * | GetCommonTruncatedExpLaw () |
|
G4ILawForceFreeFlight * | GetForceFreeFlightLaw () |
|
void | Initialize (const G4Track *) |
|
void | UpdateForStep (const G4Step *) |
|
void | Sample () |
|
const G4ThreeVector & | GetInitialMomentum () const |
|
G4double | GetMaximumDistance () const |
|
void | ChooseProcessToApply () |
|
const G4VProcess * | GetProcessToApply () const |
|
void | AddCrossSection (const G4VProcess *, G4double) |
|
size_t | GetNumberOfSharing () const |
|
void | SetInteractionOccured (G4bool b) |
|
G4bool | GetInteractionOccured () const |
|
| G4VBiasingOperation (G4String name) |
|
virtual | ~G4VBiasingOperation () |
|
virtual void | AlongMoveBy (const G4BiasingProcessInterface *, const G4Step *, G4double) |
|
const G4String & | GetName () const |
|
std::size_t | GetUniqueID () const |
|
◆ G4BOptnForceCommonTruncatedExp()
G4BOptnForceCommonTruncatedExp::G4BOptnForceCommonTruncatedExp |
( |
G4String |
name | ) |
|
Definition at line 34 of file G4BOptnForceCommonTruncatedExp.cc.
G4ILawForceFreeFlight * fForceFreeFlightLaw
G4bool fInteractionOccured
G4double fTotalCrossSection
G4double fMaximumDistance
G4ILawCommonTruncatedExp * fCommonTruncatedExpLaw
const G4VProcess * fProcessToApply
G4VBiasingOperation(G4String name)
◆ ~G4BOptnForceCommonTruncatedExp()
G4BOptnForceCommonTruncatedExp::~G4BOptnForceCommonTruncatedExp |
( |
| ) |
|
|
virtual |
◆ AddCrossSection()
void G4BOptnForceCommonTruncatedExp::AddCrossSection |
( |
const G4VProcess * |
process, |
|
|
G4double |
crossSection |
|
) |
| |
◆ ApplyFinalStateBiasing()
G4VParticleChange * G4BOptnForceCommonTruncatedExp::ApplyFinalStateBiasing |
( |
const G4BiasingProcessInterface * |
callingProcess, |
|
|
const G4Track * |
track, |
|
|
const G4Step * |
step, |
|
|
G4bool & |
forceFinalState |
|
) |
| |
|
virtual |
Implements G4VBiasingOperation.
Definition at line 76 of file G4BOptnForceCommonTruncatedExp.cc.
83 forceFinalState =
true;
89 forceFinalState =
true;
97 if ( processGPIL <= step->GetStepLength() )
103 forceFinalState =
false;
109 forceFinalState =
true;
virtual void Initialize(const G4Track &track)
G4bool fInteractionOccured
G4ParticleChangeForNothing fDummyParticleChange
G4double GetAlongStepGPIL() const
G4VProcess * GetWrappedProcess() const
const G4VProcess * fProcessToApply
virtual G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &stepData)=0
G4double GetPostStepGPIL() const
◆ ChooseProcessToApply()
void G4BOptnForceCommonTruncatedExp::ChooseProcessToApply |
( |
| ) |
|
Definition at line 167 of file G4BOptnForceCommonTruncatedExp.cc.
171 for ( std::map< const G4VProcess*, G4double>::const_iterator it =
fCrossSections.begin();
175 sigmaSelect += (*it).second;
176 if ( sigmaRand <= sigmaSelect )
std::map< const G4VProcess *, G4double > fCrossSections
G4double fTotalCrossSection
const G4VProcess * fProcessToApply
◆ DistanceToApplyOperation()
virtual G4double G4BOptnForceCommonTruncatedExp::DistanceToApplyOperation |
( |
const G4Track * |
, |
|
|
G4double |
, |
|
|
G4ForceCondition * |
|
|
) |
| |
|
inlinevirtual |
◆ GenerateBiasingFinalState()
virtual G4VParticleChange* G4BOptnForceCommonTruncatedExp::GenerateBiasingFinalState |
( |
const G4Track * |
, |
|
|
const G4Step * |
|
|
) |
| |
|
inlinevirtual |
◆ GetCommonTruncatedExpLaw()
◆ GetForceFreeFlightLaw()
◆ GetInitialMomentum()
const G4ThreeVector& G4BOptnForceCommonTruncatedExp::GetInitialMomentum |
( |
| ) |
const |
|
inline |
◆ GetInteractionOccured()
G4bool G4BOptnForceCommonTruncatedExp::GetInteractionOccured |
( |
| ) |
const |
|
inline |
◆ GetMaximumDistance()
G4double G4BOptnForceCommonTruncatedExp::GetMaximumDistance |
( |
| ) |
const |
|
inline |
◆ GetNumberOfSharing()
size_t G4BOptnForceCommonTruncatedExp::GetNumberOfSharing |
( |
| ) |
const |
|
inline |
◆ GetProcessToApply()
const G4VProcess* G4BOptnForceCommonTruncatedExp::GetProcessToApply |
( |
| ) |
const |
|
inline |
◆ Initialize()
void G4BOptnForceCommonTruncatedExp::Initialize |
( |
const G4Track * |
track | ) |
|
Definition at line 124 of file G4BOptnForceCommonTruncatedExp.cc.
133 G4VSolid* currentSolid =
track->GetVolume()->GetLogicalVolume()->GetSolid();
135 GetNavigatorForTracking()->
136 GetGlobalToLocalTransform()).TransformPoint(
track->GetPosition());
138 GetNavigatorForTracking()->
139 GetGlobalToLocalTransform()).TransformAxis(
track->GetMomentumDirection());
std::map< const G4VProcess *, G4double > fCrossSections
G4bool fInteractionOccured
G4double fTotalCrossSection
G4double fMaximumDistance
static G4TransportationManager * GetTransportationManager()
G4ILawCommonTruncatedExp * fCommonTruncatedExpLaw
const G4VProcess * fProcessToApply
G4ThreeVector fInitialMomentum
virtual G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const =0
void SetMaximumDistance(G4double d)
◆ ProposeAlongStepLimit()
◆ ProposeGPILSelection()
G4GPILSelection G4BOptnForceCommonTruncatedExp::ProposeGPILSelection |
( |
const G4GPILSelection |
processSelection | ) |
|
|
virtual |
◆ ProvideOccurenceBiasingInteractionLaw()
Implements G4VBiasingOperation.
Definition at line 54 of file G4BOptnForceCommonTruncatedExp.cc.
59 proposeForceCondition = Forced;
64 proposeForceCondition = Forced;
G4ILawForceFreeFlight * fForceFreeFlightLaw
G4ILawCommonTruncatedExp * fCommonTruncatedExpLaw
G4VProcess * GetWrappedProcess() const
const G4VProcess * fProcessToApply
◆ Sample()
void G4BOptnForceCommonTruncatedExp::Sample |
( |
| ) |
|
Definition at line 158 of file G4BOptnForceCommonTruncatedExp.cc.
std::map< const G4VProcess *, G4double > fCrossSections
void SetSelectedProcessXSfraction(G4double fXS)
G4double fTotalCrossSection
void ChooseProcessToApply()
G4ILawCommonTruncatedExp * fCommonTruncatedExpLaw
const G4VProcess * fProcessToApply
void SetForceCrossSection(G4double xs)
◆ SetInteractionOccured()
void G4BOptnForceCommonTruncatedExp::SetInteractionOccured |
( |
G4bool |
b | ) |
|
|
inline |
◆ UpdateForStep()
void G4BOptnForceCommonTruncatedExp::UpdateForStep |
( |
const G4Step * |
step | ) |
|
Definition at line 146 of file G4BOptnForceCommonTruncatedExp.cc.
std::map< const G4VProcess *, G4double > fCrossSections
G4double fTotalCrossSection
G4double GetMaximumDistance() const
G4double fMaximumDistance
G4ILawCommonTruncatedExp * fCommonTruncatedExpLaw
G4double UpdateForStep(G4double truePathLength)
const G4VProcess * fProcessToApply
◆ fCommonTruncatedExpLaw
◆ fCrossSections
◆ fDummyParticleChange
◆ fForceFreeFlightLaw
◆ fInitialMomentum
◆ fInteractionOccured
G4bool G4BOptnForceCommonTruncatedExp::fInteractionOccured |
|
private |
◆ fMaximumDistance
G4double G4BOptnForceCommonTruncatedExp::fMaximumDistance |
|
private |
◆ fNumberOfSharing
size_t G4BOptnForceCommonTruncatedExp::fNumberOfSharing |
|
private |
◆ fProcessToApply
const G4VProcess* G4BOptnForceCommonTruncatedExp::fProcessToApply |
|
private |
◆ fTotalCrossSection
G4double G4BOptnForceCommonTruncatedExp::fTotalCrossSection |
|
private |
The documentation for this class was generated from the following files: