![]() |
![]() |
#include <Geant4ePropagator.h>
Protected Types | |
typedef std::pair < TrajectoryStateOnSurface, double > | TsosPP |
Protected Attributes | |
const MagneticField * | theField |
G4ErrorPropagatorManager * | theG4eManager |
std::string | theParticleName |
Geant4eSteppingAction * | theSteppingAction |
Propagator based on the Geant4e package. Uses the Propagator class in the TrackingTools/GeomPropagators package to define the interface. See that class for more details.
Definition at line 21 of file Geant4ePropagator.h.
|
protected |
Definition at line 83 of file Geant4ePropagator.h.
Geant4ePropagator::Geant4ePropagator | ( | const MagneticField * | field = 0 , |
const char * | particleName = "mu" , |
||
PropagationDirection | dir = alongMomentum |
||
) |
Constructor. Takes as arguments:
Constructor.
Definition at line 30 of file Geant4ePropagator.cc.
Referenced by clone().
|
virtual |
|
inlinevirtual |
Implements Propagator.
Definition at line 75 of file Geant4ePropagator.h.
References Geant4ePropagator().
|
inlinevirtual |
|
virtual |
Propagate from a free state (e.g. position and momentum in in global cartesian coordinates) to a surface.
Propagate from a free state (e.g. position and momentum in in global cartesian coordinates) to a plane.
Implements Propagator.
Definition at line 56 of file Geant4ePropagator.cc.
References TrackPropagation::algebraicSymMatrix55ToG4ErrorTrajErr(), alongMomentum, SurfaceSideDefinition::atCenterOfSurface, DeDxDiscriminatorTools::charge(), FreeTrajectoryState::charge(), gather_cfg::cout, FreeTrajectoryState::curvilinearError(), Geom::Phi< T >::degrees(), PV3DBase< T, PVType, FrameType >::eta(), TrackPropagation::g4ErrorTrajErrToAlgebraicSymMatrix55(), TrackPropagation::globalPointToHep3Vector(), TrackPropagation::globalPointToHepPoint3D(), TrackPropagation::globalVectorToHep3Vector(), TrackPropagation::globalVectorToHepNormal3D(), FreeTrajectoryState::hasError(), TrackPropagation::hep3VectorToGlobalVector(), TrackPropagation::hepPoint3DToGlobalPoint(), Plane::localZ(), LogDebug, mode, FreeTrajectoryState::momentum(), oppositeToMomentum, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), FreeTrajectoryState::position(), Propagator::propagationDirection(), theField, theG4eManager, theParticleName, theSteppingAction, Surface::toGlobal(), and Vector3DBase< T, FrameTag >::unit().
Referenced by propagate(), and propagateWithPath().
|
virtual |
Propagate from a free state (e.g. position and momentum in in global cartesian coordinates) to a cylinder.
Implements Propagator.
Definition at line 282 of file Geant4ePropagator.cc.
References TrackPropagation::algebraicSymMatrix55ToG4ErrorTrajErr(), alongMomentum, SurfaceSideDefinition::atCenterOfSurface, DeDxDiscriminatorTools::charge(), FreeTrajectoryState::charge(), FreeTrajectoryState::curvilinearError(), Geom::Phi< T >::degrees(), PV3DBase< T, PVType, FrameType >::eta(), TrackPropagation::g4ErrorTrajErrToAlgebraicSymMatrix55(), TrackPropagation::globalPointToHep3Vector(), TrackPropagation::globalVectorToHep3Vector(), FreeTrajectoryState::hasError(), TrackPropagation::hep3VectorToGlobalVector(), TrackPropagation::hepPoint3DToGlobalPoint(), LogDebug, mode, FreeTrajectoryState::momentum(), oppositeToMomentum, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), GloballyPositioned< T >::position(), FreeTrajectoryState::position(), SurfaceOrientation::positiveSide, Propagator::propagationDirection(), Cylinder::radius(), GloballyPositioned< T >::rotation(), Cylinder::side(), theField, theG4eManager, theParticleName, theSteppingAction, TrackPropagation::tkRotationFToHepRotation(), and GloballyPositioned< T >::toLocal().
|
virtual |
Propagate from a state on surface (e.g. position and momentum in in global cartesian coordinates associated with a layer) to a surface.
Reimplemented from Propagator.
Definition at line 272 of file Geant4ePropagator.cc.
References TrajectoryStateOnSurface::freeState(), and propagate().
|
virtual |
Reimplemented from Propagator.
Definition at line 459 of file Geant4ePropagator.cc.
References TrajectoryStateOnSurface::freeState(), and propagate().
|
virtual |
The methods propagateWithPath() are identical to the corresponding methods propagate() in what concerns the resulting TrajectoryStateOnSurface, but they provide in addition the exact path length along the trajectory.
Implements Propagator.
Definition at line 476 of file Geant4ePropagator.cc.
References propagate(), Geant4eSteppingAction::reset(), theSteppingAction, and Geant4eSteppingAction::trackLength().
|
virtual |
Implements Propagator.
Definition at line 488 of file Geant4ePropagator.cc.
References propagate(), Geant4eSteppingAction::reset(), theSteppingAction, and Geant4eSteppingAction::trackLength().
|
virtual |
Reimplemented from Propagator.
Definition at line 499 of file Geant4ePropagator.cc.
References propagate(), Geant4eSteppingAction::reset(), theSteppingAction, and Geant4eSteppingAction::trackLength().
|
virtual |
Reimplemented from Propagator.
Definition at line 511 of file Geant4ePropagator.cc.
References propagate(), Geant4eSteppingAction::reset(), theSteppingAction, and Geant4eSteppingAction::trackLength().
|
protected |
Definition at line 87 of file Geant4ePropagator.h.
Referenced by magneticField(), and propagate().
|
protected |
Definition at line 93 of file Geant4ePropagator.h.
Referenced by propagate().
|
protected |
Definition at line 90 of file Geant4ePropagator.h.
Referenced by propagate().
|
mutableprotected |
Definition at line 96 of file Geant4ePropagator.h.
Referenced by propagate(), and propagateWithPath().