G4XResonance Class Reference

#include <G4XResonance.hh>

Inheritance diagram for G4XResonance:

G4VXResonance G4VCrossSectionSource

Public Member Functions

 G4XResonance (const G4ParticleDefinition *in1, const G4ParticleDefinition *in2, G4int iIsospinOut1, G4double iSpinOut1, G4double massOut1, G4int iIsospinOut2, G4double iSpinOut2, G4double massOut2, G4String subType1, G4String subType2, const G4VXResonanceTable &sigmaTable)
virtual ~G4XResonance ()
G4bool operator== (const G4XResonance &right) const
G4bool operator!= (const G4XResonance &right) const
virtual G4double CrossSection (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
virtual const G4CrossSectionVectorGetComponents () const
virtual G4String Name () const

Detailed Description

Definition at line 39 of file G4XResonance.hh.


Constructor & Destructor Documentation

G4XResonance::G4XResonance ( const G4ParticleDefinition in1,
const G4ParticleDefinition in2,
G4int  iIsospinOut1,
G4double  iSpinOut1,
G4double  massOut1,
G4int  iIsospinOut2,
G4double  iSpinOut2,
G4double  massOut2,
G4String  subType1,
G4String  subType2,
const G4VXResonanceTable sigmaTable 
)

Definition at line 35 of file G4XResonance.cc.

References G4VXResonanceTable::CrossSectionTable(), and G4ParticleDefinition::GetParticleName().

00040                                                                  : 
00041   isoOut1(iIsospinOut1), iSpinOut1(spinOut1), mOut1(massOut1),
00042   isoOut2(iIsospinOut2), iSpinOut2(spinOut2), mOut2(massOut2)
00043   
00044 {
00045   table = sigmaTable.CrossSectionTable();
00046   // Check if there is a valid cross section table for this channel
00047   if (table == 0)
00048     throw G4HadronicException(__FILE__, __LINE__, "G4XResonance::G4XResonance - no cross section table available");
00049   
00050   name = in1->GetParticleName() + in2->GetParticleName() + " -> " + subType1 + subType2;
00051 }

G4XResonance::~G4XResonance (  )  [virtual]

Definition at line 54 of file G4XResonance.cc.

00055 { 
00056   delete table;
00057   table = 0;
00058 }


Member Function Documentation

G4double G4XResonance::CrossSection ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const [virtual]

Implements G4VCrossSectionSource.

Definition at line 78 of file G4XResonance.cc.

References G4VXResonance::DetailedBalance(), G4KineticTrack::Get4Momentum(), G4KineticTrack::GetDefinition(), G4PhysicsVector::GetValue(), G4VXResonance::IsospinCorrection(), and G4ParticleDefinition::IsShortLived().

00079 {
00080   G4bool dummy = false;
00081   G4double sqrtS = (trk1.Get4Momentum() + trk2.Get4Momentum()).mag();
00082 
00083   // pp -> trk1 + trk2 cross section
00084   G4double sigma = table->GetValue(sqrtS,dummy);
00085   
00086   // Isospin correction
00087   // from G4VXResonance; 
00088 //   G4cout << "SigmaCheck "<<sigma;
00089   sigma *= IsospinCorrection(trk1,trk2,isoOut1,isoOut2,iSpinOut1,iSpinOut2); // from G4VXResonance
00090 //   G4cout << " "<<sigma<<G4endl;
00091 
00092   // Detailed balance
00093   if (trk1.GetDefinition()->IsShortLived() || trk2.GetDefinition()->IsShortLived())
00094   {
00095    sigma *= DetailedBalance(trk1,trk2, isoOut1,isoOut2, iSpinOut1,iSpinOut2, mOut1,mOut2); 
00096   }
00097 
00098   return sigma;
00099 
00100 }

virtual const G4CrossSectionVector* G4XResonance::GetComponents (  )  const [inline, virtual]

Implements G4VCrossSectionSource.

Definition at line 59 of file G4XResonance.hh.

00059 { return 0; }

G4String G4XResonance::Name (  )  const [virtual]

Implements G4VCrossSectionSource.

Definition at line 73 of file G4XResonance.cc.

00074 {
00075   return name;
00076 }

G4bool G4XResonance::operator!= ( const G4XResonance right  )  const

Definition at line 67 of file G4XResonance.cc.

00068 {
00069   return (this != (G4XResonance *) &right);
00070 }

G4bool G4XResonance::operator== ( const G4XResonance right  )  const

Definition at line 61 of file G4XResonance.cc.

00062 {
00063   return (this == (G4XResonance *) &right);
00064 }


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