121 G4bool edInAdjacentCrystalsCollected(
false );
129 G4int nCrystalsInColumn(
137 crystalWidth + crystalWidth / 2 );
140 crystalHeight + crystalHeight / 2 );
143 crystalWidth + crystalWidth / 2 );
146 crystalHeight + crystalHeight / 2 );
156 rowLeft, columnLeft,
x,
y,
161 rowRight, columnRight,
x,
y,
167 edInAdjacentCrystalsCollected =
true;
180 G4double calorimeterEPLeftRadiusOfTheSphere(
183 G4double calorimeterEPLeftRadiusOfTheSphere2(
184 calorimeterEPLeftRadiusOfTheSphere *
185 calorimeterEPLeftRadiusOfTheSphere );
186 G4double calorimeterEPLeftPositionX2(
189 G4double calorimeterEPLeftPositionY2(
192 G4double calorimeterEPLeftPositionZOffset(
193 calorimeterEPLeftRadiusOfTheSphere - std::sqrt(
194 calorimeterEPLeftRadiusOfTheSphere2 -
195 calorimeterEPLeftPositionX2 -
196 calorimeterEPLeftPositionY2 ) );
197 G4double calorimeterEPRightRadiusOfTheSphere(
200 G4double calorimeterEPRightRadiusOfTheSphere2(
201 calorimeterEPRightRadiusOfTheSphere *
202 calorimeterEPRightRadiusOfTheSphere );
203 G4double calorimeterEPRightPositionX2(
206 G4double calorimeterEPRightPositionY2(
209 G4double calorimeterEPRightPositionZOffset(
210 calorimeterEPRightRadiusOfTheSphere - std::sqrt(
211 calorimeterEPRightRadiusOfTheSphere2 -
212 calorimeterEPRightPositionX2 -
213 calorimeterEPRightPositionY2 ) );
215 calorimeterEPLeftPositionZOffset );
217 calorimeterEPRightPositionZOffset );
239 rowRight, columnRight,
G4AffineTransform calorimeterLeftTransform
G4ThreeVector calorimeterEPLeftPosition
G4ThreeVector calorimeterEPLeftWorldPosition
G4int calorimeterEDLeftMaxY
G4int calorimeterEDRightMaxY
G4AffineTransform calorimeterRightTransform
G4double calorimeterEDLeftAdjacent
G4int calorimeterEDRightMaxX
const CexmcEnergyDepositCalorimeterCollection & calorimeterEDLeftCollection
G4int calorimeterEDLeftMaxX
G4bool useInnerRefCrystal
void CollectEDInAdjacentCrystals(const CexmcEnergyDepositCalorimeterCollection &edHits, G4int row, G4int column, G4double &ed)
G4ThreeVector calorimeterEPLeftWorldDirection
CexmcCrystalSelectionAlgorithm csAlgorithm
CexmcSetup::CalorimeterGeometryData calorimeterGeometry
CexmcCalorimeterEntryPointDefinitionAlgorithm epDefinitionAlgorithm
G4bool collectEDInAdjacentCrystals
void CalculateWeightedEPPosition(const CexmcEnergyDepositCalorimeterCollection &edHits, G4int row, G4int column, G4double &x, G4double &y, G4double &ed)
G4ThreeVector calorimeterEPLeftDirection
G4ThreeVector calorimeterEPRightWorldPosition
G4ThreeVector calorimeterEPRightPosition
void TransformToAdjacentInnerCrystal(G4int &column, G4int &row) const
CexmcCalorimeterEntryPointDepthDefinitionAlgorithm epDepthDefinitionAlgorithm
G4ThreeVector calorimeterEPRightDirection
const CexmcEnergyDepositCalorimeterCollection & calorimeterEDRightCollection
G4ThreeVector calorimeterEPRightWorldDirection
G4double calorimeterEDRightAdjacent