82 for (std::size_t i=0; i<nComponents; ++i)
90 else if (i < (nComponents - 1) )
97 crossSection =
Transition(trk1,trk2,component,next);
114 std::size_t n = components->size();
115 for (std::size_t i=0; i<n; ++i)
143 if (denom > 0. && diff > 0.)
146 crossSection = (1.- ratio) * sigma1 + ratio * sigma2;
163 if (denom > 0. && diff > 0.)
166 crossSection = (1.- ratio) * sigma1 + ratio * sigma2;
std::vector< G4CrossSectionSourcePtr > G4CrossSectionVector
G4bool operator!=(const G4CrossSectionPatch &right) const
virtual ~G4CrossSectionPatch()
G4double Transition(const G4KineticTrack &trk1, const G4KineticTrack &trk2, const G4VCrossSectionSource *comp1, const G4VCrossSectionSource *comp2) const
virtual G4bool IsValid(G4double e) const
virtual G4double CrossSection(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
G4bool operator==(const G4CrossSectionPatch &right) const
virtual const G4CrossSectionVector * GetComponents() const =0
const G4LorentzVector & Get4Momentum() const
virtual G4double LowLimit() const
virtual G4double CrossSection(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const =0
virtual G4double HighLimit() const
virtual G4bool IsValid(G4double e) const