Import Geant4 10.7.0.beta source tree
This commit is contained in:
@@ -6,12 +6,19 @@
|
||||
|
||||
Hadronic physics-list/constructors/ions History
|
||||
-----------------------------------------------
|
||||
This file should be used to briefly summarize all major modifications
|
||||
This file should be used to briefly summarize all major modifications
|
||||
introduced in the code and keeptrack of all tags.
|
||||
|
||||
----------------------------------------------------------
|
||||
* Reverse chronological order (last date on top), please *
|
||||
----------------------------------------------------------
|
||||
30-April-2020, Ben Morgan (phys-ctor-ions-V10-06-01)
|
||||
- Remove obsolete GRANULAR_DEPENDENCIES entries
|
||||
|
||||
21-February-2020, Vladimir Ivanchenko (phys-ctor-ions-V10-06-00)
|
||||
- cleanup of all constructors: fixed names; make all constructor
|
||||
signatures universal, removed thread local members, added c++11
|
||||
keywords
|
||||
|
||||
16-August-2019, Vladimir Ivanchenko (phys-ctor-ions-V10-05-01)
|
||||
- G4IonQMDPhysics : replacing explicit values for the QMD model
|
||||
@@ -31,8 +38,8 @@ introduced in the code and keeptrack of all tags.
|
||||
G4IonBinaryCascadePhysics is now identical to G4IonPhysics
|
||||
|
||||
06-August-2018, Alberto Ribon (phys-ctor-ions-V10-04-02)
|
||||
- G4IonPhysics, G4IonBinaryCascadePhysics, G4IonPhysicsPHP : replaced the
|
||||
explicit high-energy limit of hadronic physics with the one from
|
||||
- G4IonPhysics, G4IonBinaryCascadePhysics, G4IonPhysicsPHP : replaced the
|
||||
explicit high-energy limit of hadronic physics with the one from
|
||||
G4HadronicParameters .
|
||||
|
||||
29-July-2018, Vladimir Ivanchenko (phys-ctor-ions-V10-04-01)
|
||||
@@ -61,7 +68,7 @@ introduced in the code and keeptrack of all tags.
|
||||
|
||||
06-May-2014, Vladimir Ivanchenko (phys-ctor-ions-V10-00-02)
|
||||
- Reuse G4PreCompoundModel and not create a new local in all
|
||||
ion physics classes, should reduce memory and memory churn
|
||||
ion physics classes, should reduce memory and memory churn
|
||||
|
||||
29-Jan-2014, Gunter Folger (phys-ctor-ions-V10-00-01)
|
||||
- Removed from photolepton_hadron/muon_nuclear from sources.cmake
|
||||
@@ -74,7 +81,7 @@ introduced in the code and keeptrack of all tags.
|
||||
- Removed low_energy and high_energy from sources.cmake and GNUmakefile.
|
||||
|
||||
09-Jun-2013, Andrea Dotti (phys-ctor-ions-V09-06-04)
|
||||
- MT fixes: make private data members TLS since constructors is
|
||||
- MT fixes: make private data members TLS since constructors is
|
||||
shared instance, but processes not
|
||||
|
||||
19-Apr-2013, Alberto Ribon (phys-ctor-ions-V09-06-03)
|
||||
@@ -91,5 +98,5 @@ introduced in the code and keeptrack of all tags.
|
||||
- Fixed warning messages in G4IonQMDPhysics.
|
||||
|
||||
10-Jan-2013, Gunter Folger (phys-ctor-ions-V09-06-00)
|
||||
- new directory structure introduced.
|
||||
- new directory structure introduced.
|
||||
constructors/ions classes
|
||||
|
||||
@@ -41,22 +41,13 @@
|
||||
#include "globals.hh"
|
||||
#include "G4IonPhysics.hh"
|
||||
|
||||
class G4HadronInelasticProcess;
|
||||
class G4HadronicInteraction;
|
||||
class G4VCrossSectionDataSet;
|
||||
class G4VComponentCrossSection;
|
||||
class G4FTFBuilder;
|
||||
class G4BinaryLightIonReaction;
|
||||
|
||||
class G4IonBinaryCascadePhysics : public G4IonPhysics
|
||||
{
|
||||
public:
|
||||
G4IonBinaryCascadePhysics(G4int ver = 0);
|
||||
G4IonBinaryCascadePhysics(const G4String& name, G4int ver = 0);
|
||||
virtual ~G4IonBinaryCascadePhysics();
|
||||
|
||||
~G4IonBinaryCascadePhysics() override;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -54,16 +54,16 @@ class G4IonINCLXXPhysics : public G4VPhysicsConstructor
|
||||
public:
|
||||
G4IonINCLXXPhysics(G4int ver = 0);
|
||||
G4IonINCLXXPhysics(const G4String& name, G4int ver = 0);
|
||||
virtual ~G4IonINCLXXPhysics();
|
||||
~G4IonINCLXXPhysics() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each particle type will be instantiated
|
||||
virtual void ConstructParticle();
|
||||
void ConstructParticle() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each physics process will be instantiated and
|
||||
// registered to the process manager of each particle type
|
||||
virtual void ConstructProcess();
|
||||
void ConstructProcess() override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -73,13 +73,6 @@ private:
|
||||
G4HadronicInteraction*,
|
||||
G4VCrossSectionDataSet*);
|
||||
|
||||
static G4ThreadLocal G4INCLXXInterface* theINCLXXDeuteron;
|
||||
static G4ThreadLocal G4INCLXXInterface* theINCLXXTriton;
|
||||
static G4ThreadLocal G4INCLXXInterface* theINCLXXHe3;
|
||||
static G4ThreadLocal G4INCLXXInterface* theINCLXXAlpha;
|
||||
static G4ThreadLocal G4INCLXXInterface* theINCLXXIons;
|
||||
static G4ThreadLocal G4FTFBuilder* theFTFPBuilder;
|
||||
|
||||
G4double emaxINCLXX;
|
||||
G4double deltaE;
|
||||
|
||||
|
||||
@@ -50,8 +50,8 @@ class G4IonPhysics : public G4VPhysicsConstructor
|
||||
public:
|
||||
|
||||
G4IonPhysics(G4int ver = 0);
|
||||
G4IonPhysics(const G4String& nname);
|
||||
virtual ~G4IonPhysics();
|
||||
G4IonPhysics(const G4String& nname, G4int ver = 0);
|
||||
~G4IonPhysics() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each physics process will be instantiated and
|
||||
@@ -65,14 +65,11 @@ private:
|
||||
G4HadronicInteraction*, G4HadronicInteraction*,
|
||||
G4VCrossSectionDataSet*);
|
||||
|
||||
static G4ThreadLocal G4FTFBuilder* theBuilder;
|
||||
|
||||
protected:
|
||||
|
||||
G4int verbose;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -54,14 +54,14 @@ class G4IonPhysicsPHP : public G4VPhysicsConstructor {
|
||||
public:
|
||||
|
||||
G4IonPhysicsPHP( G4int ver = 0 );
|
||||
G4IonPhysicsPHP( const G4String& nname );
|
||||
virtual ~G4IonPhysicsPHP();
|
||||
G4IonPhysicsPHP( const G4String& nname, G4int ver = 0 );
|
||||
~G4IonPhysicsPHP() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each physics process will be instantiated and
|
||||
// registered to the process manager of each particle type
|
||||
void ConstructParticle();
|
||||
void ConstructProcess();
|
||||
void ConstructParticle() override;
|
||||
void ConstructProcess() override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -70,8 +70,6 @@ class G4IonPhysicsPHP : public G4VPhysicsConstructor {
|
||||
G4HadronicInteraction*, G4HadronicInteraction*,
|
||||
G4VCrossSectionDataSet*);
|
||||
|
||||
static G4ThreadLocal G4FTFBuilder* theBuilder;
|
||||
|
||||
G4int verbose;
|
||||
};
|
||||
|
||||
|
||||
@@ -50,8 +50,8 @@ class G4IonPhysicsXS : public G4IonPhysics
|
||||
public:
|
||||
|
||||
G4IonPhysicsXS(G4int ver = 0);
|
||||
G4IonPhysicsXS(const G4String& nname);
|
||||
virtual ~G4IonPhysicsXS();
|
||||
G4IonPhysicsXS(const G4String& nname, G4int ver = 0);
|
||||
~G4IonPhysicsXS() override;
|
||||
|
||||
private:
|
||||
|
||||
|
||||
@@ -44,11 +44,9 @@
|
||||
|
||||
#include <vector>
|
||||
|
||||
class G4HadronInelasticProcess;
|
||||
class G4HadronicInteraction;
|
||||
class G4BinaryLightIonReaction;
|
||||
class G4QMDReaction;
|
||||
class G4FTFBuilder;
|
||||
class G4VCrossSectionDataSet;
|
||||
|
||||
class G4IonQMDPhysics : public G4VPhysicsConstructor
|
||||
@@ -56,16 +54,16 @@ class G4IonQMDPhysics : public G4VPhysicsConstructor
|
||||
public:
|
||||
G4IonQMDPhysics(G4int verb = 0);
|
||||
G4IonQMDPhysics(const G4String& name, G4int ver = 0);
|
||||
virtual ~G4IonQMDPhysics();
|
||||
~G4IonQMDPhysics() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each particle type will be instantiated
|
||||
virtual void ConstructParticle();
|
||||
void ConstructParticle() override;
|
||||
|
||||
// This method will be invoked in the Construct() method.
|
||||
// each physics process will be instantiated and
|
||||
// registered to the process manager of each particle type
|
||||
virtual void ConstructProcess();
|
||||
void ConstructProcess() override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -76,8 +74,6 @@ private:
|
||||
G4HadronicInteraction*,
|
||||
G4VCrossSectionDataSet*);
|
||||
|
||||
static G4ThreadLocal G4FTFBuilder* theFTFPBuilder;
|
||||
|
||||
G4double eminQMD;
|
||||
G4double emaxQMD;
|
||||
G4double overlap;
|
||||
|
||||
@@ -114,14 +114,11 @@ GEANT4_DEFINE_MODULE(NAME G4phys_ctor_ions
|
||||
G4had_mod_man
|
||||
G4had_mod_util
|
||||
G4had_lept_nuclear
|
||||
G4had_neu_hp
|
||||
G4had_preequ_exciton
|
||||
G4had_string_diff
|
||||
G4had_string_frag
|
||||
G4had_string_man
|
||||
G4had_theo_max
|
||||
G4hadronic_HE
|
||||
G4hadronic_LE
|
||||
G4hadronic_bert_cascade
|
||||
G4hadronic_binary
|
||||
G4hadronic_coherent_elastic
|
||||
|
||||
@@ -46,8 +46,8 @@ G4IonBinaryCascadePhysics::G4IonBinaryCascadePhysics(G4int ver)
|
||||
: G4IonPhysics(ver)
|
||||
{}
|
||||
|
||||
G4IonBinaryCascadePhysics::G4IonBinaryCascadePhysics(const G4String& name, G4int)
|
||||
: G4IonPhysics(name)
|
||||
G4IonBinaryCascadePhysics::G4IonBinaryCascadePhysics(const G4String&, G4int ver)
|
||||
: G4IonPhysics(ver)
|
||||
{}
|
||||
|
||||
G4IonBinaryCascadePhysics::~G4IonBinaryCascadePhysics()
|
||||
|
||||
@@ -68,13 +68,6 @@
|
||||
//
|
||||
G4_DECLARE_PHYSCONSTR_FACTORY(G4IonINCLXXPhysics);
|
||||
|
||||
G4ThreadLocal G4INCLXXInterface* G4IonINCLXXPhysics::theINCLXXDeuteron = nullptr;
|
||||
G4ThreadLocal G4INCLXXInterface* G4IonINCLXXPhysics::theINCLXXTriton = nullptr;
|
||||
G4ThreadLocal G4INCLXXInterface* G4IonINCLXXPhysics::theINCLXXHe3 = nullptr;
|
||||
G4ThreadLocal G4INCLXXInterface* G4IonINCLXXPhysics::theINCLXXAlpha = nullptr;
|
||||
G4ThreadLocal G4INCLXXInterface* G4IonINCLXXPhysics::theINCLXXIons = nullptr;
|
||||
G4ThreadLocal G4FTFBuilder* G4IonINCLXXPhysics::theFTFPBuilder = nullptr;
|
||||
|
||||
G4IonINCLXXPhysics::G4IonINCLXXPhysics(G4int ver) :
|
||||
G4IonINCLXXPhysics("IonINCLXX", ver)
|
||||
{}
|
||||
@@ -92,25 +85,15 @@ G4IonINCLXXPhysics::G4IonINCLXXPhysics(const G4String& nname, G4int ver)
|
||||
}
|
||||
|
||||
G4IonINCLXXPhysics::~G4IonINCLXXPhysics()
|
||||
{
|
||||
//For MT need to explicitly set back pointers to zero:
|
||||
//variables are static and if new threads are created we can have problems
|
||||
//since variable is still pointing old value
|
||||
delete theFTFPBuilder; theFTFPBuilder=nullptr;
|
||||
delete theINCLXXDeuteron; theINCLXXDeuteron = nullptr;
|
||||
delete theINCLXXTriton; theINCLXXTriton=nullptr;
|
||||
delete theINCLXXHe3; theINCLXXHe3=nullptr;
|
||||
delete theINCLXXAlpha; theINCLXXAlpha=nullptr;
|
||||
delete theINCLXXIons; theINCLXXIons=nullptr;
|
||||
}
|
||||
{}
|
||||
|
||||
void G4IonINCLXXPhysics::ConstructProcess()
|
||||
{
|
||||
theINCLXXDeuteron= new G4INCLXXInterface();
|
||||
theINCLXXTriton= new G4INCLXXInterface();
|
||||
theINCLXXHe3= new G4INCLXXInterface();
|
||||
theINCLXXAlpha= new G4INCLXXInterface();
|
||||
theINCLXXIons= new G4INCLXXInterface();
|
||||
G4INCLXXInterface* theINCLXXDeuteron= new G4INCLXXInterface();
|
||||
G4INCLXXInterface* theINCLXXTriton= new G4INCLXXInterface();
|
||||
G4INCLXXInterface* theINCLXXHe3= new G4INCLXXInterface();
|
||||
G4INCLXXInterface* theINCLXXAlpha= new G4INCLXXInterface();
|
||||
G4INCLXXInterface* theINCLXXIons= new G4INCLXXInterface();
|
||||
|
||||
G4HadronicInteraction* p =
|
||||
G4HadronicInteractionRegistry::Instance()->FindModel("PRECO");
|
||||
@@ -123,8 +106,8 @@ void G4IonINCLXXPhysics::ConstructProcess()
|
||||
G4double emax = G4HadronicParameters::Instance()->GetMaxEnergy();
|
||||
G4HadronicInteraction* theFTFP = nullptr;
|
||||
if(emax > emaxINCLXX) {
|
||||
theFTFPBuilder = new G4FTFBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theFTFPBuilder->GetModel();
|
||||
G4FTFBuilder theFTFPBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theFTFPBuilder.GetModel();
|
||||
theFTFP->SetMinEnergy(emaxINCLXX - deltaE);
|
||||
theFTFP->SetMaxEnergy(emax);
|
||||
}
|
||||
|
||||
@@ -67,20 +67,16 @@ using namespace std;
|
||||
//
|
||||
G4_DECLARE_PHYSCONSTR_FACTORY(G4IonPhysics);
|
||||
|
||||
G4ThreadLocal G4FTFBuilder* G4IonPhysics::theBuilder=nullptr;
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
G4IonPhysics::G4IonPhysics(G4int ver)
|
||||
: G4IonPhysics("ionInelasticFTFP_BIC")
|
||||
{
|
||||
verbose = ver;
|
||||
}
|
||||
: G4IonPhysics("ionInelasticFTFP_BIC", ver)
|
||||
{}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
G4IonPhysics::G4IonPhysics(const G4String& nname)
|
||||
: G4VPhysicsConstructor(nname),verbose(1)
|
||||
G4IonPhysics::G4IonPhysics(const G4String& nname, G4int ver)
|
||||
: G4VPhysicsConstructor(nname),verbose(ver)
|
||||
{
|
||||
SetPhysicsType(bIons);
|
||||
if(verbose > 1) { G4cout << "### IonPhysics: " << nname << G4endl; }
|
||||
@@ -89,13 +85,7 @@ G4IonPhysics::G4IonPhysics(const G4String& nname)
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
G4IonPhysics::~G4IonPhysics()
|
||||
{
|
||||
// Explictly setting pointers to zero is actually needed.
|
||||
// These are static variables, in case we restart threads
|
||||
// we need to re-create objects
|
||||
delete theBuilder;
|
||||
theBuilder = nullptr;
|
||||
}
|
||||
{}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
@@ -126,8 +116,8 @@ void G4IonPhysics::ConstructProcess()
|
||||
// FTFP
|
||||
G4HadronicInteraction* theFTFP = nullptr;
|
||||
if(emax > theIonBC->GetMaxEnergy()) {
|
||||
theBuilder = new G4FTFBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theBuilder->GetModel();
|
||||
G4FTFBuilder theBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theBuilder.GetModel();
|
||||
theFTFP->SetMinEnergy( G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade() );
|
||||
theFTFP->SetMaxEnergy( emax );
|
||||
}
|
||||
|
||||
@@ -72,16 +72,12 @@ using namespace std;
|
||||
|
||||
G4_DECLARE_PHYSCONSTR_FACTORY( G4IonPhysicsPHP );
|
||||
|
||||
G4ThreadLocal G4FTFBuilder* G4IonPhysicsPHP::theBuilder = nullptr;
|
||||
|
||||
G4IonPhysicsPHP::G4IonPhysicsPHP( G4int ver )
|
||||
: G4IonPhysicsPHP( "ionInelasticFTFP_BIC_PHP" )
|
||||
{
|
||||
verbose = ver;
|
||||
}
|
||||
: G4IonPhysicsPHP( "ionInelasticFTFP_BIC_PHP", ver)
|
||||
{}
|
||||
|
||||
G4IonPhysicsPHP::G4IonPhysicsPHP( const G4String& nname )
|
||||
: G4VPhysicsConstructor( nname ), verbose( 1 )
|
||||
G4IonPhysicsPHP::G4IonPhysicsPHP( const G4String& nname, G4int ver )
|
||||
: G4VPhysicsConstructor( nname ), verbose( ver )
|
||||
{
|
||||
SetPhysicsType( bIons );
|
||||
G4DeexPrecoParameters* param = G4NuclearLevelData::GetInstance()->GetParameters();
|
||||
@@ -89,21 +85,15 @@ G4IonPhysicsPHP::G4IonPhysicsPHP( const G4String& nname )
|
||||
if ( verbose > 1 ) G4cout << "### G4IonPhysics: " << nname << G4endl;
|
||||
}
|
||||
|
||||
|
||||
G4IonPhysicsPHP::~G4IonPhysicsPHP() {
|
||||
//Explictly setting pointers to zero is actually needed.
|
||||
//These are static variables, in case we restart threads we need to re-create objects
|
||||
delete theBuilder; theBuilder = nullptr;
|
||||
}
|
||||
|
||||
|
||||
void G4IonPhysicsPHP::ConstructParticle() {
|
||||
// Construct ions
|
||||
G4IonConstructor pConstructor;
|
||||
pConstructor.ConstructParticle();
|
||||
}
|
||||
|
||||
|
||||
void G4IonPhysicsPHP::ConstructProcess() {
|
||||
|
||||
const G4double maxPHP = 200.0*MeV;
|
||||
@@ -129,8 +119,8 @@ void G4IonPhysicsPHP::ConstructProcess() {
|
||||
// FTFP
|
||||
G4HadronicInteraction* theFTFP = nullptr;
|
||||
if(maxFTF > maxBIC) {
|
||||
theBuilder = new G4FTFBuilder( "FTFP", thePreCompound );
|
||||
theFTFP = theBuilder->GetModel();
|
||||
G4FTFBuilder theBuilder( "FTFP", thePreCompound );
|
||||
theFTFP = theBuilder.GetModel();
|
||||
theFTFP->SetMinEnergy( minFTF );
|
||||
theFTFP->SetMaxEnergy( maxFTF );
|
||||
}
|
||||
@@ -192,7 +182,6 @@ void G4IonPhysicsPHP::ConstructProcess() {
|
||||
if ( verbose > 1 ) G4cout << "G4IonPhysicsPHP::ConstructProcess done! " << G4endl;
|
||||
}
|
||||
|
||||
|
||||
void G4IonPhysicsPHP::AddProcess( const G4String& name, G4ParticleDefinition* part,
|
||||
G4ParticleHPInelasticData* xsecPHP, G4HadronicInteraction* aPHP,
|
||||
G4HadronicInteraction* aBIC,
|
||||
|
||||
@@ -58,20 +58,14 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4IonPhysicsXS);
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
G4IonPhysicsXS::G4IonPhysicsXS(G4int ver)
|
||||
: G4IonPhysicsXS("ionPhysicsXS")
|
||||
{
|
||||
verbose = ver;
|
||||
}
|
||||
: G4IonPhysicsXS("ionPhysicsXS", ver)
|
||||
{}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
G4IonPhysicsXS::G4IonPhysicsXS(const G4String& nname)
|
||||
: G4IonPhysics(nname)
|
||||
{
|
||||
G4DeexPrecoParameters* param = G4NuclearLevelData::GetInstance()->GetParameters();
|
||||
param->SetDeexChannelsType(fCombined);
|
||||
if(verbose > 1) { G4cout << "### IonPhysics: " << nname << G4endl; }
|
||||
}
|
||||
G4IonPhysicsXS::G4IonPhysicsXS(const G4String& nname, G4int ver)
|
||||
: G4IonPhysics(nname, ver)
|
||||
{}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
|
||||
@@ -79,8 +79,6 @@
|
||||
//
|
||||
G4_DECLARE_PHYSCONSTR_FACTORY(G4IonQMDPhysics);
|
||||
|
||||
G4ThreadLocal G4FTFBuilder* G4IonQMDPhysics::theFTFPBuilder = nullptr;
|
||||
|
||||
G4IonQMDPhysics::G4IonQMDPhysics(G4int ver)
|
||||
: G4IonQMDPhysics("IonQMD", ver)
|
||||
{}
|
||||
@@ -98,9 +96,7 @@ G4IonQMDPhysics::G4IonQMDPhysics(const G4String& nname, G4int ver)
|
||||
}
|
||||
|
||||
G4IonQMDPhysics::~G4IonQMDPhysics()
|
||||
{
|
||||
delete theFTFPBuilder; theFTFPBuilder = nullptr;
|
||||
}
|
||||
{}
|
||||
|
||||
void G4IonQMDPhysics::ConstructProcess()
|
||||
{
|
||||
@@ -116,8 +112,8 @@ void G4IonQMDPhysics::ConstructProcess()
|
||||
emaxQMD = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade();
|
||||
G4HadronicInteraction* theFTFP = nullptr;
|
||||
if(emax > emaxQMD) {
|
||||
theFTFPBuilder = new G4FTFBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theFTFPBuilder->GetModel();
|
||||
G4FTFBuilder theFTFPBuilder("FTFP",thePreCompound);
|
||||
theFTFP = theFTFPBuilder.GetModel();
|
||||
theFTFP->SetMinEnergy(emaxQMD - overlap);
|
||||
theFTFP->SetMaxEnergy(emax);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user