Import Geant4 1.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-08 15:34:16 +02:00
parent ca1c8cb059
commit 103bda00c8
2654 changed files with 29719 additions and 20203 deletions
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4EventGenerator.hh,v 1.1.10.1 1999/12/07 20:51:51 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4EventGenerator_h
#define G4EventGenerator_h 1
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4InteractionCode.hh,v 1.1.10.1 1999/12/07 20:51:51 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4InteractionCode_h
#define G4InteractionCode_h 1
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4InteractionContent.hh,v 1.1.10.1 1999/12/07 20:51:51 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4InteractionContent_h
@@ -8,7 +8,7 @@
// and all its terms.
//
// $Id: G4PomeronCrossSection.hh,v 1.2.8.1 1999/12/07 20:51:51 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#include "G4Proton.hh"
#include "G4Neutron.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4StringModel.hh,v 1.2.8.1 1999/12/07 20:51:51 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4StringModel_h
#define G4StringModel_h 1
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VParticipants.hh,v 1.1.8.1 1999/12/07 20:51:52 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4VParticipants_h
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VPartonStringModel.hh,v 1.2.8.1 1999/12/07 20:51:52 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4VPartonStringModel_h
#define G4VPartonStringModel_h 1
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VSplitableHadron.hh,v 1.1.6.1.2.1 1999/12/07 20:51:53 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4VSplitableHadron_h
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VStringFragmentation.hh,v 1.1.8.1 1999/12/07 20:51:53 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4VStringFragmentation_h
#define G4VStringFragmentation_h 1
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VertexCode.hh,v 1.1.10.1 1999/12/07 20:51:53 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#ifndef G4VertexCode_h
#define G4VertexCode_h 1
@@ -5,7 +5,7 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4DiffractiveExcitation.cc,v 1.5.4.1 1999/12/07 20:51:53 gunter Exp $
// $Id: G4DiffractiveExcitation.cc,v 1.5.4.1.2.3 1999/12/10 15:42:06 gunter Exp $
// ------------------------------------------------------------
// GEANT 4 class implemetation file
//
@@ -47,7 +47,7 @@ G4bool G4DiffractiveExcitation::
G4LorentzVector Ptarget=target->Get4Momentum();
G4double Mtarget2=sqr(target->GetDefinition()->GetPDGMass() + minExtraMass);
// G4cout << "E proj, target :" << Pprojectile.e() << ", " <<
// Ptarget.e() << endl;
// Ptarget.e() << G4endl;
// Transform momenta to cms and then rotate parallel to z axis;
@@ -61,15 +61,15 @@ G4bool G4DiffractiveExcitation::
if ( Ptmp.pz() <= 0. )
{
// "String" moving backwards in CMS, abort collision !!
// G4cout << " abort Collision!! " << endl;
// G4cout << " abort Collision!! " << G4endl;
return false;
}
toCms.rotateZ(-1*Ptmp.phi());
toCms.rotateY(-1*Ptmp.theta());
// G4cout << "Pprojectile be4 boost " << Pprojectile << endl;
// G4cout << "Ptarget be4 boost : " << Ptarget << endl;
// G4cout << "Pprojectile be4 boost " << Pprojectile << G4endl;
// G4cout << "Ptarget be4 boost : " << Ptarget << G4endl;
@@ -78,14 +78,14 @@ G4bool G4DiffractiveExcitation::
Pprojectile.transform(toCms);
Ptarget.transform(toCms);
// G4cout << "Pprojectile aft boost : " << Pprojectile << endl;
// G4cout << "Ptarget aft boost : " << Ptarget << endl;
// G4cout << "cms aft boost : " << (Pprojectile+ Ptarget) << endl;
// G4cout << "Pprojectile aft boost : " << Pprojectile << G4endl;
// G4cout << "Ptarget aft boost : " << Ptarget << G4endl;
// G4cout << "cms aft boost : " << (Pprojectile+ Ptarget) << G4endl;
// G4cout << " Projectile Xplus / Xminus : " <<
// Pprojectile.plus() << " / " << Pprojectile.minus() << endl;
// Pprojectile.plus() << " / " << Pprojectile.minus() << G4endl;
// G4cout << " Target Xplus / Xminus : " <<
// Ptarget.plus() << " / " << Ptarget.minus() << endl;
// Ptarget.plus() << " / " << Ptarget.minus() << G4endl;
G4LorentzVector Qmomentum;
G4int whilecount=0;
@@ -96,18 +96,18 @@ G4bool G4DiffractiveExcitation::
if (whilecount++ >= 500 && (whilecount%100)==0)
// G4cout << "G4DiffractiveExcitation::ExciteParticipants possibly looping"
// << ", loop count/ maxPtSquare : "
// << whilecount << " / " << maxPtSquare << endl;
// << whilecount << " / " << maxPtSquare << G4endl;
if (whilecount > 1000 )
{
Qmomentum=0;
// G4cout << "G4DiffractiveExcitation::ExciteParticipants: Aborting loop!" << endl;
// G4cout << "G4DiffractiveExcitation::ExciteParticipants: Aborting loop!" << G4endl;
return false; // Ignore this interaction
}
Qmomentum=G4LorentzVector(GaussianPt(widthOfPtSquare,maxPtSquare),0);
// G4cout << "generated Pt " << Qmomentum << endl;
// G4cout << "Pprojectile with pt : " << Pprojectile+Qmomentum << endl;
// G4cout << "Ptarget with pt : " << Ptarget-Qmomentum << endl;
// G4cout << "generated Pt " << Qmomentum << G4endl;
// G4cout << "Pprojectile with pt : " << Pprojectile+Qmomentum << G4endl;
// G4cout << "Ptarget with pt : " << Ptarget-Qmomentum << G4endl;
// Momentum transfer
G4double Xmin = minmass / ( Pprojectile.e() + Ptarget.e() );
@@ -115,8 +115,8 @@ G4bool G4DiffractiveExcitation::
G4double Xplus =ChooseX(Xmin,Xmax);
G4double Xminus=ChooseX(Xmin,Xmax);
// G4cout << " X-plus " << Xplus << endl;
// G4cout << " X-minus " << Xminus << endl;
// G4cout << " X-plus " << Xplus << G4endl;
// G4cout << " X-minus " << Xminus << G4endl;
G4double pt2=G4ThreeVector(Qmomentum).mag2();
G4double Qplus =-1 * pt2 / Xminus/Ptarget.minus();
@@ -125,11 +125,11 @@ G4bool G4DiffractiveExcitation::
Qmomentum.setPz( (Qplus-Qminus)/2 );
Qmomentum.setE( (Qplus+Qminus)/2 );
// G4cout << "Qplus / Qminus " << Qplus << " / " << Qminus<<endl;
// G4cout << "pt2" << pt2 << endl;
// G4cout << "Qmomentum " << Qmomentum << endl;
// G4cout << "Qplus / Qminus " << Qplus << " / " << Qminus<<G4endl;
// G4cout << "pt2" << pt2 << G4endl;
// G4cout << "Qmomentum " << Qmomentum << G4endl;
// G4cout << " Masses (P/T) : " << (Pprojectile+Qmomentum).mag() <<
// " / " << (Ptarget-Qmomentum).mag() << endl;
// " / " << (Ptarget-Qmomentum).mag() << G4endl;
} while ( (Pprojectile+Qmomentum).mag2() <= Mprojectile2 ||
(Ptarget-Qmomentum).mag2() <= Mtarget2 );
@@ -137,25 +137,25 @@ G4bool G4DiffractiveExcitation::
Pprojectile += Qmomentum;
Ptarget -= Qmomentum;
// G4cout << "Pprojectile with Q : " << Pprojectile << endl;
// G4cout << "Ptarget with Q : " << Ptarget << endl;
// G4cout << "Pprojectile with Q : " << Pprojectile << G4endl;
// G4cout << "Ptarget with Q : " << Ptarget << G4endl;
// G4cout << "Projectile back: " << toLab * Pprojectile << endl;
// G4cout << "Target back: " << toLab * Ptarget << endl;
// G4cout << "Projectile back: " << toLab * Pprojectile << G4endl;
// G4cout << "Target back: " << toLab * Ptarget << G4endl;
// Transform back and update SplitableHadron Participant.
Pprojectile.transform(toLab);
Ptarget.transform(toLab);
// G4cout << "Target mass " << Ptarget.mag() << endl;
// G4cout << "Target mass " << Ptarget.mag() << G4endl;
target->Set4Momentum(Ptarget);
//
// G4cout << "Projectile mass " << Pprojectile.mag() << endl;
// G4cout << "Projectile mass " << Pprojectile.mag() << G4endl;
projectile->Set4Momentum(Pprojectile);
@@ -170,12 +170,12 @@ G4ExcitedString * G4DiffractiveExcitation::
hadron->SplitUp();
G4Parton *start= hadron->GetNextParton();
if ( start==NULL)
{ cout << " G4FTFModel::String() Error:No start parton found"<< endl;
{ G4cout << " G4FTFModel::String() Error:No start parton found"<< G4endl;
return NULL;
}
G4Parton *end = hadron->GetNextParton();
if ( end==NULL)
{ cout << " G4FTFModel::String() Error:No end parton found"<< endl;
{ G4cout << " G4FTFModel::String() Error:No end parton found"<< G4endl;
return NULL;
}
@@ -208,7 +208,7 @@ G4ExcitedString * G4DiffractiveExcitation::
G4double tm1=hadron->Get4Momentum().minus() +
( Pend.perp2()-Pstart.perp2() ) / hadron->Get4Momentum().plus();
G4double tm2= sqrt( max(0., sqr(tm1) -
G4double tm2= sqrt( G4std::max(0., sqr(tm1) -
4. * Pend.perp2() * hadron->Get4Momentum().minus()
/ hadron->Get4Momentum().plus() ));
@@ -230,11 +230,11 @@ G4ExcitedString * G4DiffractiveExcitation::
end->Set4Momentum(Pend);
#ifdef G4_FTFDEBUG
G4cout << " generated string flavors " << start->GetPDGcode() << " / " << end->GetPDGcode() << endl;
G4cout << " generated string momenta: quark " << start->Get4Momentum() << "mass : " <<start->Get4Momentum().mag()<< endl;
G4cout << " generated string momenta: Diquark " << end ->Get4Momentum() << "mass : " <<end->Get4Momentum().mag()<< endl;
G4cout << " sum of ends " << Pstart+Pend << endl;
G4cout << " Original " << hadron->Get4Momentum() << endl;
G4cout << " generated string flavors " << start->GetPDGcode() << " / " << end->GetPDGcode() << G4endl;
G4cout << " generated string momenta: quark " << start->Get4Momentum() << "mass : " <<start->Get4Momentum().mag()<< G4endl;
G4cout << " generated string momenta: Diquark " << end ->Get4Momentum() << "mass : " <<end->Get4Momentum().mag()<< G4endl;
G4cout << " sum of ends " << Pstart+Pend << G4endl;
G4cout << " Original " << hadron->Get4Momentum() << G4endl;
#endif
return string;
@@ -253,7 +253,7 @@ G4double G4DiffractiveExcitation::ChooseX(G4double Xmin, G4double Xmax) const
if ( Xmin <= 0. || range <=0. )
{
G4cout << " Xmin, range : " << Xmin << " , " << range << endl;
G4cout << " Xmin, range : " << Xmin << " , " << range << G4endl;
G4Exception("G4DiffractiveExcitation::ChooseX : Invalid arguments ");
}
@@ -262,7 +262,7 @@ G4double G4DiffractiveExcitation::ChooseX(G4double Xmin, G4double Xmax) const
x=Xmin + G4UniformRand() * range;
} while ( Xmin/x < G4UniformRand() );
//debug-hpw cout << "DiffractiveX "<<x<<endl;
//debug-hpw G4cout << "DiffractiveX "<<x<<G4endl;
return x;
}
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4EventGenerator.cc,v 1.1.10.1 1999/12/07 20:51:53 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
// G4EventGenerator
#include "G4EventGenerator.hh"
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4InteractionContent.cc,v 1.1.10.1 1999/12/07 20:51:54 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
// ------------------------------------------------------------
// GEANT 4 class implementation file
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4PomeronCrossSection.cc,v 1.2.8.1 1999/12/07 20:51:54 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
#include "G4PomeronCrossSection.hh"
@@ -5,7 +5,7 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4SingleDiffractiveExcitation.cc,v 1.3.4.1 1999/12/07 20:51:54 gunter Exp $
// $Id: G4SingleDiffractiveExcitation.cc,v 1.3.4.1.2.1 1999/12/08 17:34:43 gunter Exp $
// ------------------------------------------------------------
// GEANT 4 class implemetation file
//
@@ -47,17 +47,17 @@ G4bool G4SingleDiffractiveExcitation::
G4LorentzVector Ptarget=target->Get4Momentum();
G4double Mtarget2=sqr(target->GetDefinition()->GetPDGMass() + minExtraMass);
// G4cout << "E proj, target :" << Pprojectile.e() << ", " <<
// Ptarget.e() << endl;
// Ptarget.e() << G4endl;
G4bool KeepProjectile= G4UniformRand() > 0.5;
// reset the min.mass of the non diffractive particle to its value, ( minus a bit for rounding...)
if ( KeepProjectile )
{
// cout << " Projectile fix" << endl;
// cout << " Projectile fix" << G4endl;
Mprojectile2 = sqr(projectile->GetDefinition()->GetPDGMass() * (1-perCent) );
} else {
// cout << " Target fix" << endl;
// cout << " Target fix" << G4endl;
Mtarget2=sqr(target->GetDefinition()->GetPDGMass() * (1-perCent) );
}
@@ -73,15 +73,15 @@ G4bool G4SingleDiffractiveExcitation::
if ( Ptmp.pz() <= 0. )
{
// "String" moving backwards in CMS, abort collision !!
// G4cout << " abort Collision!! " << endl;
// G4cout << " abort Collision!! " << G4endl;
return false;
}
toCms.rotateZ(-1*Ptmp.phi());
toCms.rotateY(-1*Ptmp.theta());
// G4cout << "Pprojectile be4 boost " << Pprojectile << endl;
// G4cout << "Ptarget be4 boost : " << Ptarget << endl;
// G4cout << "Pprojectile be4 boost " << Pprojectile << G4endl;
// G4cout << "Ptarget be4 boost : " << Ptarget << G4endl;
@@ -99,11 +99,11 @@ G4bool G4SingleDiffractiveExcitation::
if (whilecount++ >= 500 && (whilecount%100)==0)
// G4cout << "G4SingleDiffractiveExcitation::ExciteParticipants possibly looping"
// << ", loop count/ maxPtSquare : "
// << whilecount << " / " << maxPtSquare << endl;
// << whilecount << " / " << maxPtSquare << G4endl;
if (whilecount > 1000 )
{
Qmomentum=0;
// G4cout << "G4SingleDiffractiveExcitation::ExciteParticipants: Aborting loop!" << endl;
// G4cout << "G4SingleDiffractiveExcitation::ExciteParticipants: Aborting loop!" << G4endl;
return false; // Ignore this interaction
}
Qmomentum=G4LorentzVector(GaussianPt(widthOfPtSquare,maxPtSquare),0);
@@ -134,11 +134,11 @@ G4bool G4SingleDiffractiveExcitation::
Qmomentum.setPz( (Qplus-Qminus)/2 );
Qmomentum.setE( (Qplus+Qminus)/2 );
// G4cout << "Qplus / Qminus " << Qplus << " / " << Qminus<<endl;
// G4cout << "pt2 " << pt2 << endl;
// G4cout << "Qmomentum " << Qmomentum << endl;
// G4cout << "Qplus / Qminus " << Qplus << " / " << Qminus<<G4endl;
// G4cout << "pt2 " << pt2 << G4endl;
// G4cout << "Qmomentum " << Qmomentum << G4endl;
// G4cout << " Masses (P/T) : " << (Pprojectile+Qmomentum).mag() <<
// " / " << (Ptarget-Qmomentum).mag() << endl;
// " / " << (Ptarget-Qmomentum).mag() << G4endl;
} while ( (Ptarget-Qmomentum).mag2() <= Mtarget2
|| (Pprojectile+Qmomentum).mag2() <= Mprojectile2
@@ -152,24 +152,24 @@ G4bool G4SingleDiffractiveExcitation::
Ptarget -= Qmomentum;
// G4cout << "Pprojectile.e() : " << Pprojectile.e() << endl;
// G4cout << "Ptarget.e() : " << Ptarget.e() << endl;
// G4cout << "Pprojectile.e() : " << Pprojectile.e() << G4endl;
// G4cout << "Ptarget.e() : " << Ptarget.e() << G4endl;
// G4cout << "end event_______________________________________________"<<endl;
// G4cout << "end event_______________________________________________"<<G4endl;
//
// G4cout << "Pprojectile with Q : " << Pprojectile << endl;
// G4cout << "Ptarget with Q : " << Ptarget << endl;
// G4cout << "Projectile back: " << toLab * Pprojectile << endl;
// G4cout << "Target back: " << toLab * Ptarget << endl;
// G4cout << "Pprojectile with Q : " << Pprojectile << G4endl;
// G4cout << "Ptarget with Q : " << Ptarget << G4endl;
// G4cout << "Projectile back: " << toLab * Pprojectile << G4endl;
// G4cout << "Target back: " << toLab * Ptarget << G4endl;
// Transform back and update SplitableHadron Participant.
Pprojectile.transform(toLab);
Ptarget.transform(toLab);
// G4cout << "Target mass " << Ptarget.mag() << endl;
// G4cout << "Projectile mass " << Pprojectile.mag() << endl;
// G4cout << "Target mass " << Ptarget.mag() << G4endl;
// G4cout << "Projectile mass " << Pprojectile.mag() << G4endl;
target->Set4Momentum(Ptarget);
projectile->Set4Momentum(Pprojectile);
@@ -193,7 +193,7 @@ G4double G4SingleDiffractiveExcitation::ChooseX(G4double Xmin, G4double Xmax) co
if ( Xmin <= 0. || range <=0. )
{
G4cout << " Xmin, range : " << Xmin << " , " << range << endl;
G4cout << " Xmin, range : " << Xmin << " , " << range << G4endl;
G4Exception("G4SingleDiffractiveExcitation::ChooseX : Invalid arguments ");
}
@@ -202,7 +202,7 @@ G4double G4SingleDiffractiveExcitation::ChooseX(G4double Xmin, G4double Xmax) co
x=Xmin + G4UniformRand() * range;
} while ( Xmin/x < G4UniformRand() );
// cout << "DiffractiveX "<<x<<endl;
// cout << "DiffractiveX "<<x<<G4endl;
return x;
}
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4StringModel.cc,v 1.1.10.1 1999/12/07 20:51:54 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
// G4StringModel
#include "G4StringModel.hh"
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VParticipants.cc,v 1.1.8.1 1999/12/07 20:51:54 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// $Id: G4VParticipants.cc,v 1.1.8.1.2.1 1999/12/08 17:34:43 gunter Exp $
// GEANT4 tag $Name: geant4-01-01 $
//
// ------------------------------------------------------------
// GEANT 4 class implementation file
@@ -29,7 +29,7 @@ G4VParticipants::G4VParticipants() : theNucleus(NULL)
G4VParticipants::~G4VParticipants()
{
// G4cout << "G4VParticipants::~G4VParticipants()" << endl;
// G4cout << "G4VParticipants::~G4VParticipants()" << G4endl;
if ( theNucleus != NULL ) delete theNucleus;
}
@@ -5,8 +5,8 @@
// based on the Program) you indicate your acceptance of this statement,
// and all its terms.
//
// $Id: G4VPartonStringModel.cc,v 1.4.4.1 1999/12/07 20:51:55 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// $Id: G4VPartonStringModel.cc,v 1.4.4.1.2.2 1999/12/09 17:37:01 gcosmo Exp $
// GEANT4 tag $Name: geant4-01-01 $
//
//// ------------------------------------------------------------
// GEANT 4 class implementation file
@@ -86,7 +86,7 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
strings = GetStrings();
}
// G4cout << "Number of strings " << strings->entries() << endl << endl;
// G4cout << "Number of strings " << strings->entries() << G4endl << G4endl;
G4KineticTrackVector * theResult = new G4KineticTrackVector;
@@ -101,13 +101,13 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
KTsum+= strings->at(astring)->Get4Momentum();
G4KineticTrackVector * generatedKineticTracks = NULL;
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << endl;
// G4cout << " strings["<<astring<<"] Position " << strings->at(astring)->GetPosition() << endl;
// G4cout << "Parton Left " << strings->at(astring)->GetLeftParton()->Get4Momentum() << endl;
// G4cout << " code " << strings->at(astring)->GetLeftParton()->GetPDGcode()<< endl;
// G4cout << "Parton Right " << strings->at(astring)->GetRightParton()->Get4Momentum() << endl;
// G4cout << " code " << strings->at(astring)->GetRightParton()->GetPDGcode()<< endl;
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << G4endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << G4endl;
// G4cout << " strings["<<astring<<"] Position " << strings->at(astring)->GetPosition() << G4endl;
// G4cout << "Parton Left " << strings->at(astring)->GetLeftParton()->Get4Momentum() << G4endl;
// G4cout << " code " << strings->at(astring)->GetLeftParton()->GetPDGcode()<< G4endl;
// G4cout << "Parton Right " << strings->at(astring)->GetRightParton()->Get4Momentum() << G4endl;
// G4cout << " code " << strings->at(astring)->GetRightParton()->GetPDGcode()<< G4endl;
if ( strings->at(astring)->IsExcited() )
{
@@ -117,21 +117,21 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
generatedKineticTracks->insert(strings->at(astring)->GetKineticTrack());
}
// G4cout <<" number of generated tracks : " << generatedKineticTracks->entries() << endl;
// G4cout <<" number of generated tracks : " << generatedKineticTracks->entries() << G4endl;
if (generatedKineticTracks == NULL)
{
G4cout << "G4VPartonStringModel:No KineticTracks produced" << endl;
G4cout << "G4VPartonStringModel:No KineticTracks produced" << G4endl;
continue;
}
// if ( generatedKineticTracks->entries() == 1 )
// {
// G4cout << " Only one track created, mass "
// << generatedKineticTracks->at(0)->Get4Momentum().mag() << endl;
// << generatedKineticTracks->at(0)->Get4Momentum().mag() << G4endl;
//
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << endl;
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << G4endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << G4endl;
//
// }
G4LorentzVector KTsum1;
@@ -143,34 +143,34 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
// G4cout << " Momentum/ Mass " <<
// (*generatedKineticTracks)[aTrack]->Get4Momentum() <<
// " / " << (*generatedKineticTracks)[aTrack]->Get4Momentum().mag()
// << endl;
// << G4endl;
// G4cout << " Position " <<
// (*generatedKineticTracks)[aTrack]->GetPosition()
// << endl;
// << G4endl;
}
// G4cout << " KTsum Momentum " << KTsum << endl;
// G4cout << " KTsum Mass " << KTsum.mag() << endl;
// G4cout << " KTsum Momentum " << KTsum << G4endl;
// G4cout << " KTsum Mass " << KTsum.mag() << G4endl;
if ( abs((KTsum1.e()-strings->at(astring)->Get4Momentum().e()) / KTsum1.e()) > perMillion )
{
NeedEnergyCorrector=true;
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << endl;
// G4cout <<" number of generated tracks : " << generatedKineticTracks->entries() << endl;
// G4cout << " strings["<<astring<<"] Momentum " << strings->at(astring)->Get4Momentum() << G4endl;
// G4cout << " strings["<<astring<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << G4endl;
// G4cout <<" number of generated tracks : " << generatedKineticTracks->entries() << G4endl;
// for ( G4int bTrack=0; bTrack<generatedKineticTracks->entries();bTrack++)
// {
// G4cout << " Particle : " <<
// (*generatedKineticTracks)[bTrack]->GetDefinition()->GetParticleName()
// << endl;
// << G4endl;
// G4cout << " Momentum " <<
// (*generatedKineticTracks)[bTrack]->Get4Momentum()
// << endl;
// << G4endl;
// G4cout << " Mass " <<
// (*generatedKineticTracks)[bTrack]->Get4Momentum().mag()
// << endl;
// << G4endl;
// }
//
}
@@ -236,8 +236,8 @@ G4bool G4VPartonStringModel::EnergyAndMomentumCorrector(G4KineticTrackVector* Ou
if (Scale - 1 <= ErrLimit) goto LTRUE;
}
cout << "G4VPartonStringModel::EnergyAndMomentumCorrector"<<endl;
cout << " Increase number of attempts or increase ERRLIMIT"<<endl;
G4cout << "G4VPartonStringModel::EnergyAndMomentumCorrector"<<G4endl;
G4cout << " Increase number of attempts or increase ERRLIMIT"<<G4endl;
LTRUE:
// Compute c.m.s. interaction velocity and KTV back boost
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VSplitableHadron.cc,v 1.1.8.1 1999/12/07 20:51:55 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
// ------------------------------------------------------------
@@ -6,7 +6,7 @@
// and all its terms.
//
// $Id: G4VStringFragmentation.cc,v 1.1.8.1 1999/12/07 20:51:55 gunter Exp $
// GEANT4 tag $Name: geant4-01-00 $
// GEANT4 tag $Name: geant4-01-01 $
//
// G4VStringFragmentation
#include "G4VStringFragmentation.hh"