255{
257 G4cout <<
"G4NeutronInelasticXS::BuildPhysicsTable for "
259 }
263 << " only neutron is allowed";
264 G4Exception(
"G4NeutronInelasticXS::BuildPhysicsTable(..)",
"had012",
266 return;
267 }
268
269 if(nullptr == data) {
270#ifdef G4MULTITHREADED
272 if(nullptr == data) {
273#endif
274 isMaster = true;
276 data->
SetName(
"NeutronInelastic");
277 FindDirectoryPath();
278#ifdef G4MULTITHREADED
279 }
281#endif
282 }
283
284
285 if(isMaster) {
286
287
289 size_t numOfCouples = theCoupleTable->GetTableSize();
290 for(size_t j=0; j<numOfCouples; ++j) {
291 auto mat = theCoupleTable->GetMaterialCutsCouple(j)->GetMaterial();
292 auto elmVec = mat->GetElementVector();
293 size_t numOfElem = mat->GetNumberOfElements();
294 for (size_t ie = 0; ie < numOfElem; ++ie) {
295 G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(),
MAXZINEL-1));
297 }
298 }
299 }
300}
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
#define G4MUTEXLOCK(mutex)
#define G4MUTEXUNLOCK(mutex)
G4PhysicsVector * GetElementData(G4int Z)
void SetName(const G4String &nam)
const G4String & GetParticleName() const
static G4ProductionCutsTable * GetProductionCutsTable()