G4IonPhysics Class Reference

#include <G4IonPhysics.hh>

Inheritance diagram for G4IonPhysics:

G4VPhysicsConstructor

Public Member Functions

 G4IonPhysics (G4int ver=0)
 G4IonPhysics (const G4String &nname)
virtual ~G4IonPhysics ()
void ConstructParticle ()
void ConstructProcess ()

Detailed Description

Definition at line 52 of file G4IonPhysics.hh.


Constructor & Destructor Documentation

G4IonPhysics::G4IonPhysics ( G4int  ver = 0  ) 

Definition at line 77 of file G4IonPhysics.cc.

References bIons, G4cout, G4endl, and G4VPhysicsConstructor::SetPhysicsType().

00078   : G4VPhysicsConstructor("ionInelasticFTFP_BIC"),verbose(ver),
00079     wasActivated(false)
00080 {
00081 //  fTripathi = fTripathiLight = fShen = fIonH = 0;
00082     fGGNuclNucl=0;
00083   theIonBC = 0;
00084   theFTFP = 0;
00085   theBuilder = 0;
00086   SetPhysicsType(bIons);
00087   if(verbose > 1) { G4cout << "### G4IonPhysics" << G4endl; }
00088 }

G4IonPhysics::G4IonPhysics ( const G4String nname  ) 

Definition at line 92 of file G4IonPhysics.cc.

References bIons, G4cout, G4endl, and G4VPhysicsConstructor::SetPhysicsType().

00093   : G4VPhysicsConstructor(nname),verbose(1),
00094     wasActivated(false)
00095 {
00096 //  fTripathi = fTripathiLight = fShen = fIonH = 0;
00097     fGGNuclNucl=0;
00098   theIonBC = 0;
00099   theFTFP = 0;
00100   theBuilder = 0;
00101   SetPhysicsType(bIons);
00102   if(verbose > 1) { G4cout << "### G4IonPhysics" << G4endl; }
00103 }

G4IonPhysics::~G4IonPhysics (  )  [virtual]

Definition at line 107 of file G4IonPhysics.cc.

00108 {
00109   delete theBuilder;
00110 }


Member Function Documentation

void G4IonPhysics::ConstructParticle (  )  [virtual]

Implements G4VPhysicsConstructor.

Definition at line 114 of file G4IonPhysics.cc.

References G4IonConstructor::ConstructParticle().

00115 {
00116   //  Construct ions
00117   G4IonConstructor pConstructor;
00118   pConstructor.ConstructParticle();
00119 }

void G4IonPhysics::ConstructProcess (  )  [virtual]

Implements G4VPhysicsConstructor.

Definition at line 123 of file G4IonPhysics.cc.

References G4Alpha::Alpha(), G4GGNuclNuclCrossSection::Default_Name(), G4Deuteron::Deuteron(), G4cout, G4endl, G4GenericIon::GenericIon(), G4CrossSectionDataSetRegistry::GetCrossSectionDataSet(), G4VHadronModelBuilder::GetModel(), G4He3::He3(), G4CrossSectionDataSetRegistry::Instance(), G4HadronicInteraction::SetMaxEnergy(), G4HadronicInteraction::SetMinEnergy(), and G4Triton::Triton().

00124 {
00125   if(wasActivated) { return; }
00126   wasActivated = true;
00127 
00128   G4double emax = 100.*TeV;
00129 
00130   G4ExcitationHandler* handler = new G4ExcitationHandler();
00131   G4PreCompoundModel* thePreCompound = new G4PreCompoundModel(handler);
00132 
00133   // Binary Cascade
00134   theIonBC = new G4BinaryLightIonReaction(thePreCompound);
00135   theIonBC->SetMinEnergy(0.0);
00136   theIonBC->SetMaxEnergy(4*GeV);
00137 
00138   // FTFP
00139   theBuilder = new G4FTFBuilder("FTFP",thePreCompound);
00140   theFTFP = theBuilder->GetModel();
00141   theFTFP->SetMinEnergy(2*GeV);
00142   theFTFP->SetMaxEnergy(emax);
00143 
00144   //fShen = new G4IonsShenCrossSection();
00145   //fTripathi = new G4TripathiCrossSection();
00146   //fTripathiLight = new G4TripathiLightCrossSection();
00147   //fIonH = new G4IonProtonCrossSection();
00148     fGGNuclNucl = G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4GGNuclNuclCrossSection::Default_Name());
00149     
00150   AddProcess("dInelastic", G4Deuteron::Deuteron(),false);
00151   AddProcess("tInelastic",G4Triton::Triton(),false);
00152   AddProcess("He3Inelastic",G4He3::He3(),true);
00153   AddProcess("alphaInelastic", G4Alpha::Alpha(),true);
00154   AddProcess("ionInelastic",G4GenericIon::GenericIon(),true);
00155 
00156   if(verbose > 1) {
00157     G4cout << "G4IonPhysics::ConstructProcess done! " 
00158            << G4endl;
00159   }
00160 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:18 2013 for Geant4 by  doxygen 1.4.7