Geant4-11
Public Member Functions | Private Member Functions | Private Attributes
G4ILawCommonTruncatedExp Class Reference

#include <G4ILawCommonTruncatedExp.hh>

Inheritance diagram for G4ILawCommonTruncatedExp:
G4VBiasingInteractionLaw

Public Member Functions

virtual G4double ComputeEffectiveCrossSectionAt (G4double length) const
 
virtual G4double ComputeNonInteractionProbabilityAt (G4double length) const
 
 G4ILawCommonTruncatedExp (G4String name="expSharedForceInteractionLaw")
 
G4double GetInteractionDistance () const
 
G4double GetMaximumDistance () const
 
const G4StringGetName () const
 
G4double GetSampledInteractionLength () const
 
virtual G4bool IsEffectiveCrossSectionInfinite () const
 
virtual G4bool IsSingular () const
 
G4double Sample ()
 
void SetForceCrossSection (G4double xs)
 
void SetMaximumDistance (G4double d)
 
G4double SetSelectedProcessXSfraction () const
 
void SetSelectedProcessXSfraction (G4double fXS)
 
G4double UpdateForStep (G4double truePathLength)
 
virtual ~G4ILawCommonTruncatedExp ()
 

Private Member Functions

virtual G4double SampleInteractionLength ()
 
virtual G4double UpdateInteractionLengthForStep (G4double truePathLength)
 

Private Attributes

G4ILawTruncatedExp fExpInteractionLaw
 
G4double fInteractionDistance
 
G4String fName
 
G4double fSampledInteractionLength
 
G4double fSelectedProcessXSfraction
 

Detailed Description

Definition at line 50 of file G4ILawCommonTruncatedExp.hh.

Constructor & Destructor Documentation

◆ G4ILawCommonTruncatedExp()

G4ILawCommonTruncatedExp::G4ILawCommonTruncatedExp ( G4String  name = "expSharedForceInteractionLaw")

Definition at line 33 of file G4ILawCommonTruncatedExp.cc.

35 fExpInteractionLaw("expLawFor"+name)
36{}
const char * name(G4int ptype)

◆ ~G4ILawCommonTruncatedExp()

G4ILawCommonTruncatedExp::~G4ILawCommonTruncatedExp ( )
virtual

Definition at line 38 of file G4ILawCommonTruncatedExp.cc.

39{}

Member Function Documentation

◆ ComputeEffectiveCrossSectionAt()

G4double G4ILawCommonTruncatedExp::ComputeEffectiveCrossSectionAt ( G4double  length) const
virtual

◆ ComputeNonInteractionProbabilityAt()

G4double G4ILawCommonTruncatedExp::ComputeNonInteractionProbabilityAt ( G4double  length) const
virtual

Implements G4VBiasingInteractionLaw.

Definition at line 47 of file G4ILawCommonTruncatedExp.cc.

48{
50
51 if ( niProba <= 0.0 )
52 {
54 ed << " Negative probability for `" << GetName() << "' p = " << niProba << " distance = " << distance << " !!! " << G4endl;
55 G4Exception(" G4ILawCommonTruncatedExp::ComputeNonInteractionProbabilityAt(...)",
56 "BIAS.GEN.08",
58 ed);
59 }
60
61 return niProba;
62
63}
@ JustWarning
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35
std::ostringstream G4ExceptionDescription
Definition: G4Exception.hh:40
double G4double
Definition: G4Types.hh:83
#define G4endl
Definition: G4ios.hh:57
virtual G4double ComputeNonInteractionProbabilityAt(G4double length) const
const G4String & GetName() const

References G4ILawTruncatedExp::ComputeNonInteractionProbabilityAt(), fExpInteractionLaw, G4endl, G4Exception(), G4VBiasingInteractionLaw::GetName(), and JustWarning.

◆ GetInteractionDistance()

G4double G4ILawCommonTruncatedExp::GetInteractionDistance ( ) const
inline

◆ GetMaximumDistance()

G4double G4ILawCommonTruncatedExp::GetMaximumDistance ( ) const
inline

◆ GetName()

const G4String & G4VBiasingInteractionLaw::GetName ( ) const
inlineinherited

◆ GetSampledInteractionLength()

G4double G4VBiasingInteractionLaw::GetSampledInteractionLength ( ) const
inlineinherited

◆ IsEffectiveCrossSectionInfinite()

virtual G4bool G4ILawCommonTruncatedExp::IsEffectiveCrossSectionInfinite ( ) const
inlinevirtual

◆ IsSingular()

virtual G4bool G4ILawCommonTruncatedExp::IsSingular ( ) const
inlinevirtual

Reimplemented from G4VBiasingInteractionLaw.

Definition at line 57 of file G4ILawCommonTruncatedExp.hh.

virtual G4bool IsSingular() const

References fExpInteractionLaw, and G4ILawTruncatedExp::IsSingular().

◆ Sample()

G4double G4VBiasingInteractionLaw::Sample ( )
inlineinherited

◆ SampleInteractionLength()

G4double G4ILawCommonTruncatedExp::SampleInteractionLength ( )
privatevirtual

◆ SetForceCrossSection()

void G4ILawCommonTruncatedExp::SetForceCrossSection ( G4double  xs)
inline

◆ SetMaximumDistance()

void G4ILawCommonTruncatedExp::SetMaximumDistance ( G4double  d)
inline

◆ SetSelectedProcessXSfraction() [1/2]

G4double G4ILawCommonTruncatedExp::SetSelectedProcessXSfraction ( ) const
inline

Definition at line 75 of file G4ILawCommonTruncatedExp.hh.

References fSelectedProcessXSfraction.

◆ SetSelectedProcessXSfraction() [2/2]

void G4ILawCommonTruncatedExp::SetSelectedProcessXSfraction ( G4double  fXS)
inline

◆ UpdateForStep()

G4double G4VBiasingInteractionLaw::UpdateForStep ( G4double  truePathLength)
inlineinherited

◆ UpdateInteractionLengthForStep()

G4double G4ILawCommonTruncatedExp::UpdateInteractionLengthForStep ( G4double  truePathLength)
privatevirtual

Field Documentation

◆ fExpInteractionLaw

G4ILawTruncatedExp G4ILawCommonTruncatedExp::fExpInteractionLaw
private

◆ fInteractionDistance

G4double G4ILawCommonTruncatedExp::fInteractionDistance
private

◆ fName

G4String G4VBiasingInteractionLaw::fName
privateinherited

Definition at line 111 of file G4VBiasingInteractionLaw.hh.

Referenced by G4VBiasingInteractionLaw::GetName().

◆ fSampledInteractionLength

G4double G4VBiasingInteractionLaw::fSampledInteractionLength
privateinherited

◆ fSelectedProcessXSfraction

G4double G4ILawCommonTruncatedExp::fSelectedProcessXSfraction
private

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