29 #ifndef G4NeutronHPArbitaryTab_h
30 #define G4NeutronHPArbitaryTab_h 1
53 if(theDistFunc!=0)
delete [] theDistFunc;
56 inline void Init(std::ifstream & theData)
59 theFractionalProb.
Init(theData, CLHEP::eV);
62 theManager.
Init(theData);
64 for(i=0; i<nDistFunc; i++)
66 theData >> currentEnergy;
67 theDistFunc[i].
SetLabel(currentEnergy*CLHEP::eV);
68 theDistFunc[i].
Init(theData, CLHEP::eV);
79 for(i=0; i<nDistFunc; i++){
81 theLowThreshold[i]=theDistFunc[i].
GetEnergy(0);
82 theHighThreshold[i]=theDistFunc[i].
GetEnergy(np-1);
83 for(
G4int j=0;j<np-1;j++){
84 if(theDistFunc[i].GetXsec(j+1)>1.
e-20){
85 theLowThreshold[i]=theDistFunc[i].
GetEnergy(j);
89 for(
G4int j=1;j<np;j++){
90 if(theDistFunc[i].GetXsec(j-1)>1.
e-20){
91 theHighThreshold[i]=theDistFunc[i].
GetEnergy(j);
100 return theFractionalProb.
GetY(anEnergy);