53#ifndef G4VEnergyLoss_h
54#define G4VEnergyLoss_h 1
182 G4double f1Fluct,f2Fluct,e1Fluct,e2Fluct,rateFluct,ipotFluct;
183 G4double e1LogFluct,e2LogFluct,ipotLogFluct;
185 const G4int nmaxCont1,nmaxCont2 ;
188 G4double taulow,tauhigh,ltaulow,ltauhigh;
G4double condition(const G4ErrorSymMatrix &m)
G4double GetLossWithFluct(const G4DynamicParticle *aParticle, const G4MaterialCutsCouple *couple, G4double ChargeSquare, G4double MeanLoss, G4double step)
static G4double finalRange
G4PhysicsTable * BuildProperTimeTable(G4PhysicsTable *theDEDXTable, G4PhysicsTable *ProperTimeTable, G4double Tmin, G4double Tmax, G4int nbin)
static G4double * MinDeltaEnergy
virtual G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &Step)=0
virtual G4double GetContinuousStepLimit(const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double ¤tSafety)=0
virtual G4double GetMeanFreePath(const G4Track &track, G4double previousStepSize, G4ForceCondition *condition)=0
static void SetMinDeltaCutInRange(G4double value)
static G4double dRoverRange
G4PhysicsTable * BuildRangeTable(G4PhysicsTable *theDEDXTable, G4PhysicsTable *theRangeTable, G4double Tmin, G4double Tmax, G4int nbin)
G4PhysicsTable * BuildInverseRangeTable(G4PhysicsTable *theRangeTable, G4PhysicsTable *theRangeCoeffATable, G4PhysicsTable *theRangeCoeffBTable, G4PhysicsTable *theRangeCoeffCTable, G4PhysicsTable *theInverseRangeTable, G4double Tmin, G4double Tmax, G4int nbin)
static G4double * CopyCutVectors(G4double *dest, G4double *source)
static void SetRndmStep(G4bool value)
static void SetEnlossFluc(G4bool value)
G4bool CutsWhereModified()
G4PhysicsTable * BuildRangeCoeffCTable(G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffCTable, G4double Tmin, G4double Tmax, G4int nbin)
static G4bool EnlossFlucFlag
static G4bool setMinDeltaCutInRange
static G4EnergyLossMessenger * ELossMessenger
static G4bool EqualCutVectors(G4double *vec1, G4double *vec2)
static G4double MinDeltaCutInRange
static G4bool * LowerLimitForced
virtual G4VParticleChange * AlongStepDoIt(const G4Track &track, const G4Step &Step)=0
static G4double finalRangeRequested
G4PhysicsTable * BuildRangeCoeffBTable(G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffBTable, G4double Tmin, G4double Tmax, G4int nbin)
static G4bool rndmStepFlag
static void SetStepFunction(G4double c1, G4double c2)
G4PhysicsTable * BuildLabTimeTable(G4PhysicsTable *theDEDXTable, G4PhysicsTable *theLabTimeTable, G4double Tmin, G4double Tmax, G4int nbin)
static void SetSubSec(G4bool value)
G4PhysicsTable * BuildRangeCoeffATable(G4PhysicsTable *theRangeTable, G4PhysicsTable *theCoeffATable, G4double Tmin, G4double Tmax, G4int nbin)