G4DNAMolecularReactionData Class Reference

#include <G4DNAMolecularReactionTable.hh>


Public Member Functions

 G4DNAMolecularReactionData (G4double reactionRate, const G4Molecule *reactive1, const G4Molecule *reactive2)
 ~G4DNAMolecularReactionData ()
const G4MoleculeGetReactive1 () const
const G4MoleculeGetReactive2 () const
G4double GetReactionRate () const
G4double GetReducedReactionRadius () const
void SetReactive1 (const G4Molecule *reactive)
void SetReactive2 (const G4Molecule *reactive)
void SetReactive (const G4Molecule *reactive1, const G4Molecule *reactive2)
void AddProduct (const G4Molecule *molecule)
G4int GetNbProducts () const
const G4MoleculeGetProduct (G4int i) const

Protected Member Functions

 G4DNAMolecularReactionData ()

Protected Attributes

G4MoleculeHandle fReactive1
G4MoleculeHandle fReactive2
G4double fReactionRate
G4double fReducedReactionRadius
std::vector< G4MoleculeHandle > * fProducts


Detailed Description

G4DNAMolecularReactionData contains the information relative to a given reaction (eg : °OH + °OH -> H2O2)

Definition at line 56 of file G4DNAMolecularReactionTable.hh.


Constructor & Destructor Documentation

G4DNAMolecularReactionData::G4DNAMolecularReactionData ( G4double  reactionRate,
const G4Molecule reactive1,
const G4Molecule reactive2 
)

Definition at line 58 of file G4DNAMolecularReactionTable.cc.

References fReactionRate, fReducedReactionRadius, G4Molecule::GetDiffusionCoefficient(), G4INCL::Math::pi, SetReactive1(), and SetReactive2().

00060                                                     :fProducts(0)
00061 {
00062     fReactionRate = reactionRate;
00063     SetReactive1(reactive1);
00064     SetReactive2(reactive2);
00065 
00066     G4double sumDiffCoeff(0.);
00067 
00068     if(*reactive1 == *reactive2)
00069     {
00070         sumDiffCoeff = reactive1->GetDiffusionCoefficient();
00071         fReducedReactionRadius = fReactionRate/(4*pi* reactive1->GetDiffusionCoefficient() * Avogadro);
00072     }
00073     else
00074     {
00075         sumDiffCoeff = reactive1->GetDiffusionCoefficient() + reactive2->GetDiffusionCoefficient();
00076         fReducedReactionRadius = fReactionRate/(4*pi* sumDiffCoeff  * Avogadro);
00077     }
00078 }

G4DNAMolecularReactionData::~G4DNAMolecularReactionData (  ) 

Definition at line 80 of file G4DNAMolecularReactionTable.cc.

References fProducts.

00081 {
00082     if(fProducts)
00083     {
00084         fProducts->clear() ;
00085         delete fProducts;
00086         fProducts = 0;
00087     }
00088 }

G4DNAMolecularReactionData::G4DNAMolecularReactionData (  )  [protected]

Definition at line 52 of file G4DNAMolecularReactionTable.cc.

00052                                                       :
00053     fReactive1(),fReactive2(),
00054     fReactionRate(0.),fReducedReactionRadius(0.),
00055     fProducts(0)
00056 {;}


Member Function Documentation

void G4DNAMolecularReactionData::AddProduct ( const G4Molecule molecule  ) 

Definition at line 105 of file G4DNAMolecularReactionTable.cc.

References fProducts, and G4MoleculeHandleManager::Instance().

Referenced by G4EmDNAPhysicsChemistry::ConstructReactionTable().

00106 {
00107     if(!fProducts) fProducts = new std::vector<G4MoleculeHandle>();
00108     fProducts->push_back(G4MoleculeHandleManager::Instance()->GetMoleculeHandle(molecule));
00109 }

G4int G4DNAMolecularReactionData::GetNbProducts (  )  const [inline]

Definition at line 76 of file G4DNAMolecularReactionTable.hh.

References fProducts.

Referenced by G4DNAMolecularReaction::MakeReaction(), and G4DNAMolecularReactionTable::PrintTable().

