G4MolecularDecayChannel Class Reference

#include <G4MolecularDecayChannel.hh>


Public Member Functions

 G4MolecularDecayChannel ()
 G4MolecularDecayChannel (G4String)
 ~G4MolecularDecayChannel ()
 G4MolecularDecayChannel (const G4MolecularDecayChannel &)
G4MolecularDecayChanneloperator= (const G4MolecularDecayChannel &right)
G4double GetRMSRadialDisplacementOfProduct (const G4Molecule *)
void AddProduct (const G4Molecule *, G4double=0)
void SetName (const G4String &)
void SetEnergy (G4double)
void SetProbability (G4double)
void SetDecayTime (G4double)
void SetRMSMotherMoleculeDisplacement (G4double)
void SetDisplacementType (DisplacementType)
const G4StringGetName () const
G4int GetNbProducts () const
const G4MoleculeGetProduct (int) const
const std::vector< G4double > & GetRMSProductsDisplacement () const
G4double GetEnergy () const
G4double GetProbability () const
G4double GetDecayTime () const
G4double GetRMSMotherMoleculeDisplacement () const
DisplacementType GetDisplacementType () const


Detailed Description

Definition at line 55 of file G4MolecularDecayChannel.hh.


Constructor & Destructor Documentation

G4MolecularDecayChannel::G4MolecularDecayChannel (  ) 

Definition at line 65 of file G4MolecularDecayChannel.cc.

00066 {
00067     // pointer
00068     fProductsVector = 0;
00069     // double
00070     fReleasedEnergy = 0;
00071     fDecayTime      = 0;
00072     fProbability    = 0;
00073     fRMSMotherMoleculeDisplacement = 0;
00074     fDisplacementType = 0; // meaning no displacement cf G4VMolecularDisplacer
00075 }

G4MolecularDecayChannel::G4MolecularDecayChannel ( G4String   ) 

Definition at line 53 of file G4MolecularDecayChannel.cc.

00053                                                                : fName(aName)
00054 {
00055     //pointer
00056     fProductsVector = 0;
00057     //double
00058     fDecayTime      = 0;
00059     fProbability    = 0;
00060     fReleasedEnergy = 0;
00061     fRMSMotherMoleculeDisplacement = 0;
00062     fDisplacementType = 0; // meaning no displacement cf G4VMolecularDisplacer
00063 }

G4MolecularDecayChannel::~G4MolecularDecayChannel (  ) 

Definition at line 77 of file G4MolecularDecayChannel.cc.

00078 {
00079     if(fProductsVector)
00080     {
00081         fProductsVector->clear();
00082         delete fProductsVector;
00083     }
00084 }

G4MolecularDecayChannel::G4MolecularDecayChannel ( const G4MolecularDecayChannel  ) 

Definition at line 86 of file G4MolecularDecayChannel.cc.

00087 {
00088     *this = right;
00089 }


Member Function Documentation

void G4MolecularDecayChannel::AddProduct ( const G4Molecule ,
G4double  = 0 
)

Definition at line 118 of file G4MolecularDecayChannel.cc.

References G4MoleculeHandleManager::Instance().

Referenced by G4EmDNAPhysicsChemistry::ConstructDecayChannels().

00119 {
00120     if(!fProductsVector) fProductsVector = new vector<G4MoleculeHandle> ;
00121 
00122     G4MoleculeHandle molHandle(G4MoleculeHandleManager::Instance()->GetMoleculeHandle(molecule));
00123     fProductsVector->push_back(molHandle);
00124     fRMSProductsDisplacementVector.push_back(displacement);
00125 }

G4double G4MolecularDecayChannel::GetDecayTime (  )  const [inline]

Definition at line 158 of file G4MolecularDecayChannel.hh.

00159 {
00160     return fDecayTime;
00161 }

DisplacementType G4MolecularDecayChannel::GetDisplacementType (  )  const [inline]

Definition at line 173 of file G4MolecularDecayChannel.hh.

00174 {
00175     return fDisplacementType;
00176 }

G4double G4MolecularDecayChannel::GetEnergy (  )  const [inline]

Definition at line 147 of file G4MolecularDecayChannel.hh.

Referenced by G4DNAMolecularDecay::DecayIt().

00148 {
00149 
00150     return fReleasedEnergy;
00151 }

const G4String & G4MolecularDecayChannel::GetName (  )  const [inline]

Definition at line 137 of file G4MolecularDecayChannel.hh.

Referenced by G4DNAMolecularDecay::DecayIt().

00138 {
00139     return fName;
00140 }

G4int G4MolecularDecayChannel::GetNbProducts (  )  const

Definition at line 127 of file G4MolecularDecayChannel.cc.

