81   if (
this == &rhs) 
return *
this; 
    93                                                 const G4Track& trackB,
    94                                                 const double currentStepTime,
    96                                                 bool userStepTimeLimit) 
   106         "You have to give a reaction model to the molecular reaction process");
   107     G4Exception(
"G4DNAMolecularReaction::TestReactibility",
   109                 exceptionDescription);
   115         "You have to give a reaction table to the molecular reaction process");
   116     G4Exception(
"G4DNAMolecularReaction::TestReactibility",
   118                 exceptionDescription);
   128   if (currentStepTime == 0.)
   130     userStepTimeLimit = 
false;
   140     G4cout << 
"\033[1;39;36m" << 
"G4MolecularReaction " << 
G4endl;
   143     << 
" real distance : " << 
G4BestUnit((trackA.GetPosition() - trackB.GetPosition()).mag(), 
"Length")
   144     << 
" calculated distance by model (= -1 if real distance > reaction radius and the user limitation step is not reached) : "   148     G4cout << 
"TrackID A : " << trackA.GetTrackID()
   149     << 
", TrackID B : " << trackB.GetTrackID()
   150     << 
" | MolA " << moleculeA->
GetName()
   151     << 
", MolB " << moleculeB->
GetName()
   154     G4cout << 
"--------------------------------------------" << 
G4endl;
   161                                                          const G4Track& trackB)
   175     G4cout << 
"G4DNAMolecularReaction::MakeReaction" << 
G4endl;
   176     G4cout<<
"TrackA n°" << trackA.GetTrackID()
   177     <<
"\t | Track B n°" << trackB.GetTrackID() << 
G4endl;
   179     G4cout<<
"Track A : Position : " << 
G4BestUnit(trackA.GetPosition(),
"Length")
   180     <<
"\t Global Time : " << 
G4BestUnit(trackA.GetGlobalTime(), 
"Time")<< G4endl;
   182     G4cout<<
"Track B : Position : " << 
G4BestUnit(trackB.GetPosition() ,
"Length")
   183     <<
"\t Global Time : " << 
G4BestUnit(trackB.GetGlobalTime(), 
"Time")<< G4endl;
   187     G4cout << 
"--------------------------------------------" << 
G4endl;
   203     G4ThreeVector reactionSite = sqrD1 / numerator * trackA.GetPosition()
   204         + sqrD2 / numerator * trackB.GetPosition();
   206     for (
G4int j = 0; j < nbProducts; j++)
   209       G4Track* productTrack = product->
BuildTrack(trackA.GetGlobalTime(),
   216       productTrack->SetTrackStatus(fAlive);
 
G4DNAMolecularReaction & operator=(const G4DNAMolecularReaction &other)
 
virtual G4bool TestReactibility(const G4Track &, const G4Track &, const double currentStepTime, const double previousStepTime, bool userStepTimeLimit)
 
virtual void Push(G4Track *track)
 
std::ostringstream G4ExceptionDescription
 
const G4String & GetName() const
 
ReturnType & reference_cast(OriginalType &source)
 
G4MolecularConfiguration * GetProduct(G4int i) const
 
static G4ITFinder * Instance()
 
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1 
 
const G4ITReactionTable * fpReactionTable
 
G4GLOB_DLL std::ostream G4cout
 
virtual ~G4DNAMolecularReaction()
 
void Initialize(const G4Track &, const G4Track &, G4VParticleChange *particleChangeA=0, G4VParticleChange *particleChangeB=0)
 
virtual G4double GetReactionRadius(G4MolecularConfiguration *, G4MolecularConfiguration *)=0
 
G4MolecularConfiguration * GetMolecularConfiguration() const
 
G4Molecule * GetMolecule(const G4Track &track)
 
const G4DNAMolecularReactionTable *& fMolReactionTable
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
G4Track * BuildTrack(G4double globalTime, const G4ThreeVector &Position)
 
G4int GetNbProducts() const
 
const G4DNAMolecularReactionData * GetReactionData(G4MolecularConfiguration *, G4MolecularConfiguration *) const
 
virtual G4bool FindReaction(const G4Track &, const G4Track &, const G4double, G4double &, const G4bool)=0
 
G4double GetDiffusionCoefficient() const
 
G4VDNAReactionModel * fReactionModel
 
G4ITReactionChange * fpChanges
 
virtual G4ITReactionChange * MakeReaction(const G4Track &, const G4Track &)
 
void AddSecondary(G4Track *aSecondary)