57   fFastTrack=&fastTrack;
 
   80   theWeightChange        = currentTrack.
GetWeight();
 
  105   if (localCoordinates) 
 
  107       TransformPoint(position);
 
  109   thePositionChange = globalPosition;
 
  131   if (localCoordinates)
 
  133       TransformAxis(momentum);
 
  135   SetMomentumChange(globalMomentum.
unit());
 
  157   if (localCoordinates)
 
  159       TransformAxis(direction);
 
  161   SetMomentumChange(globalDirection.
unit());
 
  184   if (localCoordinates)
 
  186       TransformAxis(globalPolarization);  
 
  188   thePolarizationChange = globalPolarization;
 
  243   if (localCoordinates)
 
  247                                            GetInverseAffineTransformation()->
 
  248                                            TransformAxis(globalDynamics->
 
  249                                                          GetMomentumDirection()));
 
  255                                       globalPolarization.
x(),
 
  256                                       globalPolarization.
y(),
 
  257                                       globalPolarization.
z()
 
  262         TransformPoint(globalPosition);
 
  290   tellWhatIsWrong << 
"G4FastStep can be initialised only through G4FastTrack." 
  292   G4Exception(
"G4FastStep::Initialize(const G4Track&)",
 
  300     theEnergyChange    ( 0.0     ),
 
  301     theTimeChange      ( 0.0     ),
 
  302     theProperTimeChange( 0.0     ),
 
  303     fFastTrack         ( nullptr ),
 
  304     theWeightChange    ( 0.0     )
 
  337      theMomentumChange             = right.theMomentumChange;
 
  338      thePolarizationChange         = right.thePolarizationChange;
 
  339      thePositionChange             = right.thePositionChange;
 
  340      theProperTimeChange           = right.theProperTimeChange;
 
  341      theTimeChange                 = right.theTimeChange;
 
  342      theEnergyChange               = right.theEnergyChange;
 
  346      theWeightChange               = right.theWeightChange;
 
  347      fFastTrack                    = right.fFastTrack;
 
  398   pPostStepPoint->
SetWeight( theWeightChange );
 
  431   pPostStepPoint->
SetWeight( theWeightChange );
 
  454   G4cout << 
"        Momentum Direct - x : " << std::setw(20) << theMomentumChange.
x() << 
G4endl;
 
  455   G4cout << 
"        Momentum Direct - y : " << std::setw(20) << theMomentumChange.
y() << 
G4endl;
 
  456   G4cout << 
"        Momentum Direct - z : " << std::setw(20) << theMomentumChange.
z() << 
G4endl;
 
  460   G4cout << 
"        Polarization - x    : " << std::setw(20) << thePolarizationChange.
x() << 
G4endl;
 
  461   G4cout << 
"        Polarization - y    : " << std::setw(20) << thePolarizationChange.
y() << 
G4endl;
 
  462   G4cout << 
"        Polarization - z    : " << std::setw(20) << thePolarizationChange.
z() << 
G4endl;
 
  487   G4bool    exitWithError = 
false;
 
  495       ed << 
"The energy becomes larger than the initial value, difference = " <<  accuracy << 
" MeV" << 
G4endl;
 
  496       G4Exception(
"G4FastStep::CheckIt(const G4Track& aTrack)",
 
  503   G4bool itsOKforMomentum = 
true;
 
  504   if ( theEnergyChange >0.)
 
  506       accuracy = std::abs(theMomentumChange.
mag2()-1.0);
 
  510       ed << 
"The Momentum Change is not a unit vector, difference = " <<  accuracy << 
G4endl;
 
  511       G4Exception(
"G4FastStep::CheckIt(const G4Track& aTrack)",
 
  514       itsOK = itsOKforMomentum = 
false;
 
  523       ed << 
"The global time is getting backward, difference = " <<  accuracy << 
" ns" << 
G4endl;
 
  524       G4Exception(
"G4FastStep::CheckIt(const G4Track& aTrack)",
 
  534       ed << 
"The proper time is getting backward, difference = " <<  accuracy << 
" ns" << 
G4endl;
 
  535       G4Exception(
"G4FastStep::CheckIt(const G4Track& aTrack)",
 
  552       ed << 
"An inaccuracy in G4FastStep is beyond tolerance." << 
G4endl;
 
  553       G4Exception(
"G4FastStep::CheckIt(const G4Track& aTrack)",
 
  559   if (!itsOKforMomentum) {
 
  561     theMomentumChange = (1./vmag)*theMomentumChange;
 
virtual void Initialize(const G4Track &)
 
const G4Track * GetPrimaryTrack() const 
 
void SetPosition(const G4ThreeVector &aValue)
 
void ProposePrimaryTrackFinalMomentumDirection(const G4ThreeVector &, G4bool localCoordinates=true)
 
void SetPrimaryTrackFinalKineticEnergy(G4double)
 
G4VParticleChange & operator=(const G4VParticleChange &right)
 
void SetPrimaryTrackFinalPolarization(const G4ThreeVector &, G4bool localCoordinates=true)
 
G4int theSizeOftheListOfSecondaries
 
std::ostringstream G4ExceptionDescription
 
G4double GetProperTime() const 
 
G4double GetKineticEnergy() const 
 
const G4DynamicParticle * GetDynamicParticle() const 
 
G4double GetProperTime() const 
 
const G4AffineTransform * GetInverseAffineTransformation() const 
 
G4Step * UpdateStepForPostStep(G4Step *Step)
 
const G4ThreeVector & GetPosition() const 
 
G4TrackFastVector * theListOfSecondaries
 
void SetWeight(G4double aValue)
 
G4Track * CreateSecondaryTrack(const G4DynamicParticle &, G4ThreeVector, G4ThreeVector, G4double, G4bool localCoordinates=true)
 
void SetMomentumDirection(const G4ThreeVector &aDirection)
 
virtual void DumpInfo() const 
 
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1 
 
void SetPrimaryTrackFinalMomentum(const G4ThreeVector &, G4bool localCoordinates=true)
 
G4bool CheckIt(const G4Track &)
 
void Initialize(const G4FastTrack &)
 
G4bool operator==(const G4FastStep &right) const 
 
G4bool operator!=(const G4FastStep &right) const 
 
void AddLocalTime(const G4double aValue)
 
G4FastStep & operator=(const G4FastStep &right)
 
void SetGlobalTime(const G4double aValue)
 
void SetMomentumDirection(const G4ThreeVector &aValue)
 
virtual G4bool CheckIt(const G4Track &)
 
G4double GetKineticEnergy() const 
 
void SetPolarization(const G4ThreeVector &aValue)
 
void ProposePrimaryTrackFinalPosition(const G4ThreeVector &, G4bool localCoordinates=true)
 
G4GLOB_DLL std::ostream G4cout
 
G4double theTrueStepLength
 
const G4ThreeVector & GetMomentumDirection() const 
 
G4SteppingControl theSteppingControlFlag
 
G4double theLocalEnergyDeposit
 
G4int theNumberOfSecondaries
 
G4double GetGlobalTime() const 
 
void SetPolarization(G4double polX, G4double polY, G4double polZ)
 
void AddSecondary(G4Track *aSecondary)
 
void SetProperTime(const G4double aValue)
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
void SetPrimaryTrackFinalKineticEnergyAndDirection(G4double, const G4ThreeVector &, G4bool localCoordinates=true)
 
G4Step * UpdateStepInfo(G4Step *Step)
 
G4Step * UpdateStepForAtRest(G4Step *Step)
 
G4StepPoint * GetPostStepPoint() const 
 
const G4ThreeVector & GetPolarization() const 
 
G4double GetWeight() const 
 
G4double GetAccuracyForException() const 
 
static constexpr double MeV
 
void SetPrimaryTrackFinalPosition(const G4ThreeVector &, G4bool localCoordinates=true)
 
G4TrackStatus theStatusChange
 
void ProposePrimaryTrackFinalPolarization(const G4ThreeVector &, G4bool localCoordinates=true)
 
void ProposeTrackStatus(G4TrackStatus status)
 
void SetKineticEnergy(const G4double aValue)
 
G4Track * GetTrack() const 
 
G4double GetAccuracyForWarning() const 
 
G4GLOB_DLL std::ostream G4cerr
 
void ProposePrimaryTrackFinalKineticEnergyAndDirection(G4double, const G4ThreeVector &, G4bool localCoordinates=true)