Import Geant4 10.7.0.beta source tree
This commit is contained in:
@@ -58,8 +58,7 @@ G4QGSParticipants::G4QGSParticipants() : theDiffExcitaton(),
|
||||
SetPt2ofNuclearDestruction( 0.075*GeV*GeV );
|
||||
SetMaxPt2ofNuclearDestruction( 1.0*GeV*GeV );
|
||||
SetExcitationEnergyPerWoundedNucleon( 40.0*MeV );
|
||||
|
||||
sigmaPt=0.25*sqr(GeV);
|
||||
sigmaPt=0.0; // Uzhi June 2020 : sigmaPt=0.25*sqrt(GeV);
|
||||
}
|
||||
|
||||
G4QGSParticipants::G4QGSParticipants(const G4QGSParticipants &right)
|
||||
|
||||
@@ -45,12 +45,18 @@
|
||||
#include "G4VSplitableHadron.hh"
|
||||
#include "G4ExcitedString.hh"
|
||||
|
||||
#include "G4ParticleTable.hh" // Uzhi June 2020
|
||||
|
||||
#include "G4Log.hh"
|
||||
#include "G4Pow.hh"
|
||||
|
||||
//#define debugQuarkExchange
|
||||
|
||||
G4QuarkExchange::G4QuarkExchange(){}
|
||||
G4QuarkExchange::G4QuarkExchange()
|
||||
{
|
||||
StrangeSuppress = (1.0-0.04)/2.0; // Uzhi June 2020 : suppression of strange quark pair prodution,
|
||||
// i.e. u:d:s=1:1:0.04 . Need to be tuned!
|
||||
}
|
||||
|
||||
G4QuarkExchange::~G4QuarkExchange(){}
|
||||
|
||||
@@ -135,6 +141,8 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target) c
|
||||
if ( (absPDGcode == 321) || (absPDGcode == 311) ||
|
||||
( PDGcode == 130) || ( PDGcode == 310) ) { ProjectileDiffraction = G4UniformRand() <= 0.5; }
|
||||
|
||||
//G4cout<<"ProjectileDiffr "<<ProjectileDiffraction<<G4endl;
|
||||
|
||||
if ( ProjectileDiffraction ) {
|
||||
if ( absPDGcode > 1000 ) //------Projectile is baryon --------
|
||||
{
|
||||
@@ -354,12 +362,32 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target) c
|
||||
projectile->SplitUp();
|
||||
target->SplitUp();
|
||||
|
||||
G4Parton* PrQuark = projectile->GetNextParton();
|
||||
G4Parton* TrQuark = target->GetNextParton();
|
||||
G4Parton* PrQuark = nullptr;
|
||||
G4Parton* TrQuark = nullptr;
|
||||
|
||||
G4ParticleDefinition * Tmp = PrQuark->GetDefinition();
|
||||
PrQuark->SetDefinition(TrQuark->GetDefinition());
|
||||
TrQuark->SetDefinition(Tmp);
|
||||
if( projectile->GetDefinition()->GetBaryonNumber() >= 0 ) { // Uzhi June 2020
|
||||
// Quark exchange ----
|
||||
PrQuark = projectile->GetNextParton();
|
||||
TrQuark = target->GetNextParton();
|
||||
G4ParticleDefinition * Tmp = PrQuark->GetDefinition();
|
||||
PrQuark->SetDefinition(TrQuark->GetDefinition());
|
||||
TrQuark->SetDefinition(Tmp);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Quark exchage for projectile anti-baryon (annihilation and new Q pair creation ---
|
||||
// This part added by Uzhi June 2020
|
||||
PrQuark = projectile->GetNextAntiParton();
|
||||
TrQuark = target->GetNextParton();
|
||||
if( -PrQuark->GetDefinition()->GetPDGEncoding() == TrQuark->GetDefinition()->GetPDGEncoding() ){
|
||||
G4int QuarkCode = 1 + (int)(G4UniformRand()/StrangeSuppress);
|
||||
G4ParticleDefinition* AQpr = G4ParticleTable::GetParticleTable()->FindParticle(-QuarkCode);
|
||||
G4ParticleDefinition* Qtr = G4ParticleTable::GetParticleTable()->FindParticle( QuarkCode);
|
||||
if( (AQpr != nullptr) && (Qtr != nullptr) ) {
|
||||
PrQuark->SetDefinition(AQpr);
|
||||
TrQuark->SetDefinition( Qtr);
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user