#include <NavPropagator.h>
Private Types | |
typedef std::map< const MagVolume *, NavVolume * > | MagVolumeMap |
typedef RKPropagatorInS | PropagatorType |
typedef TrajectoryStateOnSurface | TSOS |
typedef std::pair < TrajectoryStateOnSurface, double > | TsosWP |
Private Member Functions | |
bool | destinationCrossed (const TSOS &startState, const TSOS &endState, const Plane &plane) const |
const NavVolume * | findVolume (const TrajectoryStateOnSurface &inputState) const |
const NavVolume * | navVolume (const MagVolume *magVolume) const |
TrajectoryStateOnSurface | noNextVolume (TrajectoryStateOnSurface startingState) const |
std::pair < TrajectoryStateOnSurface, double > | propagateInVolume (const NavVolume *currentVolume, const TrajectoryStateOnSurface &startingState, const Plane &targetPlane) const |
Private Attributes | |
bool | isIronVolume [272] |
const VolumeMediumProperties | theAirMedium |
const VolumeEnergyLossEstimator | theELEstimator |
const VolumeBasedMagneticField * | theField |
const VolumeMediumProperties | theIronMedium |
const VolumeMaterialEffectsUpdator | theMaterialUpdator |
const VolumeMultipleScatteringEstimator | theMSEstimator |
MagVolumeMap | theNavVolumeMap |
Definition at line 21 of file NavPropagator.h.
|
private |
Definition at line 77 of file NavPropagator.h.
|
private |
Definition at line 76 of file NavPropagator.h.
|
private |
Definition at line 78 of file NavPropagator.h.
|
private |
Definition at line 75 of file NavPropagator.h.
NavPropagator::NavPropagator | ( | const MagneticField * | field, |
PropagationDirection | dir = alongMomentum |
||
) |
Definition at line 16 of file NavPropagator.cc.
References i, isIronVolume, and theField.
Referenced by clone().
NavPropagator::~NavPropagator | ( | ) |
|
inlinevirtual |
|
private |
Definition at line 357 of file NavPropagator.cc.
References TrajectoryStateOnSurface::globalPosition(), and Plane::side().
Referenced by propagateWithPath().
|
private |
Definition at line 203 of file NavPropagator.cc.
References gather_cfg::cout, VolumeBasedMagneticField::findVolume(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalPosition(), LogDebug, navVolume(), theField, Vector3DBase< T, FrameTag >::unit(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by propagateWithPath().
|
virtual |
Definition at line 225 of file NavPropagator.cc.
References gather_cfg::cout, i, isIronVolume, n, MagVolume6Faces::name, query::result, and theNavVolumeMap.
Referenced by findVolume().
|
private |
Definition at line 378 of file NavPropagator.cc.
References LogDebug.
Referenced by propagateWithPath().
|
inlinevirtual |
propagation of TSOS to plane
Reimplemented from Propagator.
Definition at line 40 of file NavPropagator.h.
References propagateWithPath().
|
inlinevirtual |
propagation of FTS to plane
Implements Propagator.
Definition at line 50 of file NavPropagator.h.
References propagateWithPath().
|
inlinevirtual |
propagation to cylinder
Implements Propagator.
Definition at line 60 of file NavPropagator.h.
References propagateWithPath().
|
private |
Definition at line 257 of file NavPropagator.cc.
References alongMomentum, GlobalTrajectoryParameters::charge(), Vector3DBase< T, FrameTag >::cross(), alignCSCRings::e, VolumeEnergyLossEstimator::estimate(), VolumeMultipleScatteringEstimator::estimate(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalParameters(), TrajectoryStateOnSurface::globalPosition(), MagVolume::inside(), NavVolume::isIron(), RKPropagatorInS::magneticField(), Plane::normalVector(), GloballyPositioned< T >::position(), RKPropagatorInS::propagateWithPath(), makeMuonMisalignmentScenario::rot, TrajectoryStateOnSurface::surface(), theAirMedium, theELEstimator, theIronMedium, theMaterialUpdator, theMSEstimator, Vector3DBase< T, FrameTag >::unit(), VolumeMaterialEffectsUpdator::updateState(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by propagateWithPath().
|
virtual |
propagation of TSOS to plane with path length
Reimplemented from Propagator.
Definition at line 50 of file NavPropagator.cc.
References alongMomentum, GlobalTrajectoryParameters::charge(), prof2calltree::count, gather_cfg::cout, NavVolume::crossToNextVolume(), destinationCrossed(), VolumeEnergyLossEstimator::estimate(), VolumeMultipleScatteringEstimator::estimate(), findVolume(), TrajectoryStateOnSurface::globalMomentum(), TrajectoryStateOnSurface::globalParameters(), TrajectoryStateOnSurface::globalPosition(), NavVolume::isIron(), TrajectoryStateOnSurface::isValid(), LogDebug, noNextVolume(), VolumeCrossReturnType::path(), GloballyPositioned< T >::position(), propagateInVolume(), TrajectoryStateOnSurface::surface(), theAirMedium, theELEstimator, theField, theIronMedium, theMaterialUpdator, theMSEstimator, VolumeCrossReturnType::tsos(), Vector3DBase< T, FrameTag >::unit(), VolumeMaterialEffectsUpdator::updateState(), VolumeCrossReturnType::volume(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by propagate().
|
virtual |
propagation of FTS to plane with path length
Implements Propagator.
Definition at line 398 of file NavPropagator.cc.
References LogDebug.
|
virtual |
propagation to cylinder with path length
Implements Propagator.
Definition at line 391 of file NavPropagator.cc.
References LogDebug.
|
private |
Definition at line 83 of file NavPropagator.h.
Referenced by NavPropagator(), and navVolume().
|
private |
Definition at line 100 of file NavPropagator.h.
Referenced by propagateInVolume(), and propagateWithPath().
|
private |
Definition at line 103 of file NavPropagator.h.
Referenced by propagateInVolume(), and propagateWithPath().
|
private |
Definition at line 81 of file NavPropagator.h.
Referenced by findVolume(), magneticField(), NavPropagator(), and propagateWithPath().
|
private |
Definition at line 101 of file NavPropagator.h.
Referenced by propagateInVolume(), and propagateWithPath().
|
private |
Definition at line 104 of file NavPropagator.h.
Referenced by propagateInVolume(), and propagateWithPath().
|
private |
Definition at line 102 of file NavPropagator.h.
Referenced by propagateInVolume(), and propagateWithPath().
|
mutableprivate |
Definition at line 82 of file NavPropagator.h.
Referenced by navVolume(), and ~NavPropagator().