Import Geant4 10.1.0 source tree
This commit is contained in:
@@ -13,6 +13,19 @@ code and to keep track of all tags.
|
||||
* Please list in reverse chronological order (last date on top)
|
||||
---------------------------------------------------------------
|
||||
|
||||
09 September 2014 Witek Pokorski (hadr-qmd-V10-00-03)
|
||||
- update to use G4CrossSectionDataSetRegistry
|
||||
|
||||
04 September 2014 Witek Pokorski (hadr-qmd-V10-00-02)
|
||||
- Commenting out obsolete include of a cross section header file.
|
||||
|
||||
14 April 2014 Gunter Folger (hadr-qmd-V10-00-01)
|
||||
- Changes for const G4ParticleDefintion* in use with G4KineticTrack.
|
||||
|
||||
14 March 2014 Tatsumi Koi (hadr-qmd-V10-00-00)
|
||||
-Migrate to handle returned const pointer of G4ParticleDefinition
|
||||
src/G4QMDReaction.cc
|
||||
|
||||
15 October 2013 Tatsumi Koi (hadr-qmd-V09-06-10)
|
||||
-Change G4ParticleTable::GetParticleTable()->GetIon(,,)
|
||||
to G4IonTable::GetIonTable()->GetIon(,,);
|
||||
|
||||
@@ -49,11 +49,11 @@ class G4QMDParticipant
|
||||
{
|
||||
public:
|
||||
// momentum position
|
||||
G4QMDParticipant( G4ParticleDefinition* , G4ThreeVector , G4ThreeVector );
|
||||
G4QMDParticipant( const G4ParticleDefinition* , G4ThreeVector , G4ThreeVector );
|
||||
~G4QMDParticipant();
|
||||
|
||||
void SetDefinition( G4ParticleDefinition* pd ) { definition = pd; };
|
||||
G4ParticleDefinition* GetDefinition() { return definition; };
|
||||
void SetDefinition( const G4ParticleDefinition* pd ) { definition = pd; };
|
||||
const G4ParticleDefinition* GetDefinition() { return definition; };
|
||||
|
||||
void SetPosition( G4ThreeVector r ) { position = r; };
|
||||
G4ThreeVector GetPosition() { return position; };
|
||||
@@ -83,7 +83,7 @@ class G4QMDParticipant
|
||||
G4bool IsThisTarget() { return target; }
|
||||
|
||||
private:
|
||||
G4ParticleDefinition* definition;
|
||||
const G4ParticleDefinition* definition;
|
||||
G4ThreeVector momentum;
|
||||
G4ThreeVector position;
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
#include "G4QMDParticipant.hh"
|
||||
|
||||
#include "G4IonsShenCrossSection.hh"
|
||||
#include "G4GeneralSpaceNNCrossSection.hh"
|
||||
//#include "G4GeneralSpaceNNCrossSection.hh"
|
||||
#include "G4PiNuclearCrossSection.hh"
|
||||
|
||||
#include "G4HadronicInteraction.hh"
|
||||
@@ -106,7 +106,7 @@ class G4QMDReaction : public G4HadronicInteraction
|
||||
// b pd_proj pd_targ z_p a_p z_t a_t plab elab
|
||||
// G4double offSetOfCollision( G4double , G4ParticleDefinition* , G4ParticleDefinition* , G4int , G4int , G4int , G4int , G4double , G4double );
|
||||
// b pd_proj pd_targ plab elab bmax boostToCM
|
||||
void calcOffSetOfCollision( G4double , G4ParticleDefinition* , G4ParticleDefinition* , G4double , G4double , G4double , G4ThreeVector );
|
||||
void calcOffSetOfCollision( G4double , const G4ParticleDefinition* , const G4ParticleDefinition* , G4double , G4double , G4double , G4ThreeVector );
|
||||
G4double coulomb_collision_gamma_proj;
|
||||
G4double coulomb_collision_rx_proj;
|
||||
G4double coulomb_collision_rz_proj;
|
||||
|
||||
@@ -139,7 +139,7 @@ void G4QMDCollision::CalKinematicsOfBinaryCollisions( G4double dt )
|
||||
|
||||
G4bool decayed = false;
|
||||
|
||||
G4ParticleDefinition* pd0 = theSystem->GetParticipant( i )->GetDefinition();
|
||||
const G4ParticleDefinition* pd0 = theSystem->GetParticipant( i )->GetDefinition();
|
||||
G4ThreeVector p0 = theSystem->GetParticipant( i )->GetMomentum();
|
||||
G4ThreeVector r0 = theSystem->GetParticipant( i )->GetPosition();
|
||||
|
||||
@@ -318,7 +318,7 @@ void G4QMDCollision::CalKinematicsOfBinaryCollisions( G4double dt )
|
||||
G4ThreeVector ri = theSystem->GetParticipant( i )->GetPosition();
|
||||
G4LorentzVector p4i = theSystem->GetParticipant( i )->Get4Momentum();
|
||||
G4double rmi = theSystem->GetParticipant( i )->GetMass();
|
||||
G4ParticleDefinition* pdi = theSystem->GetParticipant( i )->GetDefinition();
|
||||
const G4ParticleDefinition* pdi = theSystem->GetParticipant( i )->GetDefinition();
|
||||
//090331 gamma
|
||||
if ( pdi->GetPDGMass() == 0.0 ) continue;
|
||||
|
||||
@@ -355,7 +355,7 @@ void G4QMDCollision::CalKinematicsOfBinaryCollisions( G4double dt )
|
||||
G4ThreeVector rj = theSystem->GetParticipant( j )->GetPosition();
|
||||
G4LorentzVector p4j = theSystem->GetParticipant( j )->Get4Momentum();
|
||||
G4double rmj = theSystem->GetParticipant( j )->GetMass();
|
||||
G4ParticleDefinition* pdj = theSystem->GetParticipant( j )->GetDefinition();
|
||||
const G4ParticleDefinition* pdj = theSystem->GetParticipant( j )->GetDefinition();
|
||||
//090331 gamma
|
||||
if ( pdj->GetPDGMass() == 0.0 ) continue;
|
||||
|
||||
@@ -573,8 +573,8 @@ G4bool G4QMDCollision::CalFinalStateOfTheBinaryCollision( G4int i , G4int j )
|
||||
|
||||
//071031
|
||||
// will use KineticTrack
|
||||
G4ParticleDefinition* pdi0 =theSystem->GetParticipant( i )->GetDefinition();
|
||||
G4ParticleDefinition* pdj0 =theSystem->GetParticipant( j )->GetDefinition();
|
||||
const G4ParticleDefinition* pdi0 =theSystem->GetParticipant( i )->GetDefinition();
|
||||
const G4ParticleDefinition* pdj0 =theSystem->GetParticipant( j )->GetDefinition();
|
||||
G4LorentzVector p4i0 = p4i*GeV;
|
||||
G4LorentzVector p4j0 = p4j*GeV;
|
||||
G4ThreeVector ri0 = ( theSystem->GetParticipant( i )->GetPosition() )*fermi;
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
#include "G4QMDParticipant.hh"
|
||||
#include "G4SystemOfUnits.hh"
|
||||
|
||||
G4QMDParticipant::G4QMDParticipant( G4ParticleDefinition* pd , G4ThreeVector p , G4ThreeVector r )
|
||||
G4QMDParticipant::G4QMDParticipant( const G4ParticleDefinition* pd , G4ThreeVector p , G4ThreeVector r )
|
||||
: definition ( pd )
|
||||
, momentum ( p )
|
||||
, position ( r )
|
||||
|
||||
@@ -42,6 +42,8 @@
|
||||
#include "G4SystemOfUnits.hh"
|
||||
#include "G4NistManager.hh"
|
||||
|
||||
#include "G4CrossSectionDataSetRegistry.hh"
|
||||
|
||||
G4QMDReaction::G4QMDReaction()
|
||||
: G4HadronicInteraction("QMDModel")
|
||||
, system ( NULL )
|
||||
@@ -55,7 +57,7 @@ G4QMDReaction::G4QMDReaction()
|
||||
//090331
|
||||
shenXS = new G4IonsShenCrossSection();
|
||||
//genspaXS = new G4GeneralSpaceNNCrossSection();
|
||||
piNucXS = new G4PiNuclearCrossSection();
|
||||
piNucXS = (G4PiNuclearCrossSection*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4PiNuclearCrossSection::Default_Name());
|
||||
meanField = new G4QMDMeanField();
|
||||
collision = new G4QMDCollision();
|
||||
|
||||
@@ -87,7 +89,7 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
|
||||
G4int proj_Z = 0;
|
||||
G4int proj_A = 0;
|
||||
G4ParticleDefinition* proj_pd = ( G4ParticleDefinition* ) projectile.GetDefinition();
|
||||
const G4ParticleDefinition* proj_pd = ( const G4ParticleDefinition* ) projectile.GetDefinition();
|
||||
if ( proj_pd->GetParticleType() == "nucleus" )
|
||||
{
|
||||
proj_Z = proj_pd->GetAtomicNumber();
|
||||
@@ -103,7 +105,7 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
//migrate to integer A and Z (GetN_asInt returns number of neutrons in the nucleus since this)
|
||||
G4int targ_Z = target.GetZ_asInt();
|
||||
G4int targ_A = target.GetA_asInt();
|
||||
G4ParticleDefinition* targ_pd = G4IonTable::GetIonTable()->GetIon( targ_Z , targ_A , 0.0 );
|
||||
const G4ParticleDefinition* targ_pd = G4IonTable::GetIonTable()->GetIon( targ_Z , targ_A , 0.0 );
|
||||
|
||||
|
||||
//G4NistManager* nistMan = G4NistManager::Instance();
|
||||
@@ -331,10 +333,10 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
|
||||
G4int sec_a_Z = 0;
|
||||
G4int sec_a_A = 0;
|
||||
G4ParticleDefinition* sec_a_pd = NULL;
|
||||
const G4ParticleDefinition* sec_a_pd = NULL;
|
||||
G4int sec_b_Z = 0;
|
||||
G4int sec_b_A = 0;
|
||||
G4ParticleDefinition* sec_b_pd = NULL;
|
||||
const G4ParticleDefinition* sec_b_pd = NULL;
|
||||
|
||||
if ( numberOfSecondary == 2 )
|
||||
{
|
||||
@@ -502,7 +504,7 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
|
||||
notBreak = false;
|
||||
// Secondary from this nucleus (*it)
|
||||
G4ParticleDefinition* pd = (*itt)->GetDefinition();
|
||||
const G4ParticleDefinition* pd = (*itt)->GetDefinition();
|
||||
|
||||
G4LorentzVector p4 ( (*itt)->GetMomentum()/GeV , (*itt)->GetTotalEnergy()/GeV ); //in nucleus(*it) rest system
|
||||
G4LorentzVector p4_CM = CLHEP::boostOf( p4 , -nucleus_p4CM.findBoostToCM() ); // Back to CM
|
||||
@@ -572,7 +574,7 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
if ( notBreak == true )
|
||||
{
|
||||
|
||||
G4ParticleDefinition* pd = G4IonTable::GetIonTable()->GetIon( (*it)->GetAtomicNumber() , (*it)->GetMassNumber(), (*it)->GetExcitationEnergy()*GeV );
|
||||
const G4ParticleDefinition* pd = G4IonTable::GetIonTable()->GetIon( (*it)->GetAtomicNumber() , (*it)->GetMassNumber(), (*it)->GetExcitationEnergy()*GeV );
|
||||
G4LorentzVector p4_CM = nucleus_p4CM;
|
||||
G4LorentzVector p4_LAB = CLHEP::boostOf( p4_CM , boostBackToLAB ); // Back to LAB
|
||||
G4DynamicParticle* dp = new G4DynamicParticle( pd , p4_LAB*GeV );
|
||||
@@ -598,7 +600,7 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
|
||||
// Secondary particles
|
||||
|
||||
G4ParticleDefinition* pd = system->GetParticipant( i )->GetDefinition();
|
||||
const G4ParticleDefinition* pd = system->GetParticipant( i )->GetDefinition();
|
||||
G4LorentzVector p4_CM = system->GetParticipant( i )->Get4Momentum();
|
||||
G4LorentzVector p4_LAB = CLHEP::boostOf( p4_CM , boostBackToLAB );
|
||||
G4DynamicParticle* dp = new G4DynamicParticle( pd , p4_LAB*GeV );
|
||||
@@ -632,8 +634,8 @@ G4HadFinalState* G4QMDReaction::ApplyYourself( const G4HadProjectile & projectil
|
||||
|
||||
|
||||
void G4QMDReaction::calcOffSetOfCollision( G4double b ,
|
||||
G4ParticleDefinition* pd_proj ,
|
||||
G4ParticleDefinition* pd_targ ,
|
||||
const G4ParticleDefinition* pd_proj ,
|
||||
const G4ParticleDefinition* pd_targ ,
|
||||
G4double ptot , G4double etot , G4double bmax , G4ThreeVector boostToCM )
|
||||
{
|
||||
|
||||
|
||||
Reference in New Issue
Block a user