Import Geant4 0.1.0 source tree
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# $Id: GNUmakefile,v 1.1 1998/08/22 09:09:03 hpw Exp $
|
||||
# $Id: GNUmakefile,v 1.1 1999/01/07 16:12:13 gunter Exp $
|
||||
# -----------------------------------------------------------
|
||||
# GNUmakefile for hadronic library. Gabriele Cosmo, 18/9/96.
|
||||
# -----------------------------------------------------------
|
||||
|
||||
+5
-1
@@ -5,7 +5,7 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4DiffractiveExcitation.hh,v 1.3 1998/12/09 07:30:23 gunter Exp $
|
||||
// $Id: G4DiffractiveExcitation.hh,v 1.2 1999/04/12 15:45:54 hpw Exp $
|
||||
|
||||
#ifndef G4DiffractiveExcitation_h
|
||||
#define G4DiffractiveExcitation_h 1
|
||||
@@ -36,6 +36,10 @@ class G4DiffractiveExcitation
|
||||
|
||||
G4bool ExciteParticipants (G4VSplitableHadron *aPartner, G4VSplitableHadron * bPartner) const;
|
||||
G4ExcitedString * String(G4VSplitableHadron * aHadron, G4bool isProjectile) const;
|
||||
|
||||
// void SetPtWidth(G4double aValue) { widthOfPtSquare = aValue*aValue; }
|
||||
// void SetExtraMass(G4double aValue) { minExtraMass = aValue; }
|
||||
// void SetMinimumMass(G4double aValue) { minmass = aValue; }
|
||||
|
||||
|
||||
private:
|
||||
|
||||
+2
-2
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4EventGenerator.hh,v 1.1 1998/08/22 08:57:14 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4EventGenerator.hh,v 1.1 1999/01/07 16:12:13 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4EventGenerator_h
|
||||
#define G4EventGenerator_h 1
|
||||
|
||||
+2
-2
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4InteractionCode.hh,v 1.1 1998/08/22 08:57:15 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4InteractionCode.hh,v 1.1 1999/01/07 16:12:14 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4InteractionCode_h
|
||||
#define G4InteractionCode_h 1
|
||||
|
||||
+2
-2
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4InteractionContent.hh,v 1.2 1998/10/16 07:35:52 maxim Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4InteractionContent.hh,v 1.1 1999/01/07 16:12:14 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
|
||||
#ifndef G4InteractionContent_h
|
||||
|
||||
+11
-2
@@ -7,8 +7,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PomeronCrossSection.hh,v 1.4 1998/12/12 19:13:51 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4PomeronCrossSection.hh,v 1.2 1999/04/12 15:45:54 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#include "G4Proton.hh"
|
||||
#include "G4Neutron.hh"
|
||||
@@ -66,6 +66,15 @@ class G4PomeronCrossSection
|
||||
void Setgamma(const G4double agam); // temporary only! GF.
|
||||
G4double SoftEikonal(G4double s, G4double impactsquare);
|
||||
G4double HardEikonal(G4double s, G4double impactsquare);
|
||||
|
||||
void Pomeron_S(G4double apomeron_S){ pomeron_S = apomeron_S;}
|
||||
void Pomeron_Gamma(G4double apomeron_Gamma){ pomeron_Gamma = apomeron_Gamma;}
|
||||
void Pomeron_C(G4double apomeron_C){ pomeron_C = apomeron_C;}
|
||||
void Pomeron_Rsquare(G4double apomeron_Rsquare){ pomeron_Rsquare = apomeron_Rsquare;}
|
||||
void Pomeron_Alpha(G4double apomeron_Alpha){ pomeron_Alpha = apomeron_Alpha;}
|
||||
void Pomeron_Alphaprime(G4double apomeron_Alphaprime){ pomeron_Alphaprime = apomeron_Alphaprime;}
|
||||
void Pomeron_Gamma_Hard(G4double apomeron_Gamma_Hard){ pomeron_Gamma_Hard = apomeron_Gamma_Hard;}
|
||||
void Pomeron_Alpha_Hard(G4double apomeron_Alpha_Hard){ pomeron_Alpha_Hard = apomeron_Alpha_Hard;}
|
||||
|
||||
private:
|
||||
G4double PowerSoft(const G4double s);
|
||||
|
||||
@@ -5,14 +5,15 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4StringModel.hh,v 1.1 1998/08/22 08:57:16 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4StringModel.hh,v 1.2 1999/04/15 12:10:15 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4StringModel_h
|
||||
#define G4StringModel_h 1
|
||||
|
||||
#include "G4VHighEnergyGenerator.hh"
|
||||
#include "G4EventGenerator.hh"
|
||||
#include "G4KineticTrackVector.hh"
|
||||
class G4V3DNucleus;
|
||||
class G4VStringFragmentation;
|
||||
|
||||
|
||||
@@ -0,0 +1,80 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VParticipants.hh,v 1.1 1999/04/15 09:33:55 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
|
||||
#ifndef G4VParticipants_h
|
||||
#define G4VParticipants_h 1
|
||||
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// ---------------- G4VParticipants ----------------
|
||||
// by Gunter Folger, May 1998.
|
||||
// abstract class finding participants in a hadron Nucleus collision
|
||||
// in Parton String Models.
|
||||
// ------------------------------------------------------------
|
||||
#include "globals.hh"
|
||||
|
||||
class G4V3DNucleus;
|
||||
|
||||
#include "G4Fancy3DNucleus.hh"
|
||||
|
||||
|
||||
class G4VParticipants
|
||||
{
|
||||
|
||||
public:
|
||||
G4VParticipants();
|
||||
G4VParticipants(const G4VParticipants &right);
|
||||
virtual ~G4VParticipants();
|
||||
|
||||
const G4VParticipants & operator=(const G4VParticipants &right);
|
||||
int operator==(const G4VParticipants &right) const;
|
||||
int operator!=(const G4VParticipants &right) const;
|
||||
|
||||
void Init(G4double theZ, G4double theA);
|
||||
|
||||
void SetNucleus(G4V3DNucleus * aNucleus);
|
||||
G4V3DNucleus * GetWoundedNucleus() const;
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
|
||||
G4V3DNucleus *theNucleus;
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
// Class G4VParticipants
|
||||
|
||||
inline G4V3DNucleus * G4VParticipants::GetWoundedNucleus() const
|
||||
{
|
||||
return theNucleus;
|
||||
}
|
||||
|
||||
inline void G4VParticipants::SetNucleus(G4V3DNucleus * aNucleus)
|
||||
{
|
||||
theNucleus = aNucleus;
|
||||
}
|
||||
|
||||
inline void G4VParticipants::Init(G4double theA, G4double theZ)
|
||||
{
|
||||
if ( theNucleus == NULL ) theNucleus = new G4Fancy3DNucleus();
|
||||
theNucleus->Init(theA, theZ);
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
+3
-2
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VPartonStringModel.hh,v 1.2 1998/10/09 13:33:29 maxim Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4VPartonStringModel.hh,v 1.2 1999/04/15 12:10:15 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4VPartonStringModel_h
|
||||
#define G4VPartonStringModel_h 1
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "G4ExcitedStringVector.hh"
|
||||
#include "G4VStringFragmentation.hh"
|
||||
#include "G4V3DNucleus.hh"
|
||||
#include "G4KineticTrackVector.hh"
|
||||
|
||||
class G4VPartonStringModel : public G4VHighEnergyGenerator
|
||||
|
||||
|
||||
+131
@@ -0,0 +1,131 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VSplitableHadron.hh,v 1.1 1999/05/06 13:52:59 stesting Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
|
||||
#ifndef G4VSplitableHadron_h
|
||||
#define G4VSplitableHadron_h 1
|
||||
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// ---------------- G4VSplitableHadron----------------
|
||||
// by Gunter Folger, June 1998.
|
||||
// class storing an interacting particle. Used by Parton String Models.
|
||||
// ------------------------------------------------------------
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4ReactionProduct.hh"
|
||||
class G4Nucleon;
|
||||
#include "G4ThreeVector.hh"
|
||||
#include "G4LorentzVector.hh"
|
||||
class G4Parton;
|
||||
class G4VKineticNucleon;
|
||||
|
||||
#include <rw/tpordvec.h>
|
||||
|
||||
class G4VSplitableHadron
|
||||
{
|
||||
|
||||
public:
|
||||
G4VSplitableHadron();
|
||||
G4VSplitableHadron(const G4ReactionProduct & aPrimary);
|
||||
G4VSplitableHadron(const G4Nucleon & aNucleon);
|
||||
G4VSplitableHadron(const G4VKineticNucleon * aNucleon);
|
||||
|
||||
virtual ~G4VSplitableHadron();
|
||||
|
||||
|
||||
int operator==(const G4VSplitableHadron &right) const;
|
||||
int operator!=(const G4VSplitableHadron &right) const;
|
||||
|
||||
void Set4Momentum(const G4LorentzVector &a4Momentum);
|
||||
const G4LorentzVector & Get4Momentum() const;
|
||||
|
||||
void SetDefinition(G4ParticleDefinition *aDefinition);
|
||||
G4ParticleDefinition * GetDefinition() const;
|
||||
|
||||
void IncrementCollisionCount(G4int aCount);
|
||||
|
||||
void SetPosition(const G4ThreeVector &aPosition);
|
||||
const G4ThreeVector & GetPosition() const;
|
||||
|
||||
virtual void SplitUp() = 0;
|
||||
virtual G4Parton * GetNextParton() = 0 ;
|
||||
virtual G4Parton * GetNextAntiParton() = 0 ;
|
||||
|
||||
|
||||
protected:
|
||||
G4int GetSoftCollisionCount();
|
||||
|
||||
private:
|
||||
|
||||
G4VSplitableHadron(const G4VSplitableHadron &right);
|
||||
const G4VSplitableHadron & operator=(const G4VSplitableHadron &right);
|
||||
|
||||
private:
|
||||
|
||||
G4ParticleDefinition *theDefinition;
|
||||
|
||||
G4LorentzVector the4Momentum;
|
||||
|
||||
G4ThreeVector thePosition;
|
||||
G4int theCollisionCount;
|
||||
|
||||
};
|
||||
|
||||
inline G4int G4VSplitableHadron::GetSoftCollisionCount()
|
||||
{
|
||||
return theCollisionCount;
|
||||
}
|
||||
|
||||
inline void G4VSplitableHadron::Set4Momentum(const G4LorentzVector &a4Momentum)
|
||||
{
|
||||
the4Momentum=a4Momentum;
|
||||
}
|
||||
|
||||
inline const G4LorentzVector & G4VSplitableHadron::Get4Momentum() const
|
||||
{
|
||||
return the4Momentum;
|
||||
}
|
||||
|
||||
inline void G4VSplitableHadron::SetDefinition(G4ParticleDefinition *aDefinition)
|
||||
{
|
||||
theDefinition=aDefinition;
|
||||
}
|
||||
|
||||
inline G4ParticleDefinition * G4VSplitableHadron::GetDefinition() const
|
||||
{
|
||||
return theDefinition;
|
||||
}
|
||||
|
||||
inline void G4VSplitableHadron::IncrementCollisionCount(G4int aCount)
|
||||
{
|
||||
theCollisionCount += aCount;
|
||||
}
|
||||
|
||||
|
||||
inline void G4VSplitableHadron::SetPosition(const G4ThreeVector &aPosition)
|
||||
{
|
||||
thePosition=aPosition;
|
||||
}
|
||||
|
||||
inline const G4ThreeVector & G4VSplitableHadron::GetPosition() const
|
||||
{
|
||||
return thePosition;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VStringFragmentation.hh,v 1.1 1999/05/06 13:53:00 stesting Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4VStringFragmentation_h
|
||||
#define G4VStringFragmentation_h 1
|
||||
|
||||
#include "G4ExcitedString.hh"
|
||||
//GF#include "G4ReactionProductVector.hh"
|
||||
class G4KineticTrackVector;
|
||||
|
||||
class G4VStringFragmentation
|
||||
{
|
||||
public:
|
||||
G4VStringFragmentation();
|
||||
~G4VStringFragmentation();
|
||||
|
||||
private:
|
||||
G4VStringFragmentation(const G4VStringFragmentation &right);
|
||||
const G4VStringFragmentation & operator=(const G4VStringFragmentation &right);
|
||||
int operator==(const G4VStringFragmentation &right) const;
|
||||
int operator!=(const G4VStringFragmentation &right) const;
|
||||
|
||||
public:
|
||||
// virtual G4ReactionProductVector * FragmentString(const G4ExcitedString &theString)=0;
|
||||
virtual G4KineticTrackVector * FragmentString(const G4ExcitedString &theString)=0;
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VertexCode.hh,v 1.1 1998/08/22 08:57:18 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4VertexCode.hh,v 1.1 1999/01/07 16:12:15 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
#ifndef G4VertexCode_h
|
||||
#define G4VertexCode_h 1
|
||||
|
||||
+2
-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.11 1998/12/17 01:11:48 gcosmo Exp $
|
||||
// $Id: G4DiffractiveExcitation.cc,v 1.4 1999/04/15 15:35:55 hpw Exp $
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class implemetation file
|
||||
//
|
||||
@@ -262,6 +262,7 @@ G4double G4DiffractiveExcitation::ChooseX(G4double Xmin, G4double Xmax) const
|
||||
x=Xmin + G4UniformRand() * range;
|
||||
} while ( Xmin/x < G4UniformRand() );
|
||||
|
||||
//debug-hpw cout << "DiffractiveX "<<x<<endl;
|
||||
return x;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4EventGenerator.cc,v 1.1 1998/08/22 08:57:24 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4EventGenerator.cc,v 1.1 1999/01/07 16:12:15 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
// G4EventGenerator
|
||||
#include "G4EventGenerator.hh"
|
||||
|
||||
+2
-2
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4InteractionContent.cc,v 1.2 1998/10/08 16:20:37 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4InteractionContent.cc,v 1.1 1999/01/07 16:12:15 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
|
||||
+8
-5
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4PomeronCrossSection.cc,v 1.7 1998/12/10 08:58:23 maxim Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4PomeronCrossSection.cc,v 1.2 1999/04/12 15:45:57 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
|
||||
#include "G4PomeronCrossSection.hh"
|
||||
@@ -157,12 +157,15 @@ void G4PomeronCrossSection::Setgamma(const G4double agam)
|
||||
|
||||
void G4PomeronCrossSection::InitForNucleon()
|
||||
{
|
||||
pomeron_S= 3.0*GeV*GeV;
|
||||
// pomeron_S= 3.0*GeV*GeV;
|
||||
pomeron_S= 2.7*GeV*GeV;
|
||||
// pomeron_Gamma= 2.16/GeV/GeV;
|
||||
pomeron_Gamma= 3.96/GeV/GeV;
|
||||
// pomeron_Gamma= 3.96/GeV/GeV;
|
||||
pomeron_Gamma= (2.6+3.96)/GeV/GeV;
|
||||
pomeron_C= 1.4;
|
||||
pomeron_Rsquare= 3.56/GeV/GeV;
|
||||
pomeron_Alpha= 1.0808;
|
||||
// pomeron_Alpha= 1.0808;
|
||||
pomeron_Alpha= 0.9808;
|
||||
pomeron_Alphaprime= 0.25/GeV/GeV;
|
||||
pomeron_Gamma_Hard = 0.0002/GeV/GeV; // Note! if pomeron_Gamma_Hard != 0 to fit total pp-crosscection
|
||||
// pomeron_Gamma_Soft shold be 2.35/GeV/GeV
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4StringModel.cc,v 1.1 1998/08/22 08:57:25 hpw Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4StringModel.cc,v 1.1 1999/01/07 16:12:16 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
// G4StringModel
|
||||
#include "G4StringModel.hh"
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VParticipants.cc,v 1.1 1999/04/15 09:33:38 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// ---------------- G4VParticipants ----------------
|
||||
// by Gunter Folger, May 1998.
|
||||
// abstract class finding participants in a hadron Nucleus collision
|
||||
// in Parton String Models.
|
||||
// ------------------------------------------------------------
|
||||
|
||||
#include "G4VParticipants.hh"
|
||||
#include "Randomize.hh"
|
||||
|
||||
G4VParticipants::G4VParticipants() : theNucleus(NULL)
|
||||
{}
|
||||
|
||||
|
||||
|
||||
G4VParticipants::~G4VParticipants()
|
||||
{
|
||||
// G4cout << "G4VParticipants::~G4VParticipants()" << endl;
|
||||
if ( theNucleus != NULL ) delete theNucleus;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
+10
-6
@@ -5,8 +5,8 @@
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VPartonStringModel.cc,v 1.10 1998/12/16 14:59:13 gugu Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
// $Id: G4VPartonStringModel.cc,v 1.2 1999/04/15 09:32:43 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
//// ------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
@@ -103,6 +103,10 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
|
||||
// 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;
|
||||
|
||||
generatedKineticTracks=stringFragmentationModel->FragmentString(*strings->at(astring));
|
||||
|
||||
@@ -110,7 +114,7 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
|
||||
|
||||
if (generatedKineticTracks == NULL)
|
||||
{
|
||||
G4cout << "No KineticTracks produced" << endl;
|
||||
G4cout << "G4VPartonStringModel:No KineticTracks produced" << endl;
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -142,13 +146,13 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus
|
||||
// G4cout << " KTsum Momentum " << KTsum << endl;
|
||||
// G4cout << " KTsum Mass " << KTsum.mag() << endl;
|
||||
|
||||
if ( abs( KTsum1.e() - strings->at(astring)->Get4Momentum().e() ) > 1. )
|
||||
if ( abs( KTsum1.e() - strings->at(astring)->Get4Momentum().e() ) > 1. * MeV )
|
||||
{
|
||||
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<<"] Mass " << strings->at(astring)->Get4Momentum().mag() << endl;
|
||||
// G4cout <<" number of generated tracks : " << generatedKineticTracks->entries() << endl;
|
||||
// for ( G4int bTrack=0; bTrack<generatedKineticTracks->entries();bTrack++)
|
||||
// {
|
||||
// G4cout << " Particle : " <<
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VSplitableHadron.cc,v 1.1 1999/05/06 13:53:00 stesting Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
|
||||
// ------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD group
|
||||
// ---------------- G4VSplitableHadron----------------
|
||||
// by Gunter Folger, June 1998.
|
||||
// class storing an interacting particle. Used by Parton String Models.
|
||||
// ------------------------------------------------------------
|
||||
|
||||
#include "G4VSplitableHadron.hh"
|
||||
#include "G4Nucleon.hh"
|
||||
#include "G4VKineticNucleon.hh"
|
||||
|
||||
G4VSplitableHadron::G4VSplitableHadron()
|
||||
: theCollisionCount(0), theDefinition(NULL)
|
||||
{
|
||||
}
|
||||
|
||||
G4VSplitableHadron::G4VSplitableHadron(const G4ReactionProduct & aPrimary)
|
||||
: theCollisionCount(0)
|
||||
{
|
||||
theDefinition=aPrimary.GetDefinition();
|
||||
the4Momentum.setVect(aPrimary.GetMomentum());
|
||||
the4Momentum.setE(aPrimary.GetTotalEnergy());
|
||||
}
|
||||
|
||||
G4VSplitableHadron::G4VSplitableHadron(const G4Nucleon & aNucleon)
|
||||
{
|
||||
theCollisionCount=0;
|
||||
theDefinition=aNucleon.GetParticleType();
|
||||
the4Momentum=aNucleon.GetMomentum();
|
||||
thePosition=aNucleon.GetPosition();
|
||||
}
|
||||
|
||||
G4VSplitableHadron::G4VSplitableHadron(const G4VKineticNucleon * aNucleon)
|
||||
{
|
||||
theCollisionCount=0;
|
||||
theDefinition=aNucleon->GetDefinition();
|
||||
the4Momentum=aNucleon->Get4Momentum();
|
||||
thePosition=aNucleon->GetPosition();
|
||||
}
|
||||
|
||||
G4VSplitableHadron::G4VSplitableHadron(const G4VSplitableHadron &right)
|
||||
{
|
||||
theCollisionCount=0;
|
||||
theDefinition= right.GetDefinition();
|
||||
the4Momentum= right.Get4Momentum();
|
||||
thePosition= right.GetPosition();
|
||||
}
|
||||
|
||||
|
||||
G4VSplitableHadron::~G4VSplitableHadron()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
const G4VSplitableHadron & G4VSplitableHadron::operator=(const G4VSplitableHadron &right)
|
||||
{
|
||||
G4Exception("G4VSplitableHadron::operator= meant to not be accessable");
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
int G4VSplitableHadron::operator==(const G4VSplitableHadron &right) const
|
||||
{
|
||||
return this==&right;
|
||||
}
|
||||
|
||||
int G4VSplitableHadron::operator!=(const G4VSplitableHadron &right) const
|
||||
{
|
||||
return this!=&right;
|
||||
}
|
||||
|
||||
|
||||
void G4VSplitableHadron::SplitUp()
|
||||
{
|
||||
}
|
||||
+41
@@ -0,0 +1,41 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VStringFragmentation.cc,v 1.1 1999/05/06 13:53:01 stesting Exp $
|
||||
// GEANT4 tag $Name: geant4-00-01 $
|
||||
//
|
||||
// G4VStringFragmentation
|
||||
#include "G4VStringFragmentation.hh"
|
||||
|
||||
G4VStringFragmentation::G4VStringFragmentation()
|
||||
{
|
||||
}
|
||||
|
||||
G4VStringFragmentation::G4VStringFragmentation(const G4VStringFragmentation &right)
|
||||
{
|
||||
}
|
||||
|
||||
G4VStringFragmentation::~G4VStringFragmentation()
|
||||
{
|
||||
}
|
||||
|
||||
const G4VStringFragmentation & G4VStringFragmentation::operator=(const G4VStringFragmentation &right)
|
||||
{
|
||||
G4Exception("G4VStringFragmentation::operator= meant to not be accessable");
|
||||
return *this;
|
||||
}
|
||||
|
||||
int G4VStringFragmentation::operator==(const G4VStringFragmentation &right) const
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int G4VStringFragmentation::operator!=(const G4VStringFragmentation &right) const
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user