96 inline void *
operator new(size_t);
97 inline void operator delete(
void *aFragment);
175 void ExcitationEnergyWarning();
177 void NumberOfExitationWarning(
const G4String&);
179 inline void CalculateExcitationEnergy(
G4bool warning=
true);
181 inline void CalculateGroundStateMass();
202 G4int numberOfParticles;
203 G4int numberOfCharged;
205 G4int numberOfChargedHoles;
208 G4int numberOfShellElectrons;
216 static const G4double minFragExcitation;
221#if defined G4HADRONIC_ALLOC_EXPORT
227inline void * G4Fragment::operator
new(size_t)
233inline void G4Fragment::operator
delete(
void * aFragment)
238inline void G4Fragment::CalculateExcitationEnergy(
G4bool warning)
240 theExcitationEnergy = theMomentum.
mag() - theGroundStateMass;
241 if(theExcitationEnergy < minFragExcitation) {
242 if(theExcitationEnergy < -minFragExcitation && warning) { ExcitationEnergyWarning(); }
243 theExcitationEnergy = 0.0;
253inline void G4Fragment::CalculateGroundStateMass()
272 CalculateGroundStateMass();
277 return theExcitationEnergy;
282 return theGroundStateMass;
288 theExcitationEnergy = eexc;
289 theMomentum.
set(0.0, 0.0, 0.0, theGroundStateMass + eexc);
295 return (theA-theZ)*CLHEP::neutron_mass_c2 + theZ*CLHEP::proton_mass_c2
296 - theGroundStateMass;
307 CalculateExcitationEnergy();
323 CalculateGroundStateMass();
329 CalculateGroundStateMass();
334 return numberOfParticles + numberOfHoles;
339 return numberOfParticles;
344 return numberOfCharged;
350 numberOfParticles = valueTot;
351 numberOfCharged = valueP;
352 if(valueTot < valueP) {
353 NumberOfExitationWarning(
"SetNumberOfExcitedParticle");
359 return numberOfHoles;
364 return numberOfChargedHoles;
369 numberOfHoles = valueTot;
370 numberOfChargedHoles = valueP;
371 if(valueTot < valueP) {
372 NumberOfExitationWarning(
"SetNumberOfHoles");
378 numberOfParticles = value;
383 numberOfCharged = value;
384 if(value > numberOfParticles) {
385 NumberOfExitationWarning(
"SetNumberOfCharged");
391 return numberOfShellElectrons;
396 numberOfShellElectrons = value;
406 creatorModel = value;
432 return theParticleDefinition;
437 theParticleDefinition = p;
442 return theCreationTime;
447 theCreationTime = time;
452 return thePolarization;
457 return thePolarization;
double A(double temperature)
G4DLLIMPORT G4Allocator< G4Fragment > *& pFragmentAllocator()
std::vector< G4Fragment * > G4FragmentVector
Hep3Vector boostVector() const
HepLorentzVector & boost(double, double, double)
void set(double x, double y, double z, double t)
void SetZ(G4double value)
void SetFloatingLevelNumber(G4int value)
G4double GetGroundStateMass() const
G4int GetNumberOfParticles() const
G4int GetNumberOfHoles() const
G4NuclearPolarization * GetNuclearPolarization() const
void SetNumberOfCharged(G4int value)
friend std::ostream & operator<<(std::ostream &, const G4Fragment &)
G4int GetNumberOfChargedHoles() const
G4double GetExcitationEnergy() const
const G4LorentzVector & GetMomentum() const
G4double GetCreationTime() const
void SetNuclearPolarization(G4NuclearPolarization *)
G4double GetBindingEnergy() const
G4bool operator!=(const G4Fragment &right) const
void SetCreationTime(G4double time)
G4int GetFloatingLevelNumber() const
void SetNumberOfElectrons(G4int value)
void SetNumberOfHoles(G4int valueTot, G4int valueP=0)
G4int GetNumberOfExcitons() const
G4int GetCreatorModelType() const
G4double ComputeGroundStateMass(G4int Z, G4int A) const
G4ThreeVector GetAngularMomentum() const
const G4ParticleDefinition * GetParticleDefinition() const
void SetA(G4double value)
void SetMomentum(const G4LorentzVector &value)
void SetExcEnergyAndMomentum(G4double eexc, const G4LorentzVector &)
G4int GetNumberOfElectrons() const
void SetNumberOfExcitedParticle(G4int valueTot, G4int valueP)
G4Fragment & operator=(const G4Fragment &right)
void SetNumberOfParticles(G4int value)
void SetCreatorModelType(G4int value)
G4int GetNumberOfCharged() const
G4bool operator==(const G4Fragment &right) const
void SetAngularMomentum(const G4ThreeVector &)
void SetParticleDefinition(const G4ParticleDefinition *p)
void SetZandA_asInt(G4int Znew, G4int Anew)
G4NuclearPolarization * NuclearPolarization()
void SetSpin(G4double value)
static G4double GetNuclearMass(const G4double A, const G4double Z)