Import Geant4 10.7.0 source tree

This commit is contained in:
Gabriele Cosmo
2020-12-04 12:30:43 +01:00
parent 67ba86d073
commit dab42d2018
3770 changed files with 226369 additions and 286486 deletions
@@ -70,6 +70,8 @@
#include "G4VMultiFragmentation.hh"
#include "G4VFermiBreakUp.hh"
#include "G4Element.hh"
#include "G4ElementTable.hh"
#include "G4VEvaporation.hh"
#include "G4VEvaporationChannel.hh"
@@ -111,7 +113,6 @@ G4ExcitationHandler::G4ExcitationHandler()
G4ExcitationHandler::~G4ExcitationHandler()
{
//G4cout << "### Delete handler " << this << G4endl;
delete theMultiFragmentation;
delete theFermiModel;
if(isEvapLocal) { delete theEvaporation; }
@@ -119,17 +120,26 @@ G4ExcitationHandler::~G4ExcitationHandler()
void G4ExcitationHandler::SetParameters()
{
if(fVerbose > 1) {
G4cout << "G4ExcitationHandler::SetParameters() started " << this << G4endl;
}
auto param = G4NuclearLevelData::GetInstance()->GetParameters();
G4NuclearLevelData* ndata = G4NuclearLevelData::GetInstance();
auto param = ndata->GetParameters();
isActive = true;
if(fDummy == param->GetDeexChannelsType()) { isActive = false; }
// check if de-excitation is needed
if(fDummy == param->GetDeexChannelsType()) {
isActive = false;
} else {
// upload data for elements used in geometry
G4int Zmax = 20;
const G4ElementTable* table = G4Element::GetElementTable();
for(auto & elm : *table) { Zmax = std::max(Zmax, elm->GetZasInt()); }
ndata->UploadNuclearLevelData(Zmax+1);
}
minEForMultiFrag = param->GetMinExPerNucleounForMF();
minExcitation = param->GetMinExcitation();
maxExcitation = param->GetPrecoHighEnergy();
icID = param->GetInternalConversionID();
fVerbose = param->GetVerbose();
// allowing local debug printout
fVerbose = std::max(fVerbose, param->GetVerbose());
if(isActive) {
if(!thePhotonEvaporation) { SetPhotonEvaporation(new G4PhotonEvaporation()); }
if(!theEvaporation) {
@@ -139,6 +149,9 @@ void G4ExcitationHandler::SetParameters()
if(!theMultiFragmentation) { SetMultiFragmentation(new G4StatMF()); }
}
theFermiModel->SetVerbose(fVerbose);
if(fVerbose > 1) {
G4cout << "G4ExcitationHandler::SetParameters() done " << this << G4endl;
}
}
void G4ExcitationHandler::Initialise()
@@ -155,7 +168,8 @@ void G4ExcitationHandler::Initialise()
theFermiModel->Initialise();
theEvaporation->InitialiseChannels();
}
if(fVerbose > 0) { param->Dump(); }
// dump level is controlled by parameter class
param->Dump();
}
void G4ExcitationHandler::SetEvaporation(G4VEvaporation* ptr, G4bool flag)