137 tmax = 1.0 * (std::log(y) +
C);
152 yShower = zShower.
cross(xShower);
158 G4double deposit = Energy/double(nSpots);
165 for (
int i = 0; i < nSpots; i++)
177 if (xr < 0.9) r = xr/0.9*Rm;
178 else r = ((xr - 0.9)/0.1*2.5 + 1.0)*Rm;
184 r*std::cos(phi)*xShower + r*std::sin(phi)*yShower;
199 for (
size_t i = 0; i <
feSpotList.size(); i++)
229 if( pCurrentVolume != 0 )
232 GetSensitiveDetector();
233 if( pSensitive != 0 )
251 GetNavigatorForTracking()->GetWorldVolume());
253 LocateGlobalPointAndUpdateTouchableHandle(eSpot.
GetPosition(),
262 LocateGlobalPointAndUpdateTouchableHandle(eSpot.
GetPosition(),
void ProposePrimaryTrackPathLength(G4double)
G4double GetKineticEnergy() const
Par01EMShowerModel(G4String, G4Region *)
G4bool Hit(G4Step *aStep)
CLHEP::Hep3Vector G4ThreeVector
G4ThreeVector GetPosition() const
std::vector< ExP01TrackerHit * > a
G4LogicalVolume * GetLogicalVolume() const
static constexpr double MeV
G4StepPoint * fFakePostStepPoint
G4StepPoint * GetPreStepPoint() const
G4double GetRadlen() const
Definition of the Par01EnergySpot class.
void SetTotalEnergyDeposit(G4double value)
void SetEnergy(const G4double &E)
const G4Track * GetPrimaryTrack() const
void FillFakeStep(const Par01EnergySpot &eSpot)
G4VPhysicalVolume * GetPhysicalVolume() const
void AssignSpotAndCallHit(const Par01EnergySpot &eSpot)
G4ParticleDefinition * GetDefinition() const
G4StepPoint * fFakePreStepPoint
virtual void DoIt(const G4FastTrack &, G4FastStep &)
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
static constexpr double twopi
const G4ThreeVector & GetPosition() const
G4StepPoint * GetPostStepPoint() const
ThreeVector shoot(const G4int Ap, const G4int Af)
static G4Electron * ElectronDefinition()
Hep3Vector cross(const Hep3Vector &) const
G4double GetEnergy() const
static G4TransportationManager * GetTransportationManager()
std::vector< Par01EnergySpot > feSpotList
void BuildDetectorResponse()
static G4Gamma * GammaDefinition()
void Explode(const G4FastTrack &)
virtual G4bool ModelTrigger(const G4FastTrack &)
G4Navigator * fpNavigator
Definition of the Par01EMShowerModel class.
static G4Positron * PositronDefinition()
Hep3Vector orthogonal() const
void SetTouchableHandle(const G4TouchableHandle &apValue)
const G4ThreeVector & GetMomentumDirection() const
void ProposeTotalEnergyDeposited(G4double anEnergyPart)
virtual G4bool IsApplicable(const G4ParticleDefinition &)
G4TouchableHandle fTouchableHandle
static G4NistManager * Instance()
void SetPosition(const G4ThreeVector &point)