#include <G4ChipsNeutronElasticXS.hh>
 | 
|   | G4ChipsNeutronElasticXS () | 
|   | 
|   | ~G4ChipsNeutronElasticXS () | 
|   | 
| virtual void  | CrossSectionDescription (std::ostream &) const  | 
|   | 
| virtual G4bool  | IsIsoApplicable (const G4DynamicParticle *Pt, G4int Z, G4int A, const G4Element *elm, const G4Material *mat) | 
|   | 
| virtual G4double  | GetIsoCrossSection (const G4DynamicParticle *, G4int tgZ, G4int A, const G4Isotope *iso=0, const G4Element *elm=0, const G4Material *mat=0) | 
|   | 
| virtual G4double  | GetChipsCrossSection (G4double momentum, G4int Z, G4int N, G4int pdg) | 
|   | 
| G4double  | GetExchangeT (G4int tZ, G4int tN, G4int pPDG) | 
|   | 
| G4double  | GetHMaxT () | 
|   | 
|   | G4VCrossSectionDataSet (const G4String &nam="") | 
|   | 
| virtual  | ~G4VCrossSectionDataSet () | 
|   | 
| virtual G4bool  | IsElementApplicable (const G4DynamicParticle *, G4int Z, const G4Material *mat=0) | 
|   | 
| G4double  | GetCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0) | 
|   | 
| G4double  | ComputeCrossSection (const G4DynamicParticle *, const G4Element *, const G4Material *mat=0) | 
|   | 
| virtual G4double  | GetElementCrossSection (const G4DynamicParticle *, G4int Z, const G4Material *mat=0) | 
|   | 
| virtual G4Isotope *  | SelectIsotope (const G4Element *, G4double kinEnergy) | 
|   | 
| virtual void  | BuildPhysicsTable (const G4ParticleDefinition &) | 
|   | 
| virtual void  | DumpPhysicsTable (const G4ParticleDefinition &) | 
|   | 
| virtual G4int  | GetVerboseLevel () const  | 
|   | 
| virtual void  | SetVerboseLevel (G4int value) | 
|   | 
| G4double  | GetMinKinEnergy () const  | 
|   | 
| void  | SetMinKinEnergy (G4double value) | 
|   | 
| G4double  | GetMaxKinEnergy () const  | 
|   | 
| void  | SetMaxKinEnergy (G4double value) | 
|   | 
| const G4String &  | GetName () const  | 
|   | 
Definition at line 46 of file G4ChipsNeutronElasticXS.hh.
 
      
        
          | G4ChipsNeutronElasticXS::G4ChipsNeutronElasticXS  | 
          ( | 
           | ) | 
           | 
        
      
 
Definition at line 62 of file G4ChipsNeutronElasticXS.cc.
   66   dlnP=(lPMax-lPMin)/nLast;
 
G4VCrossSectionDataSet(const G4String &nam="")
 
static const char * Default_Name()
 
static G4Proton * Proton()
 
static G4Neutron * Neutron()
 
G4double GetPDGMass() const 
 
 
 
 
      
        
          | G4ChipsNeutronElasticXS::~G4ChipsNeutronElasticXS  | 
          ( | 
           | ) | 
           | 
        
      
 
Definition at line 106 of file G4ChipsNeutronElasticXS.cc.
  108   std::vector<G4double*>::iterator 
pos;
 
  109   for (pos=CST.begin(); pos<CST.end(); pos++)
 
  112   for (pos=PAR.begin(); pos<PAR.end(); pos++)
 
  115   for (pos=SST.begin(); pos<SST.end(); pos++)
 
  118   for (pos=S1T.begin(); pos<S1T.end(); pos++)
 
  121   for (pos=B1T.begin(); pos<B1T.end(); pos++)
 
  124   for (pos=S2T.begin(); pos<S2T.end(); pos++)
 
  127   for (pos=B2T.begin(); pos<B2T.end(); pos++)
 
  130   for (pos=S3T.begin(); pos<S3T.end(); pos++)
 
  133   for (pos=B3T.begin(); pos<B3T.end(); pos++)
 
  136   for (pos=S4T.begin(); pos<S4T.end(); pos++)
 
  139   for (pos=B4T.begin(); pos<B4T.end(); pos++)
 
