31 #ifndef G4V3DNucleus_h
32 #define G4V3DNucleus_h 1
58 virtual const std::vector<G4Nucleon> &
GetNucleons() = 0;
81 std::pair<G4double, G4double> theImpactParameter;
99 theImpactParameter.first = impactX;
100 theImpactParameter.second = impactY;
101 return theImpactParameter;
virtual G4int GetCharge()=0
virtual G4double GetNuclearRadius()=0
virtual G4bool StartLoop()=0
virtual const G4VNuclearDensity * GetNuclearDensity() const =0
virtual void DoLorentzContraction(const G4LorentzVector &theBoost)=0
std::pair< G4double, G4double > RefetchImpactXandY()
virtual G4int GetMassNumber()=0
virtual G4double CoulombBarrier()=0
virtual G4double GetOuterRadius()=0
virtual void Init(G4int theA, G4int theZ)=0
std::pair< G4double, G4double > ChooseImpactXandY(G4double maxImpact)
virtual void SortNucleonsDecZ()=0
virtual void DoLorentzBoost(const G4LorentzVector &theBoost)=0
virtual void SortNucleonsIncZ()=0
virtual G4double GetMass()=0
virtual const std::vector< G4Nucleon > & GetNucleons()=0
virtual G4Nucleon * GetNextNucleon()=0
virtual void DoTranslation(const G4ThreeVector &theShift)=0