Referenced by G4DNAMolecularDecay::DecayIt().

00128 {
00129     if(fProductsVector)
00130         return fProductsVector->size();
00131     return 0;
00132 }

G4double G4MolecularDecayChannel::GetProbability (  )  const [inline]

Definition at line 153 of file G4MolecularDecayChannel.hh.

Referenced by G4DNAMolecularDecay::DecayIt().

00154 {
00155     return fProbability;
00156 }

const G4Molecule * G4MolecularDecayChannel::GetProduct ( int   )  const

Definition at line 134 of file G4MolecularDecayChannel.cc.

Referenced by G4DNAMolecularDecay::DecayIt(), and G4DNAMolecularDecayDisplacer::GetProductsDisplacement().

00135 {
00136     if(fProductsVector)
00137         return ((*fProductsVector)[index]).get();
00138 
00139     return 0;
00140 }

G4double G4MolecularDecayChannel::GetRMSMotherMoleculeDisplacement (  )  const [inline]

Definition at line 163 of file G4MolecularDecayChannel.hh.

00164 {
00165     return fRMSMotherMoleculeDisplacement;
00166 }

const std::vector< G4double > & G4MolecularDecayChannel::GetRMSProductsDisplacement (  )  const [inline]

Definition at line 142 of file G4MolecularDecayChannel.hh.

00143 {
00144     return fRMSProductsDisplacementVector;
00145 }

G4double G4MolecularDecayChannel::GetRMSRadialDisplacementOfProduct ( const G4Molecule  ) 

Definition at line 142 of file G4MolecularDecayChannel.cc.

References DBL_MAX.

00143 {
00144     if(!fProductsVector) return -1.;
00145 
00146     G4int sz = fProductsVector->size();
00147     G4double value = DBL_MAX;
00148     for (G4int i=0; i<sz ; i++)
00149     {
00150         if(*product != *((*fProductsVector)[i]).get())
00151         {
00152             value = fRMSProductsDisplacementVector[i];
00153         }
00154     }
00155     return value;
00156 }

G4MolecularDecayChannel & G4MolecularDecayChannel::operator= ( const G4MolecularDecayChannel right  ) 

Definition at line 92 of file G4MolecularDecayChannel.cc.

References fName.

00093 {
00094     if (&right==this) return *this;
00095 
00096     // string
00097     fName = right.fName;
00098     //displacement type
00099     fDisplacementType = right.fDisplacementType;
00100     // pointer
00101     if(right.fProductsVector)
00102     {
00103         fProductsVector = new vector<G4MoleculeHandle>(*(right.fProductsVector));
00104     }
00105     else fProductsVector = 0;
00106 
00107     // double
00108     fReleasedEnergy = right.fReleasedEnergy;
00109     fDecayTime      = right.fDecayTime;
00110     fProbability    = right.fProbability;
00111     // vector
00112     fRMSMotherMoleculeDisplacement = right.fRMSMotherMoleculeDisplacement;
00113     fRMSProductsDisplacementVector = right.fRMSProductsDisplacementVector;
00114     return *this;
00115 
00116 }

void G4MolecularDecayChannel::SetDecayTime ( G4double   )  [inline]

Definition at line 126 of file G4MolecularDecayChannel.hh.

00127 {
00128 
00129     fDecayTime = value;
00130 }

void G4MolecularDecayChannel::SetDisplacementType ( DisplacementType   )  [inline]

Definition at line 168 of file G4MolecularDecayChannel.hh.

Referenced by G4EmDNAPhysicsChemistry::ConstructDecayChannels().

00169 {
00170     fDisplacementType = aDisplacementType;
00171 }

void G4MolecularDecayChannel::SetEnergy ( G4double   )  [inline]

Definition at line 115 of file G4MolecularDecayChannel.hh.

Referenced by G4EmDNAPhysicsChemistry::ConstructDecayChannels().

00116 {
00117     fReleasedEnergy = value;
00118 }

void G4MolecularDecayChannel::SetName ( const G4String  )  [inline]

Definition at line 110 of file G4MolecularDecayChannel.hh.

00111 {
00112     fName = value;
00113 }

void G4MolecularDecayChannel::SetProbability ( G4double   )  [inline]

Definition at line 121 of file G4MolecularDecayChannel.hh.

Referenced by G4EmDNAPhysicsChemistry::ConstructDecayChannels().

00122 {
00123     fProbability = value;
00124 }

void G4MolecularDecayChannel::SetRMSMotherMoleculeDisplacement ( G4double   )  [inline]

Definition at line 132 of file G4MolecularDecayChannel.hh.

00133 {
00134     fRMSMotherMoleculeDisplacement = value;
00135 }


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