00077     {
00078         if(fProducts) return fProducts->size();
00079         return 0;
00080     }

const G4Molecule* G4DNAMolecularReactionData::GetProduct ( G4int  i  )  const [inline]

Definition at line 82 of file G4DNAMolecularReactionTable.hh.

References fProducts.

Referenced by G4DNAMolecularReaction::MakeReaction(), and G4DNAMolecularReactionTable::PrintTable().

00083     {
00084         if(fProducts) return (*fProducts)[i].get();
00085         return 0;
00086     }

G4double G4DNAMolecularReactionData::GetReactionRate (  )  const [inline]

Definition at line 67 of file G4DNAMolecularReactionTable.hh.

References fReactionRate.

Referenced by G4DNAMolecularReactionTable::PrintTable().

00067 {return fReactionRate;}

const G4Molecule* G4DNAMolecularReactionData::GetReactive1 (  )  const [inline]

Definition at line 64 of file G4DNAMolecularReactionTable.hh.

References fReactive1.

Referenced by G4DNAMolecularReactionTable::SetReaction().

00064 { return fReactive1.get(); }

const G4Molecule* G4DNAMolecularReactionData::GetReactive2 (  )  const [inline]

Definition at line 65 of file G4DNAMolecularReactionTable.hh.

References fReactive2.

Referenced by G4DNAMolecularReactionTable::SetReaction().

00065 { return fReactive2.get(); }

G4double G4DNAMolecularReactionData::GetReducedReactionRadius (  )  const [inline]

Definition at line 68 of file G4DNAMolecularReactionTable.hh.

References fReducedReactionRadius.

00068 {return fReducedReactionRadius;}

void G4DNAMolecularReactionData::SetReactive ( const G4Molecule reactive1,
const G4Molecule reactive2 
)

Definition at line 98 of file G4DNAMolecularReactionTable.cc.

References fReactive1, fReactive2, G4MoleculeHandleManager::GetMoleculeHandle(), and G4MoleculeHandleManager::Instance().

void G4DNAMolecularReactionData::SetReactive1 ( const G4Molecule reactive  ) 

Definition at line 90 of file G4DNAMolecularReactionTable.cc.

References fReactive1, G4MoleculeHandleManager::GetMoleculeHandle(), and G4MoleculeHandleManager::Instance().

Referenced by G4DNAMolecularReactionData().

00091 {
00092     fReactive1 = G4MoleculeHandleManager::Instance()->GetMoleculeHandle(reactive);
00093 }

void G4DNAMolecularReactionData::SetReactive2 ( const G4Molecule reactive  ) 

Definition at line 94 of file G4DNAMolecularReactionTable.cc.

References fReactive2, G4MoleculeHandleManager::GetMoleculeHandle(), and G4MoleculeHandleManager::Instance().

Referenced by G4DNAMolecularReactionData().

00095 {
00096     fReactive2 = G4MoleculeHandleManager::Instance()->GetMoleculeHandle(reactive);
00097 }


Field Documentation

std::vector<G4MoleculeHandle>* G4DNAMolecularReactionData::fProducts [protected]

Definition at line 95 of file G4DNAMolecularReactionTable.hh.

Referenced by AddProduct(), GetNbProducts(), GetProduct(), and ~G4DNAMolecularReactionData().

G4double G4DNAMolecularReactionData::fReactionRate [protected]

Definition at line 92 of file G4DNAMolecularReactionTable.hh.

Referenced by G4DNAMolecularReactionData(), and GetReactionRate().

G4MoleculeHandle G4DNAMolecularReactionData::fReactive1 [protected]

Definition at line 90 of file G4DNAMolecularReactionTable.hh.

Referenced by GetReactive1(), SetReactive(), and SetReactive1().

G4MoleculeHandle G4DNAMolecularReactionData::fReactive2 [protected]

Definition at line 91 of file G4DNAMolecularReactionTable.hh.

Referenced by GetReactive2(), SetReactive(), and SetReactive2().

G4double G4DNAMolecularReactionData::fReducedReactionRadius [protected]

Definition at line 93 of file G4DNAMolecularReactionTable.hh.

Referenced by G4DNAMolecularReactionData(), and GetReducedReactionRadius().


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