Import Geant4 7.1.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-09 12:11:21 +02:00
parent 516dbf1a58
commit d93e1e39a9
5384 changed files with 125662 additions and 82444 deletions
@@ -22,7 +22,7 @@
//
//
// $Id: RE01BosonPhysics.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: RE01CalorimeterHit.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// $Id: RE01CalorimeterHit.cc,v 1.3 2005/06/07 10:53:17 perl Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -30,6 +30,11 @@
#include "G4ios.hh"
#include "G4VVisManager.hh"
#include "G4Colour.hh"
#include "G4AttDefStore.hh"
#include "G4AttDef.hh"
#include "G4AttValue.hh"
#include "G4UIcommand.hh"
#include "G4UnitsTable.hh"
#include "G4VisAttributes.hh"
#include "G4LogicalVolume.hh"
@@ -93,6 +98,74 @@ void RE01CalorimeterHit::Draw()
}
}
const std::map<G4String,G4AttDef>* RE01CalorimeterHit::GetAttDefs() const
{
G4bool isNew;
std::map<G4String,G4AttDef>* store
= G4AttDefStore::GetInstance("RE01CalorimeterHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
G4String TrackID("TrackID");
(*store)[TrackID] = G4AttDef(TrackID,"Track ID","Bookkeeping","","G4int");
G4String ZCellID("ZCellID");
(*store)[ZCellID] = G4AttDef(ZCellID,"Z Cell ID","Bookkeeping","","G4int");
G4String PhiCellID("PhiCellID");
(*store)[PhiCellID] = G4AttDef(PhiCellID,"Phi Cell ID","Bookkeeping","","G4int");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
G4String ETrack("ETrack");
(*store)[ETrack] = G4AttDef(ETrack,"Energy Deposited By Track","Physics","G4BestUnit","G4double");
G4String Pos("Pos");
(*store)[Pos] = G4AttDef(Pos, "Position",
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
}
return store;
}
std::vector<G4AttValue>* RE01CalorimeterHit::CreateAttValues() const
{
std::vector<G4AttValue>* values = new std::vector<G4AttValue>;
values->push_back(G4AttValue("HitType","RE01CalorimeterHit",""));
values->push_back
(G4AttValue("TrackID"," ",""));
values->push_back
(G4AttValue("ZCellID",G4UIcommand::ConvertToString(ZCellID),""));
values->push_back
(G4AttValue("PhiCellID",G4UIcommand::ConvertToString(PhiCellID),""));
values->push_back
(G4AttValue("Energy",G4BestUnit(edep,"Energy"),""));
values->push_back
(G4AttValue("ETrack",G4BestUnit(edepByATrack,"Energy"),""));
values->push_back
(G4AttValue("Pos",G4BestUnit(pos,"Length"),""));
if (pLogV)
values->push_back
(G4AttValue("LVol",pLogV->GetName(),""));
else
values->push_back
(G4AttValue("LVol"," ",""));
return values;
}
void RE01CalorimeterHit::Print()
{
G4cout << "Cell[" << ZCellID << "," << PhiCellID << "] " << edep/GeV << " [GeV]" << G4endl;
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01CalorimeterParametrisation.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01CalorimeterROGeometry.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01CalorimeterROGeometry.hh"
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01CalorimeterSD.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -22,7 +22,7 @@
//
//
// $Id: RE01DecayPhysics.cc,v 1.1 2004/11/26 07:37:41 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01DecayPhysics.hh"
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01DetectorConstruction.cc,v 1.2 2004/11/26 17:20:27 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01DetectorParameterDef.icc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01DummySD.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
//
// Dummy sensitive used only to flag sensitivity
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01EventAction.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01Field.cc,v 1.2 2004/12/02 07:34:56 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-03 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -22,7 +22,7 @@
//
//
// $Id: RE01HadronPhysics.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01HadronPhysics.hh"
@@ -22,7 +22,7 @@
//
//
// $Id: RE01IonPhysics.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01IonPhysics.hh"
@@ -22,7 +22,7 @@
//
//
// $Id: RE01LeptonPhysics.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01LeptonPhysics.hh"
@@ -22,7 +22,7 @@
//
//
// $Id: RE01PhysicsList.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01PhysicsList.hh"
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01PrimaryGeneratorAction.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01PrimaryGeneratorMessenger.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -22,7 +22,7 @@
//
//
// $Id: RE01RegionInformation.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01RegionInformation.hh"
@@ -22,7 +22,7 @@
//
//
// $Id: RE01RunAction.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01RunAction.hh"
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01StackingAction.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01SteppingAction.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -22,7 +22,7 @@
//
//
// $Id: RE01TrackInformation.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
#include "RE01TrackInformation.hh"
@@ -20,8 +20,8 @@
// * statement, and all its terms. *
// ********************************************************************
//
// $Id: RE01TrackerHit.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// $Id: RE01TrackerHit.cc,v 1.3 2005/06/07 10:53:17 perl Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -29,6 +29,11 @@
#include "G4VVisManager.hh"
#include "G4Circle.hh"
#include "G4Colour.hh"
#include "G4AttDefStore.hh"
#include "G4AttDef.hh"
#include "G4AttValue.hh"
#include "G4UIcommand.hh"
#include "G4UnitsTable.hh"
#include "G4VisAttributes.hh"
@@ -76,6 +81,71 @@ void RE01TrackerHit::Draw()
}
}
const std::map<G4String,G4AttDef>* RE01TrackerHit::GetAttDefs() const
{
G4bool isNew;
std::map<G4String,G4AttDef>* store
= G4AttDefStore::GetInstance("RE01TrackerHit",isNew);
if (isNew) {
G4String HitType("HitType");
(*store)[HitType] = G4AttDef(HitType,"Hit Type","Bookkeeping","","G4String");
G4String TrackID("TrackID");
(*store)[TrackID] = G4AttDef(TrackID,"Track ID","Bookkeeping","","G4int");
G4String ZCellID("ZCellID");
(*store)[ZCellID] = G4AttDef(ZCellID,"Z Cell ID","Bookkeeping","","G4int");
G4String PhiCellID("PhiCellID");
(*store)[PhiCellID] = G4AttDef(PhiCellID,"Phi Cell ID","Bookkeeping","","G4int");
G4String Energy("Energy");
(*store)[Energy] = G4AttDef(Energy,"Energy Deposited","Physics","G4BestUnit","G4double");
G4String ETrack("ETrack");
(*store)[ETrack] = G4AttDef(ETrack,"Energy Deposited By Track","Physics","G4BestUnit","G4double");
G4String Pos("Pos");
(*store)[Pos] = G4AttDef(Pos, "Position",
"Physics","G4BestUnit","G4ThreeVector");
G4String LVol("LVol");
(*store)[LVol] = G4AttDef(LVol,"Logical Volume","Bookkeeping","","G4String");
}
return store;
}
std::vector<G4AttValue>* RE01TrackerHit::CreateAttValues() const
{
std::vector<G4AttValue>* values = new std::vector<G4AttValue>;
values->push_back(G4AttValue("HitType","RE01TrackerHit",""));
values->push_back
(G4AttValue("TrackID",G4UIcommand::ConvertToString(trackID),""));
values->push_back
(G4AttValue("ZCellID"," ",""));
values->push_back
(G4AttValue("PhiCellID"," ",""));
values->push_back
(G4AttValue("Energy",G4BestUnit(edep,"Energy"),""));
G4double noEnergy = 0.*MeV;
values->push_back
(G4AttValue("ETrack",G4BestUnit(noEnergy,"Energy"),""));
values->push_back
(G4AttValue("Pos",G4BestUnit(pos,"Length"),""));
values->push_back
(G4AttValue("LVol"," ",""));
return values;
}
void RE01TrackerHit::Print()
{
G4cout << "TrackID " << trackID << " Position " << pos << " : " << edep/keV << " [keV]" << G4endl;
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01TrackerParametrisation.cc,v 1.1 2004/11/26 07:37:42 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01TrackerSD.cc,v 1.1 2004/11/26 07:37:43 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,7 +21,7 @@
// ********************************************************************
//
// $Id: RE01TrackingAction.cc,v 1.1 2004/11/26 07:37:43 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -21,8 +21,8 @@
// ********************************************************************
//
//
// $Id: RE01Trajectory.cc,v 1.1 2004/11/26 07:37:43 asaim Exp $
// GEANT4 tag $Name: geant4-07-00-cand-01 $
// $Id: RE01Trajectory.cc,v 1.2 2005/06/01 18:27:29 perl Exp $
// GEANT4 tag $Name: geant4-07-01 $
//
@@ -32,6 +32,10 @@
#include "G4Polyline.hh"
#include "G4Circle.hh"
#include "G4Colour.hh"
#include "G4AttDefStore.hh"
#include "G4AttDef.hh"
#include "G4AttValue.hh"
#include "G4UIcommand.hh"
#include "G4VisAttributes.hh"
#include "G4VVisManager.hh"
#include "G4UnitsTable.hh"
@@ -189,6 +193,87 @@ void RE01Trajectory::DrawTrajectory(G4int) const
if(pVVisManager) pVVisManager->Draw(pPolyline);
}
const std::map<G4String,G4AttDef>* RE01Trajectory::GetAttDefs() const
{
G4bool isNew;
std::map<G4String,G4AttDef>* store
= G4AttDefStore::GetInstance("RE01Trajectory",isNew);
if (isNew) {
G4String ID("ID");
(*store)[ID] = G4AttDef(ID,"Track ID","Bookkeeping","","G4int");
G4String PID("PID");
(*store)[PID] = G4AttDef(PID,"Parent ID","Bookkeeping","","G4int");
G4String Status("Status");
(*store)[Status] = G4AttDef(Status,"Track Status","Bookkeeping","","G4int");
G4String PN("PN");
(*store)[PN] = G4AttDef(PN,"Particle Name","Bookkeeping","","G4String");
G4String Ch("Ch");
(*store)[Ch] = G4AttDef(Ch,"Charge","Physics","e+","G4double");
G4String PDG("PDG");
(*store)[PDG] = G4AttDef(PDG,"PDG Encoding","Bookkeeping","","G4int");
G4String IMom("IMom");
(*store)[IMom] = G4AttDef(IMom, "Momentum of track at start of trajectory",
"Physics","G4BestUnit","G4ThreeVector");
G4String IMag("IMag");
(*store)[IMag] =
G4AttDef(IMag, "Magnitude of momentum of track at start of trajectory",
"Physics","G4BestUnit","G4double");
G4String VtxPos("VtxPos");
(*store)[VtxPos] = G4AttDef(VtxPos, "Vertex position",
"Physics","G4BestUnit","G4ThreeVector");
G4String NTP("NTP");
(*store)[NTP] = G4AttDef(NTP,"No. of points","Bookkeeping","","G4int");
}
return store;
}
std::vector<G4AttValue>* RE01Trajectory::CreateAttValues() const
{
std::vector<G4AttValue>* values = new std::vector<G4AttValue>;
values->push_back
(G4AttValue("ID",G4UIcommand::ConvertToString(fTrackID),""));
values->push_back
(G4AttValue("PID",G4UIcommand::ConvertToString(fParentID),""));
values->push_back
(G4AttValue("Status",G4UIcommand::ConvertToString(fTrackStatus),""));
values->push_back(G4AttValue("PN",ParticleName,""));
values->push_back
(G4AttValue("Ch",G4UIcommand::ConvertToString(PDGCharge),""));
values->push_back
(G4AttValue("PDG",G4UIcommand::ConvertToString(PDGEncoding),""));
values->push_back
(G4AttValue("IMom",G4BestUnit(momentum,"Energy"),""));
values->push_back
(G4AttValue("IMag",G4BestUnit(momentum.mag(),"Energy"),""));
values->push_back
(G4AttValue("VtxPos",G4BestUnit(vertexPosition,"Length"),""));
values->push_back
(G4AttValue("NTP",G4UIcommand::ConvertToString(GetPointEntries()),""));
return values;
}
void RE01Trajectory::AppendStep(const G4Step* aStep)
{
positionRecord->push_back( new G4TrajectoryPoint(aStep->GetPostStepPoint()->