62int main(
int argc,
char** argv)
73 if ( argc == 2 ) macro = argv[1];
76 for ( G4int i=1; i<argc; i=i+2 )
78 if (
G4String(argv[i]) ==
"-m" ) macro = argv[i+1];
79 else if (
G4String(argv[i]) ==
"-b" ) onOffBiasing = argv[i+1];
88 if ( onOffBiasing ==
"" ) onOffBiasing =
"on";
97 auto* runManager = G4RunManagerFactory::CreateRunManager();
98 runManager->SetNumberOfThreads(4);
102 runManager->SetUserInitialization(detector);
107 biasingPhysics->BeVerbose();
108 if ( onOffBiasing ==
"on" )
110 biasingPhysics->Bias(
"neutron");
111 physicsList->RegisterPhysics(biasingPhysics);
112 G4cout <<
" ********************************************************* "
114 G4cout <<
" ********** processes are wrapped for biasing ************ "
116 G4cout <<
" ********************************************************* "
121 G4cout <<
" ************************************************* " << G4endl;
122 G4cout <<
" ********** processes are not wrapped ************ " << G4endl;
123 G4cout <<
" ************************************************* " << G4endl;
125 runManager->SetUserInitialization(physicsList);
130 runManager->Initialize();
135 visManager->Initialize();
138 G4UImanager* UImanager = G4UImanager::GetUIpointer();
142 G4String command =
"/control/execute ";
143 UImanager->ApplyCommand(command+macro);
147 UImanager->ApplyCommand(
"/control/execute vis.mac");