static const G4double pos
 
 
 
 
  
  
      
        
          | void G4ChipsNeutronElasticXS::CrossSectionDescription  | 
          ( | 
          std::ostream &  | 
          outFile | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
Reimplemented from G4VCrossSectionDataSet.
Definition at line 145 of file G4ChipsNeutronElasticXS.cc.
  147     outFile << 
"G4ChipsNeutronElasticXS provides the elastic cross\n" 
  148             << 
"section for neutron nucleus scattering as a function of incident\n" 
  149             << 
"momentum. The cross section is calculated using M. Kossov's\n" 
  150             << 
"CHIPS parameterization of cross section data.\n";
 
 
 
 
  
  
      
        
          | static const char* G4ChipsNeutronElasticXS::Default_Name  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinestatic   | 
  
 
 
!The slave functions must provide cross-sections in millibarns (mb) !! (not in IU) 
Definition at line 173 of file G4ChipsNeutronElasticXS.cc.
  184   if(lastI) 
for(
G4int i=0; i<lastI; i++) 
 
  186     if(colN[i]==tgN && colZ[i]==tgZ) 
 
  199         CalculateCrossSection(
false,-1,i,2112,lastZ,lastN,pMom); 
 
  204       lastCS=CalculateCrossSection(
false,-1,i,2112,lastZ,lastN,pMom); 
 
  205       if(lastCS<=0. && pEn>lastTH)    
 
  215     lastCS=CalculateCrossSection(
false,0,lastI,2112,lastZ,lastN,pMom);
 
  226     colP.push_back(pMom);
 
  227     colTH.push_back(lastTH);
 
  228     colCS.push_back(lastCS);
 
static constexpr double millibarn
 
 
 
 
Definition at line 1864 of file G4ChipsNeutronElasticXS.cc.
 1870   if(PDG!=2112) 
G4cout<<
"*Warning*G4ChipsNeutronElasticXS::GetExT:PDG="<<PDG<<
G4endl;
 
 1871   if(onlyCS) 
G4cout<<
"*Warning*G4ChipsNeutronElasticXS::GetExchangeT:onCS=1"<<
G4endl;
 
 1874   if(tgZ==1 && tgN==0)                
 
 1890       q2=-std::log(1.-ran)/theB1;       
 
 1896       q2=lastTM+std::log(1.-ran)/theB2; 
 
 1902     G4double E1=lastTM*(theB1+lastTM*theSS);
 
 1910     if(a>6.5)E3*=tm2*tm2*tm2;                       
 
 1925       q2=-std::log(1.-ran)/theB1;
 
 1926       if(std::fabs(tss)>1.e-7) q2=(std::sqrt(theB1*(theB1+(tss+tss)*q2))-theB1)/tss;
 
 1932       q2=-std::log(1.-ran)/theB2;
 
 1934       if(a<6.5) q2=std::pow(q2,third);
 
 1935       else      q2=std::pow(q2,fifth);
 
 1941       q2=-std::log(1.-ran)/theB3;
 
 1943       if(a>6.5) q2=std::pow(q2,sevth);
 
 1949       q2=-std::log(1.-ran)/theB4;
 
 1950       if(a<6.5) q2=lastTM-q2;                    
 
 1954   if(!(q2>=-1.||q2<=1.)) 
G4cout<<
"*NAN*G4QNeutronElCroSect::GetExchangeT: -t="<<q2<<
G4endl;
 
std::vector< ExP01TrackerHit * > a
 
G4GLOB_DLL std::ostream G4cout
 
static constexpr double gigaelectronvolt
 
 
 
 
      
        
          | G4double G4ChipsNeutronElasticXS::GetHMaxT  | 
          ( | 
           | ) | 
           | 
        
      
 
 
The documentation for this class was generated from the following files: