Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4XNNstarTable Class Reference

#include <G4XNNstarTable.hh>

Public Member Functions

 G4XNNstarTable ()
 
virtual ~G4XNNstarTable ()
 
virtual const G4PhysicsVectorCrossSectionTable (const G4String &particleName) const
 
G4bool operator== (const G4XNNstarTable &right) const
 
G4bool operator!= (const G4XNNstarTable &right) const
 

Detailed Description

Definition at line 36 of file G4XNNstarTable.hh.

Constructor & Destructor Documentation

G4XNNstarTable::G4XNNstarTable ( )

Definition at line 352 of file G4XNNstarTable.cc.

353 {
354  xMap["N(1440)0"] = (G4double*) sigmaNN1440;
355  xMap["N(1440)+"] = (G4double*) sigmaNN1440;
356 
357  xMap["N(1520)0"] = (G4double*) sigmaNN1520;
358  xMap["N(1520)+"] = (G4double*) sigmaNN1520;
359 
360  xMap["N(1535)0"] = (G4double*) sigmaNN1535;
361  xMap["N(1535)+"] = (G4double*) sigmaNN1535;
362 
363  xMap["N(1650)0"] = (G4double*) sigmaNN1650;
364  xMap["N(1650)+"] = (G4double*) sigmaNN1650;
365 
366  xMap["N(1675)0"] = (G4double*) sigmaNN1675;
367  xMap["N(1675)+"] = (G4double*) sigmaNN1675;
368 
369  xMap["N(1680)0"] = (G4double*) sigmaNN1680;
370  xMap["N(1680)+"] = (G4double*) sigmaNN1680;
371 
372  xMap["N(1700)0"] = (G4double*) sigmaNN1700;
373  xMap["N(1700)+"] = (G4double*) sigmaNN1700;
374 
375  xMap["N(1710)0"] = (G4double*) sigmaNN1710;
376  xMap["N(1710)+"] = (G4double*) sigmaNN1710;
377 
378  xMap["N(1720)0"] = (G4double*) sigmaNN1720;
379  xMap["N(1720)+"] = (G4double*) sigmaNN1720;
380 
381  xMap["N(1900)0"] = (G4double*) sigmaNN1900;
382  xMap["N(1900)+"] = (G4double*) sigmaNN1900;
383 
384  xMap["N(1990)0"] = (G4double*) sigmaNN1990;
385  xMap["N(1990)+"] = (G4double*) sigmaNN1990;
386 
387  xMap["N(2090)0"] = (G4double*) sigmaNN2090;
388  xMap["N(2090)+"] = (G4double*) sigmaNN2090;
389 
390  xMap["N(2190)0"] = (G4double*) sigmaNN2190;
391  xMap["N(2190)+"] = (G4double*) sigmaNN2190;
392 
393  xMap["N(2220)0"] = (G4double*) sigmaNN2220;
394  xMap["N(2220)+"] = (G4double*) sigmaNN2220;
395 
396  xMap["N(2250)0"] = (G4double*) sigmaNN2250;
397  xMap["N(2250)+"] = (G4double*) sigmaNN2250;
398 }
double G4double
Definition: G4Types.hh:76
G4XNNstarTable::~G4XNNstarTable ( )
virtual

Definition at line 401 of file G4XNNstarTable.cc.

402 { }

Member Function Documentation

const G4PhysicsVector * G4XNNstarTable::CrossSectionTable ( const G4String particleName) const
virtual

Definition at line 405 of file G4XNNstarTable.cc.

References energy(), G4String::first(), python.hepunit::GeV, python.hepunit::millibarn, and G4PhysicsFreeVector::PutValue().

Referenced by G4NNstarBuilder::CrossSectionTable().

406 {
407  // NOTE: the returned pointer is owned by the client
408 
409  if (xMap.find(particleName) != xMap.end())
410  {
411  // Cross section table for the requested particle available in the Map
412  G4PhysicsFreeVector* sigmaVector = new G4PhysicsFreeVector(sizeNNstar);
413  std::map <G4String, G4double*, std::less<G4String> >::const_iterator iter;
414  G4double* sigmaPointer = 0;
415  for (iter = xMap.begin(); iter != xMap.end(); ++iter)
416  {
417  G4String str = (*iter).first;
418  if (str == particleName)
419  {
420  sigmaPointer = (*iter).second;
421  }
422  }
423  G4int i;
424  for (i=0; i<sizeNNstar; i++)
425  {
426  G4double value = *(sigmaPointer + i) * millibarn;
427  G4double energy = energyTable[i] * GeV;
428  sigmaVector->PutValue(i,energy,value);
429  }
430  return sigmaVector;
431  }
432  else
433  // No cross section table for the requested particle is available in the Map
434  return 0;
435 }
void PutValue(size_t binNumber, G4double binValue, G4double dataValue)
G4int first(char) const
int G4int
Definition: G4Types.hh:78
int millibarn
Definition: hepunit.py:40
double precision function energy(A, Z)
Definition: dpm25nuc6.f:4106
const XML_Char int const XML_Char * value
double G4double
Definition: G4Types.hh:76
G4bool G4XNNstarTable::operator!= ( const G4XNNstarTable right) const
G4bool G4XNNstarTable::operator== ( const G4XNNstarTable right) const

The documentation for this class was generated from the following files: