58 std::vector<G4DynamicParticle*>& secParticles,
61 const G4double eGamma = CLHEP::electron_mass_c2;
97 const G4double& meanKE = meanEnergyPerIonPair;
101 const G4double mass = 2.*CLHEP::electron_mass_c2;
105 const G4double sigmav = std::sqrt(2.*meanKE/(3.*mass));
107 const G4double vx = G4RandGauss::shoot(0.,sigmav);
108 const G4double vy = G4RandGauss::shoot(0.,sigmav);
109 const G4double vz = G4RandGauss::shoot(0.,sigmav);
112 aGamma1->Set4Momentum(aGamma1->Get4Momentum().boost(beta));
113 aGamma2->Set4Momentum(aGamma2->Get4Momentum().boost(beta));
116 const G4ThreeVector& newDir1 = aGamma1->GetMomentumDirection();
117 const G4ThreeVector& newDir2 = aGamma2->GetMomentumDirection();
120 const G4double& angle1 = std::acos(dir1*newDir1);
121 const G4double& angle2 = std::acos(dir2*newDir2);
122 pol1.
rotate(axis1, angle1);
123 pol2.
rotate(axis2, angle2);
127 aGamma1->SetPolarization(pol1);
128 aGamma2->SetPolarization(pol2);
130 secParticles.push_back(aGamma1);
131 secParticles.push_back(aGamma2);