44 potentialEnergy = 0.0;
45 excitationEnergy = 0.0;
59 std::vector< G4QMDParticipant* >::iterator it;
61 p += (*it)->Get4Momentum();
72 std::vector< G4QMDParticipant* >::iterator it;
92 std::vector< G4QMDParticipant* >::iterator it;
125 - Asym * ( N -
Z )* ( N - Z ) /
A;
151 for (
G4int i= 0; i <
n ; i++ )
155 G4double trans = gamma / ( gamma + 1.0 ) * p_i * beta;
156 pcm[i] = p_i - trans*beta;
161 pcm0 = pcm0 / double ( n );
165 for (
G4int i= 0; i <
n ; i++ )
177 for (
G4int i= 0; i <
n ; i++ )
180 G4double trans = gamma / ( gamma + 1.0 ) * ri * beta;
184 rcm[i] = ri + trans*beta;
186 rcm0 += rcm[i]*es[i];
193 for (
G4int i= 0; i <
n ; i++ )
202 for (
G4int i= 0; i <
n ; i++ )
204 rl += rcm[i].cross ( pcm[i] );
207 jj =
int ( std::sqrt ( rl*rl / hbc ) + 0.5 );
213 for (
G4int i= 0; i <
n ; i++ )
223 G4double bindingEnergy = ( std::accumulate ( es.begin() , es.end() , 0.0 ) -totalMass ) + potentialEnergy;
233 if ( excitationEnergy < 0 ) excitationEnergy = 0.0;
static G4Pow * GetInstance()
G4ThreeVector GetPosition()
static G4double GetNuclearMass(const G4double A, const G4double Z)
G4ThreeVector GetMomentum()
G4double A23(G4double A) const
double A(double temperature)
static G4QMDParameters * GetInstance()
G4LorentzVector Get4Momentum()
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData)
static G4Proton * Proton()
G4int GetTotalNumberOfParticipant()
static G4Neutron * Neutron()
std::vector< G4QMDParticipant * > participants
G4QMDParticipant * GetParticipant(G4int i)
G4double GetPDGMass() const
G4double A13(G4double A) const
static G4double GetBindingEnergy(const G4int A, const G4int Z)
static constexpr double GeV
static constexpr double MeV
void CalEnergyAndAngularMomentumInCM()
G4double bindingEnergy(G4int A, G4int Z)
G4double GetNuclearMass()