Dear friends,
I want to delete the whole Physics model (process) of PhysicsList in chem4 but not to delete the Chemistry model (process), like this
#include “PhysicsList.hh”
#include “G4SystemOfUnits.hh”
#include “G4EmDNAChemistry.hh”
#include “G4EmDNAChemistry_option1.hh”
#include “G4EmDNAPhysics.hh”
#include “G4PhysicsConstructorRegistry.hh”
#include “CommandLineParser.hh”
#include “G4EmParameters.hh”
using namespace G4DNAPARSER;
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
PhysicsList::PhysicsList()
: G4VModularPhysicsList(),
fEmDNAPhysicsList(nullptr),fEmDNAChemistryList(nullptr),
fEmDNAChemistryList1(nullptr),fPhysDNAName(“”)
{
G4double currentDefaultCut = 1.nanometer;
// fixe lower limit for cut
G4ProductionCutsTable::GetProductionCutsTable()->
SetEnergyRange(100eV, 1*GeV);
SetDefaultCutValue(currentDefaultCut);
SetVerboseLevel(1);
RegisterConstructor(“G4EmDNAPhysics”);
if(CommandLineParser::GetParser()->GetCommandIfActive(“-chemOFF”)==0)
{
RegisterConstructor(“G4EmDNAChemistry”);
}
}
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
PhysicsList::~PhysicsList()
{
delete fEmDNAChemistryList;
delete fEmDNAChemistryList1;
}
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
void PhysicsList::ConstructParticle()
{
if(fEmDNAChemistryList) { fEmDNAChemistryList->ConstructParticle(); }
if(fEmDNAChemistryList1) { fEmDNAChemistryList1->ConstructParticle(); }
}
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
void PhysicsList::ConstructProcess()
{
if(fEmDNAChemistryList) { fEmDNAChemistryList->ConstructProcess(); }
if(fEmDNAChemistryList1) { fEmDNAChemistryList1->ConstructProcess(); }
}
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
void PhysicsList::RegisterConstructor(const G4String& name)
{
if(name == “G4EmDNAChemistry”) {
if(fEmDNAChemistryList || fEmDNAChemistryList1) { return; }
fEmDNAChemistryList = new G4EmDNAChemistry();
fEmDNAChemistryList->SetVerboseLevel(verboseLevel);
} else if(name == “G4EmDNAChemistry_option1”) {
if(fEmDNAChemistryList || fEmDNAChemistryList1) { return; }
fEmDNAChemistryList1 = new G4EmDNAChemistry_option1();
fEmDNAChemistryList1->SetVerboseLevel(verboseLevel);
} else {
G4cout << “PhysicsList::RegisterConstructor: <” << name << “>”
<< " fails - name is not defined"
<< G4endl;
}
}
//…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…oooOO0OOooo…
But when I run it, the error will be find as follows:
***** COMMAND NOT FOUND </process/dna/e-SolvationSubType Ritchie1994> *****
***** Batch is interrupted!! *****
How should I solve this problem? Thanks.