98 std::vector<G4KineticTrack *>::iterator iter;
99 for(iter = tgt.begin(); iter != tgt.end(); ++iter)
126 if((charge0+charge1+charge < 0.) ||
127 (charge0+charge1+charge) > 2*
eplus)
154 if((charge0+charge1+charge < 0.) ||
155 (charge0+charge1+charge) > 2*
eplus)
163 theAbsorbers->clear();
164 if((kt1 == NULL) || (kt2 == NULL))
167 theAbsorbers->push_back(kt1);
168 theAbsorbers->push_back(kt2);
191 else if(charge == -
eplus)
216 G4double squareP = (e0*e0*e0*e0-2*e0*e0*(ms1*ms1+ms2*ms2)+
217 (ms2*ms2-ms1*ms1)*(ms2*ms2-ms1*ms1))/(4*e0*e0);
221 mom1CMS = std::sqrt(squareP)*mom1CMS;
223 G4LorentzVector final4Mom2CMS((-1)*mom1CMS, std::sqrt(squareP+ms2*ms2));
278 theProducts->clear();
279 theProducts->push_back(kt1);
280 theProducts->push_back(kt2);
289 theta = std::acos(theta);
291 G4ThreeVector direction(std::sin(theta)*std::cos(phi), std::sin(theta)*std::sin(phi), std::cos(theta));
Hep3Vector boostVector() const
const G4ThreeVector & GetPosition() const
G4bool Absorb(G4KineticTrack &kt, G4KineticTrackVector &tgt)
G4double GetActualMass() const
G4bool FindAbsorbers(G4KineticTrack &kt, G4KineticTrackVector &tgt)
static constexpr double eplus
static G4Proton * Proton()
static G4PionPlus * PionPlus()
static G4Neutron * Neutron()
G4Absorber(G4double cutOnP)
static G4PionZero * PionZero()
G4bool WillBeAbsorbed(const G4KineticTrack &kt)
G4double GetPDGMass() const
G4bool FindProducts(G4KineticTrack &kt)
static G4PionMinus * PionMinus()
static constexpr double pi
G4double GetPDGCharge() const
const G4LorentzVector & Get4Momentum() const
const G4ParticleDefinition * GetDefinition() const
static const G4double pos