44 #ifndef CEXMC_PHYSICS_LIST_HH
45 #define CEXMC_PHYSICS_LIST_HH
60 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
61 typename ProductionModel >
89 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
90 typename ProductionModel >
99 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
100 typename ProductionModel >
105 return studiedPhysics->GetProductionModel();
109 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
110 typename ProductionModel >
114 return numberOfTriggeredStudiedInteractions == 0;
118 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
119 typename ProductionModel >
130 static_cast< CexmcIncidentParticleTrackInfo * >(
141 position = targetTransform.TransformPoint( stepPoint->
GetPosition() );
142 direction = targetTransform.TransformAxis(
147 position = targetTransform.TransformPoint( track->
GetPosition() );
148 direction = targetTransform.TransformAxis(
152 G4double distanceInTarget( targetSolid->DistanceToOut( position,
156 std::max( distanceInTarget, proposedMaxIL ) );
161 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
162 typename ProductionModel >
169 targetTransform.TransformAxis( direction ) ) * 2;
173 template <
typename BasePhysics,
template <
typename >
class StudiedPhysics,
174 typename ProductionModel >