58 G4MUTEXLOCK(&G4DeexPrecoParameters::deexPrecoMutex);
63 fLevelDensity = 0.075/CLHEP::MeV;
64 fR0 = 1.5*CLHEP::fermi;
65 fTransitionsR0 = 0.6*CLHEP::fermi;
66 fFBUEnergyLimit = 20.0*CLHEP::MeV;
67 fFermiEnergy = 35.0*CLHEP::MeV;
68 fPrecoLowEnergy = 0.1*CLHEP::MeV;
69 fPrecoHighEnergy = 30*CLHEP::MeV;
71 fMinExcitation = 10*CLHEP::eV;
72 fMaxLifeTime = 1*CLHEP::nanosecond;
73 fMinExPerNucleounForMF = 200*CLHEP::GeV;
81 fUseSoftCutoff =
false;
85 fUseAngularGen =
false;
87 fCorrelatedGamma =
false;
88 fStoreAllLevels =
false;
89 fInternalConversion =
true;
101 if(IsLocked() || val <= 0.0) {
return; }
102 fLevelDensity = val/CLHEP::MeV;
107 if(IsLocked() || val <= 0.0) {
return; }
113 if(IsLocked() || val <= 0.0) {
return; }
114 fTransitionsR0 = val;
119 if(IsLocked() || val <= 0.0) {
return; }
120 fFBUEnergyLimit = val;
125 if(IsLocked() || val <= 0.0) {
return; }
131 if(IsLocked() || val < 0.0) {
return; }
132 fPrecoLowEnergy = val;
137 if(IsLocked() || val < 0.0) {
return; }
138 fPrecoHighEnergy = val;
143 if(IsLocked() || val <= 0.0) {
return; }
149 if(IsLocked() || val < 0.0) {
return; }
150 fMinExcitation = val;
155 if(IsLocked() || val < 0.0) {
return; }
161 if(IsLocked() || val < 0.0) {
return; }
162 fMinExPerNucleounForMF = val;
167 if(IsLocked() || n < 2) {
return; }
173 if(IsLocked() || n < 0) {
return; }
179 if(IsLocked() || n < 0 || n > 3) {
return; }
185 if(IsLocked() || n < 0 || n > 3) {
return; }
191 if(IsLocked() || n < 0) {
return; }
197 if(IsLocked()) {
return; }
203 if(IsLocked()) {
return; }
209 if(IsLocked()) {
return; }
210 fUseSoftCutoff = val;
215 if(IsLocked()) {
return; }
221 if(IsLocked()) {
return; }
227 if(IsLocked()) {
return; }
233 if(IsLocked()) {
return; }
234 fUseAngularGen = val;
239 if(IsLocked()) {
return; }
241 fDeexChannelType =
fDummy;
246 if(IsLocked()) {
return; }
247 fCorrelatedGamma = val;
252 if(IsLocked()) {
return; }
253 fStoreAllLevels = val;
263 if(IsLocked()) {
return; }
264 fInternalConversion = val;
269 if(IsLocked()) {
return; }
275 if(IsLocked()) {
return; }
281 if(IsLocked()) {
return; }
287 if(IsLocked()) {
return; }
288 fDeexChannelType = val;
293 static const G4String namm[5] = {
"Evaporation",
"GEM",
"Evaporation+GEM",
"GEMVI",
"Dummy"};
294 static const G4int nmm[5] = {8, 68, 68, 31, 0};
295 G4int idx = fDeexChannelType;
297 G4long prec = os.precision(5);
298 os <<
"=======================================================================" <<
"\n";
299 os <<
"====== Pre-compound/De-excitation Physics Parameters ========" <<
"\n";
300 os <<
"=======================================================================" <<
"\n";
301 os <<
"Type of pre-compound inverse x-section " << fPrecoType <<
"\n";
302 os <<
"Pre-compound model active " << (!fPrecoDummy) <<
"\n";
303 os <<
"Pre-compound excitation low energy "
304 <<
G4BestUnit(fPrecoLowEnergy,
"Energy") <<
"\n";
305 os <<
"Pre-compound excitation high energy "
306 <<
G4BestUnit(fPrecoHighEnergy,
"Energy") <<
"\n";
307 os <<
"Type of de-excitation inverse x-section " << fDeexType <<
"\n";
308 os <<
"Type of de-excitation factory " << namm[idx] <<
"\n";
309 os <<
"Number of de-excitation channels " << nmm[idx] <<
"\n";
310 os <<
"Min excitation energy "
311 <<
G4BestUnit(fMinExcitation,
"Energy") <<
"\n";
312 os <<
"Min energy per nucleon for multifragmentation "
313 <<
G4BestUnit(fMinExPerNucleounForMF,
"Energy") <<
"\n";
314 os <<
"Limit excitation energy for Fermi BreakUp "
315 <<
G4BestUnit(fFBUEnergyLimit,
"Energy") <<
"\n";
316 os <<
"Level density (1/MeV) "
317 << fLevelDensity*CLHEP::MeV <<
"\n";
318 os <<
"Use simple level density model " << fLD <<
"\n";
319 os <<
"Use discrete excitation energy of the residual " << fFD <<
"\n";
320 os <<
"Time limit for long lived isomeres "
322 os <<
"Isomer production flag " << fIsomerFlag <<
"\n";
323 os <<
"Internal e- conversion flag "
324 << fInternalConversion <<
"\n";
325 os <<
"Store e- internal conversion data " << fStoreAllLevels <<
"\n";
326 os <<
"Correlated gamma emission flag " << fCorrelatedGamma <<
"\n";
327 os <<
"Max 2J for sampling of angular correlations " << fTwoJMAX <<
"\n";
328 os <<
"=======================================================================" <<
G4endl;
336 return (verb > 0) ? std::max(fVerbose, verb) : verb;
349G4bool G4DeexPrecoParameters::IsLocked()
const
std::ostream & operator<<(std::ostream &os, const G4DeexPrecoParameters &par)
#define G4MUTEX_INITIALIZER
#define G4MUTEXLOCK(mutex)
#define G4MUTEXUNLOCK(mutex)
G4GLOB_DLL std::ostream G4cout
void SetPrecoDummy(G4bool)
void SetIsomerProduction(G4bool)
void SetMinExPerNucleounForMF(G4double)
void SetCorrelatedGamma(G4bool)
void SetDeexModelType(G4int)
void SetLevelDensity(G4double)
void SetTransitionsR0(G4double)
void SetMaxLifeTime(G4double)
void SetStoreICLevelData(G4bool)
void SetMinAForPreco(G4int)
void SetNeverGoBack(G4bool)
void SetMinZForPreco(G4int)
std::ostream & StreamInfo(std::ostream &os) const
void SetPhenoFactor(G4double)
void SetPrecoLowEnergy(G4double)
void SetStoreAllLevels(G4bool)
void SetUseAngularGen(G4bool)
void SetPrecoModelType(G4int)
void SetFermiEnergy(G4double)
void SetUseSoftCutoff(G4bool)
void SetDiscreteExcitationFlag(G4bool)
void SetLevelDensityFlag(G4bool)
void SetMinExcitation(G4double)
void SetFBUEnergyLimit(G4double)
void SetInternalConversionFlag(G4bool)
void SetDeexChannelsType(G4DeexChannelType)
void SetPrecoHighEnergy(G4double)
static G4HadronicParameters * Instance()
G4int GetVerboseLevel() const
const G4ApplicationState & GetCurrentState() const
static G4StateManager * GetStateManager()