56 if(!IsLocked()) { Initialise(); }
59void G4DeexPrecoParameters::Initialise()
61 fLevelDensity = 0.075/CLHEP::MeV;
62 fR0 = 1.5*CLHEP::fermi;
63 fTransitionsR0 = 0.6*CLHEP::fermi;
64 fFBUEnergyLimit = 20.0*CLHEP::MeV;
65 fFermiEnergy = 35.0*CLHEP::MeV;
66 fPrecoLowEnergy = 0.1*CLHEP::MeV;
67 fPrecoHighEnergy = 30*CLHEP::MeV;
68 fMinExcitation = 10*CLHEP::eV;
69 fMaxLifeTime = 1*CLHEP::nanosecond;
70 fMinExPerNucleounForMF = 200*CLHEP::GeV;
75 if(IsLocked() || val <= 0.0) {
return; }
76 fLevelDensity = val/CLHEP::MeV;
81 if(IsLocked() || val <= 0.0) {
return; }
87 if(IsLocked() || val <= 0.0) {
return; }
93 if(IsLocked() || val <= 0.0) {
return; }
94 fFBUEnergyLimit = val;
99 if(IsLocked() || val <= 0.0) {
return; }
105 if(IsLocked() || val < 0.0) {
return; }
106 fPrecoLowEnergy = val;
111 if(IsLocked() || val < 0.0) {
return; }
112 fPrecoHighEnergy = val;
117 if(IsLocked() || val <= 0.0) {
return; }
123 if(IsLocked() || val < 0.0) {
return; }
124 fMinExcitation = val;
129 if(IsLocked() || val < 0.0) {
return; }
135 if(IsLocked() || val < 0.0) {
return; }
136 fMinExPerNucleounForMF = val;
141 if(IsLocked() || n < 2) {
return; }
147 if(IsLocked() || n < 0) {
return; }
153 if(IsLocked() || n < 0 || n > 3) {
return; }
159 if(IsLocked() || n < 0 || n > 3) {
return; }
165 if(IsLocked() || n < 0) {
return; }
171 if(IsLocked()) {
return; }
177 if(IsLocked()) {
return; }
183 if(IsLocked()) {
return; }
184 fUseSoftCutoff = val;
189 if(IsLocked()) {
return; }
195 if(IsLocked()) {
return; }
201 if(IsLocked()) {
return; }
207 if(IsLocked()) {
return; }
208 fUseAngularGen = val;
213 if(IsLocked()) {
return; }
215 fDeexChannelType =
fDummy;
220 if(IsLocked()) {
return; }
221 fCorrelatedGamma = val;
226 if(IsLocked()) {
return; }
227 fStoreAllLevels = val;
237 if(IsLocked()) {
return; }
238 fInternalConversion = val;
243 if(IsLocked()) {
return; }
249 if(IsLocked()) {
return; }
255 if(IsLocked()) {
return; }
261 if(IsLocked()) {
return; }
262 fDeexChannelType = val;
267 static const G4String namm[5] = {
"Evaporation",
"GEM",
"Evaporation+GEM",
"GEMVI",
"Dummy"};
268 static const G4int nmm[5] = {8, 68, 68, 31, 0};
269 G4int idx = fDeexChannelType;
271 G4long prec = os.precision(5);
272 os <<
"=======================================================================" <<
"\n";
273 os <<
"====== Geant4 Native Pre-compound Model Parameters ========" <<
"\n";
274 os <<
"=======================================================================" <<
"\n";
275 os <<
"Type of pre-compound inverse x-section " << fPrecoType <<
"\n";
276 os <<
"Pre-compound model active " << (!fPrecoDummy) <<
"\n";
277 os <<
"Pre-compound excitation low energy "
278 <<
G4BestUnit(fPrecoLowEnergy,
"Energy") <<
"\n";
279 os <<
"Pre-compound excitation high energy "
280 <<
G4BestUnit(fPrecoHighEnergy,
"Energy") <<
"\n";
281 os <<
"Angular generator for pre-compound model " << fUseAngularGen <<
"\n";
282 os <<
"Use NeverGoBack option for pre-compound model " << fNeverGoBack <<
"\n";
283 os <<
"Use SoftCutOff option for pre-compound model " << fUseSoftCutoff <<
"\n";
284 os <<
"Use CEM transitions for pre-compound model " << fUseCEM <<
"\n";
285 os <<
"Use GNASH transitions for pre-compound model " << fUseGNASH <<
"\n";
286 os <<
"Use HETC submodel for pre-compound model " << fUseHETC <<
"\n";
287 os <<
"=======================================================================" <<
"\n";
288 os <<
"====== Nuclear De-excitation Module Parameters ========" <<
"\n";
289 os <<
"=======================================================================" <<
"\n";
290 os <<
"Type of de-excitation inverse x-section " << fDeexType <<
"\n";
291 os <<
"Type of de-excitation factory " << namm[idx] <<
"\n";
292 os <<
"Number of de-excitation channels " << nmm[idx] <<
"\n";
293 os <<
"Min excitation energy "
294 <<
G4BestUnit(fMinExcitation,
"Energy") <<
"\n";
295 os <<
"Min energy per nucleon for multifragmentation "
296 <<
G4BestUnit(fMinExPerNucleounForMF,
"Energy") <<
"\n";
297 os <<
"Limit excitation energy for Fermi BreakUp "
298 <<
G4BestUnit(fFBUEnergyLimit,
"Energy") <<
"\n";
299 os <<
"Level density (1/MeV) "
300 << fLevelDensity*CLHEP::MeV <<
"\n";
301 os <<
"Use simple level density model " << fLD <<
"\n";
302 os <<
"Use discrete excitation energy of the residual " << fFD <<
"\n";
303 os <<
"Time limit for long lived isomeres "
305 os <<
"Isomer production flag " << fIsomerFlag <<
"\n";
306 os <<
"Internal e- conversion flag "
307 << fInternalConversion <<
"\n";
308 os <<
"Store e- internal conversion data " << fStoreAllLevels <<
"\n";
309 os <<
"Correlated gamma emission flag " << fCorrelatedGamma <<
"\n";
310 os <<
"Max 2J for sampling of angular correlations " << fTwoJMAX <<
"\n";
311 os <<
"=======================================================================" <<
G4endl;
319 return (verb > 0) ? std::max(fVerbose, verb) : verb;
335G4bool G4DeexPrecoParameters::IsLocked()
const
std::ostream & operator<<(std::ostream &os, const G4DeexPrecoParameters &par)
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()