55 #ifndef G4WentzelVIModel_h
56 #define G4WentzelVIModel_h 1
G4double GetFixedCut() const
virtual ~G4WentzelVIModel()
void SetSingleScatteringFactor(G4double)
void SetupParticle(const G4ParticleDefinition *)
G4WentzelOKandVIxSection * wokvi
std::vector< G4double > prob
CLHEP::Hep3Vector G4ThreeVector
G4bool singleScatteringMode
virtual G4ThreeVector & SampleScattering(const G4ThreeVector &, G4double safety)
void DefineMaterial(const G4MaterialCutsCouple *)
const G4MaterialCutsCouple * currentCouple
G4ParticleChangeForMSC * fParticleChange
const G4Material * currentMaterial
G4WentzelVIModel(G4bool comb=true, const G4String &nam="WentzelVIUni")
virtual G4double ComputeTruePathLengthLimit(const G4Track &track, G4double ¤tMinimalStep)
std::vector< G4double > xsecn
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double KineticEnergy, G4double AtomicNumber, G4double AtomicWeight=0., G4double cut=DBL_MAX, G4double emax=DBL_MAX)
G4double SecondMoment(const G4ParticleDefinition *, const G4MaterialCutsCouple *, G4double kineticEnergy)
G4bool UseSecondMoment() const
G4double ComputeTransportXSectionPerVolume(G4double cosTheta)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
void SetupParticle(const G4ParticleDefinition *)
const G4DataVector * currentCuts
void StartTracking(G4Track *)
void SetCurrentCouple(const G4MaterialCutsCouple *)
G4PhysicsTable * GetSecondMomentTable()
G4WentzelVIModel & operator=(const G4WentzelVIModel &right)
const G4ParticleDefinition * particle
G4double ComputeSecondMoment(const G4ParticleDefinition *, G4double kineticEnergy)
G4PhysicsTable * fSecondMoments
virtual G4double ComputeTrueStepLength(G4double geomStepLength)
void SetUseSecondMoment(G4bool)
virtual void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel)
void SetFixedCut(G4double)
G4int currentMaterialIndex
G4WentzelOKandVIxSection * GetWVICrossSection()
virtual G4double ComputeGeomPathLength(G4double truePathLength)
const G4Material * GetMaterial() const