Import Geant4 10.3.0 source tree
This commit is contained in:
+195
-192
@@ -24,7 +24,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4FTFAnnihilation.cc 96766 2016-05-04 13:31:27Z gcosmo $
|
||||
// $Id: G4FTFAnnihilation.cc 100828 2016-11-02 15:25:59Z gcosmo $
|
||||
//
|
||||
|
||||
// ------------------------------------------------------------
|
||||
@@ -66,7 +66,8 @@
|
||||
//#include "G4ios.hh"
|
||||
//#include "UZHI_diffraction.hh"
|
||||
|
||||
#include "G4ParticleTable.hh" // Uzhi March 2016
|
||||
#include "G4ParticleTable.hh"
|
||||
|
||||
//============================================================================
|
||||
|
||||
//#define debugFTFannih
|
||||
@@ -89,7 +90,7 @@ G4bool G4FTFAnnihilation::Annihilate( G4VSplitableHadron* projectile,
|
||||
G4VSplitableHadron*& AdditionalString,
|
||||
G4FTFParameters* theParameters ) const {
|
||||
|
||||
//theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016 ??? for other Anti_bar annih.
|
||||
//theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016 ? for other Anti_bar annih.
|
||||
|
||||
#ifdef debugFTFannih
|
||||
G4cout << "---------------------------- Annihilation----------------" << G4endl;
|
||||
@@ -99,7 +100,7 @@ G4bool G4FTFAnnihilation::Annihilate( G4VSplitableHadron* projectile,
|
||||
G4LorentzVector Pprojectile = projectile->Get4Momentum();
|
||||
G4int ProjectilePDGcode = projectile->GetDefinition()->GetPDGEncoding();
|
||||
if ( ProjectilePDGcode > 0 ) {
|
||||
target->SetStatus( 3 ); // 2->3 Uzhi Oct 2014
|
||||
target->SetStatus( 3 ); // 2->3
|
||||
return false;
|
||||
}
|
||||
//G4double M0projectile = Pprojectile.mag();
|
||||
@@ -238,11 +239,12 @@ G4bool G4FTFAnnihilation::Annihilate( G4VSplitableHadron* projectile,
|
||||
#endif
|
||||
|
||||
G4double Xannihilation = X_a + X_b + X_c + X_d;
|
||||
//X_a=0.; // Uzhi
|
||||
//X_b=0.;
|
||||
//X_c=0.;
|
||||
//X_d=0.;
|
||||
//Xannihilation = X_a + X_b + X_c + X_d;
|
||||
|
||||
//X_a=0.0;
|
||||
//X_b=0.0;
|
||||
//X_c=0.0;
|
||||
//X_d=0.0;
|
||||
//Xannihilation = X_a + X_b + X_c + X_d;
|
||||
|
||||
// Projectile unpacking
|
||||
G4int AQ[3];
|
||||
@@ -287,40 +289,40 @@ G4bool G4FTFAnnihilation::Annihilate( G4VSplitableHadron* projectile,
|
||||
projectile->SetSecondParton( Q[0] );
|
||||
projectile->SetStatus( 0 );
|
||||
|
||||
// Uzhi March 2016 start
|
||||
G4int aAQ, aQ;
|
||||
aAQ=std::abs( AQ[0] ); aQ=std::abs( Q[0] );
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
G4int aAQ, aQ;
|
||||
aAQ = std::abs( AQ[0] ); aQ = std::abs( Q[0] );
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[0]; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[0]; }
|
||||
}
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[0];
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[0];
|
||||
}
|
||||
}
|
||||
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // Uzhi 2016 M+140 ??
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 ); // Uzhi 2016 M+140 ??
|
||||
// Uzhi March 2016 end
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // Uzhi 2016 M+140 ?
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 ); // Uzhi 2016 M+140 ?
|
||||
|
||||
//G4cout << "String 2 " << Q[1] << " " << AQ[1] << G4endl;
|
||||
target->SplitUp();
|
||||
@@ -328,68 +330,68 @@ theParameters->SetProjMinNonDiffMass( 0.5 ); // Uzhi 2016 M+140 ??
|
||||
target->SetSecondParton( AQ[1] );
|
||||
target->SetStatus( 0 );
|
||||
|
||||
// Uzhi March 2016 Start
|
||||
aAQ=std::abs( AQ[1] ); aQ=std::abs( Q[1] ); aKsi = G4UniformRand();
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[1]; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[1]; }
|
||||
}
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
target->SetDefinition( TestParticle );
|
||||
aAQ = std::abs( AQ[1] ); aQ = std::abs( Q[1] ); aKsi = G4UniformRand();
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[1];
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[1];
|
||||
}
|
||||
}
|
||||
|
||||
theParameters->SetTarMinDiffMass( 0.5 ); // Uzhi 2016 M+140 ??
|
||||
theParameters->SetTarMinNonDiffMass( 0.5 ); // Uzhi 2016 M+140 ??
|
||||
// Uzhi March 2016 end
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
target->SetDefinition( TestParticle );
|
||||
|
||||
theParameters->SetTarMinDiffMass( 0.5 ); // Uzhi 2016 M+140 ?
|
||||
theParameters->SetTarMinNonDiffMass( 0.5 ); // Uzhi 2016 M+140 ?
|
||||
|
||||
//G4cout << "String 3 " << AQ[2] << " " << Q[2] << G4endl;
|
||||
AdditionalString = new G4DiffractiveSplitableHadron();
|
||||
|
||||
// Uzhi March 2016 start
|
||||
aAQ=std::abs( AQ[2] ); aQ=std::abs( Q[2] ); aKsi = G4UniformRand();
|
||||
aAQ = std::abs( AQ[2] ); aQ = std::abs( Q[2] ); aKsi = G4UniformRand();
|
||||
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[2]; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[2]; }
|
||||
}
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/AQ[2];
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/Q[2];
|
||||
}
|
||||
}
|
||||
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
AdditionalString->SetDefinition( TestParticle );
|
||||
// Uzhi March 2016 end
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
AdditionalString->SetDefinition( TestParticle );
|
||||
|
||||
AdditionalString->SplitUp();
|
||||
AdditionalString->SetFirstParton( AQ[2] );
|
||||
@@ -643,7 +645,7 @@ AdditionalString->SetDefinition( TestParticle );
|
||||
AdditionalString->IncrementCollisionCount( 1 );
|
||||
target->IncrementCollisionCount( 1 );
|
||||
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 );
|
||||
|
||||
return true;
|
||||
|
||||
@@ -705,13 +707,13 @@ theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
projectile->SetFirstParton( DQ );
|
||||
projectile->SetSecondParton( Anti_DQ );
|
||||
projectile->SetStatus( 0 );
|
||||
target->SetStatus( 4 ); // The target nucleon has annihilated 3->4 Uzhi Oct 2014
|
||||
target->SetStatus( 4 ); // The target nucleon has annihilated 3->4
|
||||
Pprojectile.setPx( 0.0 );
|
||||
Pprojectile.setPy( 0.0 );
|
||||
Pprojectile.setPz( 0.0 );
|
||||
Pprojectile.setE( SqrtS );
|
||||
Pprojectile.transform( toLab );
|
||||
// Uzhi March 2016 if QQ_QQbar will interact Set Mmin, MdifMin
|
||||
// Uzhi March 2016 if QQ_QQbar will interact Set Mmin, MdifMin
|
||||
|
||||
// Calculation of the creation time
|
||||
projectile->SetTimeOfCreation( target->GetTimeOfCreation() );
|
||||
@@ -726,8 +728,8 @@ theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
projectile->IncrementCollisionCount( 1 );
|
||||
target->IncrementCollisionCount( 1 );
|
||||
|
||||
//theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
// In the case baryon and anti-baryon are created. Thus the antibaryon can annihilate latter.
|
||||
//theParameters->SetProbabilityOfAnnihilation( 0.0 );
|
||||
// In the case baryon and anti-baryon are created. Thus the antibaryon can annihilate later.
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -780,40 +782,40 @@ theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
projectile->SetSecondParton( LeftQ1 );
|
||||
projectile->SetStatus( 0 );
|
||||
|
||||
// Uzhi March 2016 start
|
||||
G4int aAQ, aQ;
|
||||
aAQ=std::abs( LeftAQ1 ); aQ=std::abs( LeftQ1 );
|
||||
G4int aAQ, aQ;
|
||||
aAQ = std::abs( LeftAQ1 ); aQ = std::abs( LeftQ1 );
|
||||
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ1; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ1; }
|
||||
}
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ1;
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ1;
|
||||
}
|
||||
}
|
||||
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // (0.5) // GeV Uzhi March 2016 ???
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
// Uzhi March 2016 end
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // (0.5) // GeV Uzhi March 2016 ?
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
|
||||
//G4cout << "String 2 " << LeftAQ2 << " " << LeftQ2 << G4endl;
|
||||
target->SplitUp();
|
||||
@@ -821,36 +823,36 @@ theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
target->SetSecondParton( LeftAQ2 );
|
||||
target->SetStatus( 0 );
|
||||
|
||||
// Uzhi March 2016 start
|
||||
aAQ=std::abs( LeftAQ2 ); aQ=std::abs( LeftQ2 ); aKsi = G4UniformRand();
|
||||
aAQ = std::abs( LeftAQ2 ); aQ = std::abs( LeftQ2 ); aKsi = G4UniformRand();
|
||||
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ2; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ2; }
|
||||
}
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ2;
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ2;
|
||||
}
|
||||
}
|
||||
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
target->SetDefinition( TestParticle );
|
||||
theParameters->SetTarMinDiffMass( 0.5 ); // Uzhi March 2016 ???
|
||||
theParameters->SetTarMinNonDiffMass( 0.5 );
|
||||
// Uzhi March 2016
|
||||
TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
target->SetDefinition( TestParticle );
|
||||
theParameters->SetTarMinDiffMass( 0.5 ); // Uzhi March 2016 ?
|
||||
theParameters->SetTarMinNonDiffMass( 0.5 );
|
||||
|
||||
// Sampling kinematical properties
|
||||
// 1 string LeftAQ1-LeftQ1// 2 string LeftAQ2-LeftQ2
|
||||
@@ -1034,7 +1036,7 @@ theParameters->SetTarMinNonDiffMass( 0.5 );
|
||||
projectile->IncrementCollisionCount( 1 );
|
||||
target->IncrementCollisionCount( 1 );
|
||||
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 );
|
||||
|
||||
return true;
|
||||
|
||||
@@ -1100,42 +1102,42 @@ theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
projectile->SetSecondParton( LeftAQ );
|
||||
projectile->SetStatus( 0 );
|
||||
|
||||
// Uzhi March 2016 start
|
||||
G4int aAQ, aQ;
|
||||
aAQ=std::abs( LeftAQ ); aQ=std::abs( LeftQ );
|
||||
G4int aAQ, aQ;
|
||||
aAQ = std::abs( LeftAQ ); aQ = std::abs( LeftQ );
|
||||
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
G4int NewCode;
|
||||
G4double aKsi = G4UniformRand();
|
||||
|
||||
if ( aAQ == aQ )
|
||||
{
|
||||
if ( aAQ != 3 )
|
||||
{
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 )
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
NewCode = 221; // Eta -meson
|
||||
if( aKsi < 0.5 ) {NewCode = 331;} // Eta'-meson
|
||||
}
|
||||
} else
|
||||
{
|
||||
if ( aAQ > aQ ){ NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ; }
|
||||
else { NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ; }
|
||||
}
|
||||
if ( aAQ == aQ ) {
|
||||
if ( aAQ != 3 ) {
|
||||
NewCode = 111; // Pi0-meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.25 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
NewCode = 221; // Eta -meson
|
||||
if ( aKsi < 0.5 ) {
|
||||
NewCode = 331; // Eta'-meson
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if ( aAQ > aQ ) {
|
||||
NewCode = aAQ*100 + aQ*10 + 1; NewCode *= aAQ/LeftAQ;
|
||||
} else {
|
||||
NewCode = aQ*100 + aAQ*10 + 1; NewCode *= aQ/LeftQ;
|
||||
}
|
||||
}
|
||||
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if(!TestParticle) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // (0.5) // GeV Uzhi March 2016
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
// Uzhi March 2016 end
|
||||
G4ParticleDefinition* TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewCode );
|
||||
if ( ! TestParticle ) return false;
|
||||
projectile->SetDefinition( TestParticle );
|
||||
theParameters->SetProjMinDiffMass( 0.5 ); // (0.5) // GeV Uzhi March 2016
|
||||
theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
|
||||
target->SetStatus( 4 ); // The target nucleon has annihilated 3->4 Uzhi Oct 2014
|
||||
target->SetStatus( 4 ); // The target nucleon has annihilated 3->4
|
||||
Pprojectile.setPx( 0.0 );
|
||||
Pprojectile.setPy( 0.0 );
|
||||
Pprojectile.setPz( 0.0 );
|
||||
@@ -1154,7 +1156,7 @@ theParameters->SetProjMinNonDiffMass( 0.5 );
|
||||
projectile->IncrementCollisionCount( 1 );
|
||||
target->IncrementCollisionCount( 1 );
|
||||
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 ); // Uzhi March 2016
|
||||
theParameters->SetProbabilityOfAnnihilation( 0.0 );
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -1237,3 +1239,4 @@ int G4FTFAnnihilation::operator!=( const G4FTFAnnihilation& ) const {
|
||||
throw G4HadronicException( __FILE__, __LINE__,
|
||||
"G4DiffractiveExcitation != operator not meant to be called" );
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user