#include <G4FermiBreakUp.hh>
Definition at line 44 of file G4FermiBreakUp.hh.
◆ G4FermiBreakUp() [1/2]
G4FermiBreakUp::G4FermiBreakUp |
( |
| ) |
|
Definition at line 47 of file G4FermiBreakUp.cc.
static G4Pow * GetInstance()
G4double powN(G4double x, G4int n) const
const G4FermiPhaseSpaceDecay * thePhaseSpace
std::vector< G4double > NormalizedWeights
G4FermiFragmentsPool * thePool
static const double elm_coupling
std::vector< const G4VFermiFragment * > frag
G4double Z13(G4int Z) const
std::vector< G4double > massRes
const G4FermiPhaseSpaceDecay * GetFermiPhaseSpaceDecay() const
static G4FermiFragmentsPool * Instance()
◆ ~G4FermiBreakUp()
G4FermiBreakUp::~G4FermiBreakUp |
( |
| ) |
|
|
virtual |
◆ G4FermiBreakUp() [2/2]
◆ BreakFragment()
Implements G4VFermiBreakUp.
Definition at line 92 of file G4FermiBreakUp.cc.
97 const std::vector<const G4VFermiFragment*>* conf =
103 theResult->push_back(theNucleus);
107 size_t nn = conf->size();
111 theResult->push_back(theNucleus);
119 (*conf)[0]->FillFragment(theResult, fourMomentum);
125 for(
size_t i=0; i<
nn; ++i) {
126 massRes.push_back( (*conf)[i]->GetTotalEnergy() );
134 for (
size_t j=0; j<
nn; ++j) {
135 (*mom)[j]->boost(boostVector);
136 (*conf)[j]->FillFragment(theResult, *((*mom)[j]));
const G4FermiPhaseSpaceDecay * thePhaseSpace
const std::vector< const G4VFermiFragment * > * SelectConfiguration(G4int Z, G4int A, G4double mass)
std::vector< G4double > massRes
const G4LorentzVector & GetMomentum() const
Hep3Vector boostVector() const
std::vector< G4LorentzVector * > * Decay(G4double parent_mass, const std::vector< G4double > &fragment_masses) const
◆ BreakItUp()
Implements G4VFermiBreakUp.
Definition at line 84 of file G4FermiBreakUp.cc.
std::vector< G4Fragment * > G4FragmentVector
void BreakFragment(G4FragmentVector *, G4Fragment *theNucleus)
◆ CoulombBarrier()
Definition at line 65 of file G4FermiBreakUp.cc.
72 size_t nn = conf->size();
73 for (
size_t i=0; i<
nn; ++i) {
74 G4int z = (*conf)[i]->GetZ();
75 G4int a = (*conf)[i]->GetA();
80 CoulombEnergy -= SumZ*SumZ/
g4pow->
Z13(SumA);
81 return -
Coef * CoulombEnergy;
G4double Z13(G4int Z) const
◆ DecayProbability()
Definition at line 181 of file G4FermiBreakUp.cc.
189 const std::vector<const G4VFermiFragment*>* flist =
193 size_t K = flist->size();
194 if(K >
frag.size()) {
frag.resize(K, 0); }
196 for (
size_t i=0; i<K; ++i) {
197 frag[i] = (*flist)[i];
199 ((*flist)[i]->GetFragmentMass() + (*flist)[i]->GetExcitationEnergy());
204 if (KineticEnergy <= 0.0) {
return 0.0; }
213 for (
size_t i=0; i<K; ++i) {
214 G4double mass = (*flist)[i]->GetFragmentMass();
217 S_n *= (*flist)[i]->GetPolarization();
220 G4double MassFactor = ProdMass/SumMass;
221 MassFactor *= std::sqrt(MassFactor);
243 Energ =
g4pow->
powN(Energ, n1)*std::sqrt(Energ);
249 for(
size_t i=0; i<K-1; ++i) {
252 for(
size_t j=i+1; j<K; ++j) {
262 G4double Weight = Coeff*MassFactor*S_n*Energ/(G_n*Gamma*KineticEnergy);
G4double CoulombBarrier(const std::vector< const G4VFermiFragment *> *v)
const std::vector< const G4VFermiFragment * > * GetFragmentList() const
G4double powN(G4double x, G4int n) const
G4double factorial(G4int Z) const
double A(double temperature)
static const double twopi
std::vector< const G4VFermiFragment * > frag
◆ operator!=()
◆ operator=()
◆ operator==()
◆ SelectConfiguration()
Definition at line 145 of file G4FermiBreakUp.cc.
147 const std::vector<const G4VFermiFragment*>* res = 0;
149 const std::vector<const G4FermiConfiguration*>* conflist =
151 if(!conflist) {
return res; }
152 size_t nn = conflist->size();
161 for(
size_t i=0; i<
nn; ++i) {
166 for(idx=0; idx<
nn; ++idx) {
171 res = (*conflist)[idx]->GetFragmentList();
double A(double temperature)
std::vector< G4double > NormalizedWeights
G4FermiFragmentsPool * thePool
G4double DecayProbability(G4int A, G4double TotalE, const G4FermiConfiguration *)
const std::vector< const G4FermiConfiguration * > * GetConfigurationList(G4int Z, G4int A, G4double mass) const
◆ Coef
◆ ConstCoeff
◆ frag
◆ g4pow
G4Pow* G4FermiBreakUp::g4pow |
|
private |
◆ massRes
std::vector<G4double> G4FermiBreakUp::massRes |
|
private |
◆ nmax
size_t G4FermiBreakUp::nmax |
|
private |
◆ NormalizedWeights
std::vector<G4double> G4FermiBreakUp::NormalizedWeights |
|
private |
◆ thePhaseSpace
◆ thePool
The documentation for this class was generated from the following files: